Drupal – system zarządzania treścią i framework () napisany w języku PHP, używany jest przez ponad 700 tysięcy stron internetowych, czyli około 0,9% wszystkich stron internetowych na świecie, są to zarówno blogi, portale informacyjne, aplikacje edukacyjne, strony korporacyjne oraz rządowe i posiada 1,2% udziału w rynku.

Wyposażony jest w funkcje, które oferują między innymi obsługę blogów, środowiska przeznaczone do wspólnej pracy nad projektem, fora, biuletyny, galerie grafik/zdjęć, możliwość wysyłania i pobierania plików, a także rozbudowane API umożliwiające tworzenie zaawansowanych rozwiązań. Wersja 8 została zbudowana od podstaw przy użyciu komponentów frameworka Symfony wraz z implementacją serwisów i wzorca Dependency Injection.

Cechami wyróżniającymi Drupala jest system encji wspólny dla segmentów (ang. ), taksonomii, użytkowników, od wersji 8 także bloków i linków menu. Taksonomia to rozbudowany moduł służący głównie do porządkowania treści wedle kategorii. Jego zastosowania są jednak znacznie szersze. Dzięki wsparciu dla zaawansowanych rozwiązań optymalizacyjnych, takich jak Big pipe, , APC, Memcache i replikacji baz danych nadaje się do stron posiadających duże obciążenie.

Drupal automatycznie tworzy kanały informacyjne RSS zarówno dla całej strony, jak i dla kategorii zamieszczanych na niej artykułów oraz forów. Umożliwia także proste ustalanie aliasów sprawiając, że adresy stron są łatwiejsze do zapamiętania przez odwiedzających. Wyposażony jest również w system tzw. „skórek” PHPTemplate, ułatwiający zmianę wyglądu strony, od wersji 8 do zarządzania markupem wykorzystywany jest .

Drupal jest oprogramowaniem o otwartym kodzie źródłowym, udostępnianym na zasadach licencji GPL. Można go wzbogacać o nowe funkcje za pomocą tzw. modułów, z których to również zbudowany jest system. Niektóre z nich (tzw. moduły Core’owe) są dostępne od razu po instalacji, a inne trzeba dodatkowo pobrać.

Od wersji 7 oprogramowania z jądrem systemu zintegrowano moduły CCK oraz ImageCache, które w poprzednich wersjach były modułami zewnętrznymi. Najczęściej instalowanym modułem zewnętrznym jest moduł Views, który pozwala na budowę zapytań SQL poprzez interface użytkownika.

System wykorzystuje język PHP, współpracuje z bazami danych takimi jak: MySQL, PostgreSQL, SQLite, MariaDB, MongoDB czy Microsoft SQL Server za pośrednictwem biblioteki PDO oraz serwerami, na których można uruchomić PHP: Apache, IIS, Lighttpd, Hiawatha, Cherokee lub Nginx.

W oparciu o Drupal powstają też inne niezależne, niszowe rozwiązania, np. system do zarządzania projektami Open Atrium.

Historia Początkowo stworzony przez Driesa Buytaerta jako forum dyskusyjne, Drupal stał się projektem open source w styczniu 2001 roku. Nazwa Drupal pochodzi od holenderskiego słowa , które oznacza kroplę wody (po angielsku „”). Wybór nazwy wynikał z niedziałającej już strony Drop.org. Buytaert, tworząc stronę, chciał ją nazwać „” (po holendersku „wioska”) ze względu na jej społeczny aspekt, ale pomylił się, sprawdzając dostępność domeny i uznał, że błędna („drop”) brzmi lepiej.

Zainteresowanie Drupalem znacząco wzrosło w 2003 roku, kiedy na jego bazie zbudowano „DeanSpace” dla Howarda Deana, jednego z kandydatów z ramienia Partii Demokratycznej w wyborach prezydenta USA w 2004 roku. DeanSpace wykorzystał Drupala do stworzenia zdecentralizowanej sieci około 50 nieoficjalnych stron wpierających kandydata, które pomagały użytkownikom komunikować się bezpośrednio oraz z centralą kampanii. Po zakończeniu kampanii członkowie zespołu odpowiedzialnego za strony kontynuowali rozwój platformy, która mogła wspierać aktywizm polityczny. W lipcu 2004 roku założyli CivicSpace, pierwszą firmę z pełnoetatowymi pracownikami, która tworzyła i rozpowszechniała Drupala.

Obecnie Drupal jest rozwijany przez społeczność i używa go ponad milion stron internetowych. Oficjalna strona Drupal.org wymienia ponad 1100 firm świadczących usługi związane z Drupalem.

Przypisy

Linki zewnętrzne Oficjalna strona Drupala Oficjalna strona polskiego tłumaczenia Fundacja Drupal Marketing Poland Strona konferencji DrupalCamp Poland Opis systemu Drupal CMS

Kategoria:Systemy zarządzania treścią Kategoria:Wolne i otwarte oprogramowanie