Od dość dawna nic nie pisałem na blogu. Przede wszystkim od bardzo dawna nie pisałem nic o IronCMS-ie. A mam w stosunku do niego pewne plany.
Ostatnią wydaną wersją był Iron z numerkiem 1.2.1. Od tamtego czasu nie raz miałem okazję patrzeć na jego kod i zmieniać go. Za każdym razem myślałem o tym samym – „czas na nową wersję z większymi zmianami. Trzeba to w końcu ogarnąć”.
A teraz bez zbędnego gadania przedstawię kilka rzeczy, które chciałbym zmienić w wersji 2.0 skryptu.
- Oddzielenie treści od prezentacji – czyli mówiąc prościej: oddzielenie kodu HTML/CSS/JS od kodu PHP (poprzez system szablonów). Dotychczas tylko zmiana podstawowych części danego motywu (nagłówek i stopka) była dość łatwo wykonalna. Zmiana reszty kodu HTML wiązała się z babraniem w potrawce HTML-o PHP-owej i nie można było np. zmienić kodu wyświetlającego komentarze dla każdego modułu z osobna.
- Nowsze wersje komponentów składowych – opracowałem już poprawione wersje klas do obsługi MySQL, obsługi użytkowników i klasy loggera zdarzeń używanych w Ironie. Nie były one aktualizowane od długiego czasu i zebrało się tam sporo rzeczy które można było poprawić.
- Różne wersje językowe skryptu – co tu dużo mówić? Mechanizm umożliwiający tłumaczenie Irona na inne języki. Zastrzegam tylko, że nie oznacza to od razu wydania także angielskiej wersji IronCMS-a. To będzie swego rodzaju inwestycja w przyszłość ;)
- Lekka przebudowa panelu admina – część zakładek zostanie po prostu ujednoliconych, niektóre staną się wygodniejsze w obsłudze. Początkowa zakładka „Przegląd” również będzie dostarczać więcej informacji.
- Forum – proszę się nie spodziewać drugiego vBiulettin. IronCMS nie miał być CMS-em od wszystkiego, ale stwierdziłem, że forum jest tak podstawowym elementem wielu stron WWW, że można napisać proste forum dyskusyjne na potrzeby Irona.
- Usprawnienia SEO – generowanie mapy także w XML (dotychczas tylko w HTML jako podstrona), usunięcie tego wrednego ? z każdego adresu, możliwość automatycznego wygenerowania tagu description dla podstrony i więcej
- Standardy kodowania – tym razem określone przed rozpoczęciem pisania, a nie dopisywane po partyzancku w jego trakcie.
- Przebudowa instalatora – pomijając całkiem nowy kod, nowy instalator powinien być też prostszy dla użytkownika. Powinien podawać jak najdokładniejsze informacje, a nie zawracać głowy nieistotnymi. Zaostrzona zostanie też walidacja danych wprowadzanych przez użytkownika.
- Poprawki w bazie danych – głównie w jej strukturze. Kilka rzeczy zostanie opartych na relacjach między tabelami co pozwoli zaoszczędzić trochę kodu PHP w niektórych plikach (na razie myślę głównie o prywatnych wiadomościach, aktywacji konta i komentarzach).
- Cache ustawień z bazy danych – mam w planach, aby przy modyfikacji ustawień strony zapisywanych w bazie (a tam leci 90% wszystkich ustawień), dane te były zapisywane również do pliku PHP skąd czerpałaby je funkcja getSetting(). Zaoszczędziłoby to wielu zapytań do bazy danych.
- Nowy poziom użytkownika – zostanie dodany co najmniej jeden. Będzie miał uprawnienia większe od użytkownika normalnego, ale nie takie jak administrator.
W moich notatkach i TODO znajdzie się jeszcze sporo mniej lub bardziej istotnych punktów do zrealizowania. Ile z nich uda mi się osiągnąć? Zobaczymy, mam nadzieję, że będzie to koło 90% wszystkich zaplanowanych na wersję 2.0.
Teraz pewnie powinienem podać oficjalną i nieodwołalną datą premiery, ale tego nie zrobię, żeby nie skończyć np. jak twórcy Minecrafta, którzy są obrzucani błotem na prawie każdej stronie za rzekome niedotrzymywanie terminów. Wiele osób nie rozumie, że „wstępna, przypuszczalna data” != „data ostateczna”. Dobrze, że IronCMS nie ma takich fan boyów…
Kończąc dygresję, jak i wpis mogę powiedzieć tylko tyle, że mam nadzieję, że za miesiąc, może trochę więcej IronCMS 2.0 ujrzy światło dzienne.
Komentarze wyłączone
Możliwość komentowania na blogu została wyłączona. Zapraszam do kontaktu na Twitterze, Facebooku lub poprzez formularz, o ten tutaj. Do usłyszenia!