Concrete5 – nowy CMS, nowe możliwości

Nazwa pewno sugeruje coś niesamowitego i tak w pewien sposób jest. Chciałbym przedstawić nowy CMS z którym miałem przyjemność się zapoznać i do tej pory go poznaję. Co jest w nim super? Wiele rzeczy, nie wypiszę wszystkich ale postaram się opisać rzeczy, które mnie urzekły i do tej pory urzekają. Ale po kolei.

concrete5_hosting.png

Na początek, może trochę informacji z Wikipedii o Concrete5 :

Concrete5 – rozprowadzany na zasadach wolnego i otwartego oprogramowania system zarządzania treścią (CMS) napisany w języku PHP, wykorzystujący bazę danych MySQL. Umożliwia edycję treści bezpośrednio na stronie, co czyni go szczególnie przyjaznym dla osób o niewielkich umiejętnościach komputerowych.

Kod Concrete5 oparty jest o architektrę Model-View-Controller oraz programowanie obiektowe. Zdecydowana większość kodu JavaScript jest oparta o biblioteki jQuery, natomiast część zaawansowanych funkcji PHP (jak np. obsługa cache) pochodzi z bilbliotek Zend.

Jedną z najważniejszych cech Concrete5 jest możliwość edycji treści bezpośrednio na stronie, na której są one prezentowane. Struktura pojedynczej strony opiera się o bloki, którymi mogą być dowolne treści, kod HTML, automatyczna nawigacja, obiekty flash, ankiety, obrazy, formularze i tym podobne. Położenie bloków na stronie można zmieniać metodą „przeciągnij i upuść”. Poszczególne podstrony w mapie witryny są od siebie niezależne, tak, że można dowolnie zmieniać ich położenie między sobą, przy czym nie ma ograniczeń w głębokości umieszczania poszczególnych podstron pod innymi.

Można też znaleźć oficjalne, Polskie strony, w których znajdziemy opis Concrete5:

http://concrete5.org.pl/

http://concrete5.pl/o-concrete5/czym-jest-concrete5/

Opis plusów i minusów znajduje się w pierwszym linku. Ja jednak pokażę jak to wygląda w praktyce na świeżo zainstalowanym systemie. Opis instalacji znajduje się tutaj.

strona_glowna_1.png

Po zalogowaniu się otrzymujemy widok naszej stron wraz z pasek do administracji. W nim kryje się wszystko co jest potrzebne do edycji strony. Teraz wystarczy najechać kursorem na przycisk Edycja -> Edytuj tę stronę.

strona_glowna_2.png

Przycisk podświetla się na zielono a nam ukazują się dodatkowe obramowania na strony, które w Concrete5 są nazywane Area. Właśnie w te miejsca możemy wkładać tzw bloki.

strona_glowna_3.png

Czym są bloki? Bloki są to wbudowane w system komponenty umożliwiające konfigurację strony wg potrzeb użytkownika.

Wyobraźmy sobie, że blok to klocek Lego. Mamy wiele rodzai klocków Lego i tworząc różne kombinacje połączeń (kolejność bloków) nie tylko rodzai (typów bloków), ale i kolorów (szablony niestandardowe dla bloków). Teraz mając klocki możemy zbudować co tylko wyobraźnia nam podpowie. Lista dostępnych na starcie elementów jest na prawdę imponująca i dla podstawowych jak i średnio skomplikowanych stron jest w zupełności wystarczająca.

strona_glowna_5.png

Po wybraniu bloku (w moim przypadku Content) pojawia się dodatkowe okienko z opcjami do wyboru. Blok Content tworzy zawartość tekstową. Jak widać mamy zastosowany edytor podobny do Worda co daje użytkownikowi dużą swobodę przy wprowadzaniu treści.

strona_glowna_6.png

Po akceptacji widzimy od razu zmiany na stronie.

strona_glowna_7.png

Jeszcze na koniec szybki podgląd panelu administracyjnego. Jak widać opcji do zarządzania stroną jest całkiem dużo, ale to nie wszystkie, ponieważ jest jeszcze wiele ustawień systemowych :)

strona_glowna_4.png

Chcę teraz poświęcić trochę więcej czasu na rozwój bloga a także informacji na temat Concrete5. Jako że to blog głownie programistyczny, to będziemy tworzyć jakieś nowe elementy do tego CMSa.