Drupal 7 skončil. Ohlédnutí za populárním redakčním systémem

Absolutně nejpopulárnější verze redakčního systému Drupal skončila svůj životní cyklus a není dále podporována. Sedmička byla populární podobně jako Windows XP, několikrát přežila ohlášený konec, posloužila vzniku spoustě webů a webařům, hobby programátory počínaje a profíky konče. Pojďme zatlačit slzu, zavzpomínat a kouknout se na alternativy.

Drupal 7 se objevil začátkem roku 2011. Vydržel tedy sloužit celých 14 let, to je na softwarový produkt, a ještě navíc něco, co pohání weby, poměrně dlouhá doba. Jasně, prošel za tu dobu celou řadou aktualizací, poslední verze měla číslovku Drupal 7.103.

Proti předchozím řadám Drupalu v sobě měl integrovánu řadu vylepšení:

  • Podporu políček pro libovolné typy obsahu, uživatelské profily a komentáře (místo dřívějšího modulu Content Construction Kit)
  • Vícejazyčnost byla integrována přímo do jádra, takže se zjednodušila tvorba vícejazyčných webů
  • Objevil se systém řízení přístupu k jednotlivým obsahovým uzlům
  • Byla tu zabudovaná podpora práce s úpravami obrázků, podpora multisite instancí, RDF, podpora dlouho běžících úloh
  • Instalátor šel spustit z příkazového řádku
  • Databázová abstrakce přinesla query builder pro sestavování dotazů a příkazů objektovým způsobem. Přibyla také podpora SQLite.
  • Zabezpečil se cron proti libovolnému volání z vnějšku, stejně tak dostaly lepší zabezpečení hesla místo předchozího MD5.
  • V administraci se objevily vertikální taby a přišla standardizovaná podpora pro vizuální editory. Bohužel bez konkrétního editoru v jádře.

Těch změn, proč byl Drupal tolik populární, bylo určitě mnohem více. Práh jeho učení byl mnohem níž než dnes. Systémové nároky na server byly z dnešního pohledu taky směšné (PHP 5.2 a memory limit 40 MB), takže se nabízí říci, že běhal všude. Pravda to nebyla, bohužel si pořád vzpomínám, jak tehdejší české hostingy měly problém nastavit i něco takového.

V porovnání s WordPressem měl Drupal 7 jeden zásadní hendikep. Dost často se mu říkalo, že je to redakční systém pro programátory. Nejen z pohledu stavby webu, ale i z pohledu jeho obsluhy. To proto, že v sobě sice měl podporu pro editory, ale žádný nebyl součástí základní instalace. To vedlo k různému bastlení a přestože doplnit CKEditor nebo TinyMCE byla otázkou chvilky, nezřídkakdy jsem viděl i weby, kde byla obsluha nucena psát ručně HTML značky do políčka.

Původně měl Drupal skončit někdy v době covidu. Konec jeho podpory byl několikrát prodloužen kvůli nesmírně velké uživatelské základně. A první prodloužení přišlo právě s covidem, kdy provozovatelé webů měli jiné starosti než migraci na novou verzi či jinou platformu.

Image
Drupal 7 skončil
Podpora Drupalu 7 skončila

Drupal 7 byl skvělý systém pro hobby vývojáře

Sedmička byla poslední verze Drupalu psaná „starým způsobem“. Byl to svým způsobem PHP framework, nad kterým se dalo stavět, ale šlo o poměrně snadno pochopitelnou záležitost pro každého, kdo se naučil s PHP ze staré doby. Žádná spousta controllerů, metod, tříd a kdo ví čeho. Modul byl obvykle jeden soubor s případnými includes, na první pohled jasná sada hook_* funkcí, které jste se našprtali nebo snadno našli v dokumentaci a s jejich pomocí jste udělali první poslední.

Příprava vizuální části webu byla o PHP souborech s HTML značkami a stylování. Jasně, nikdy to nebylo tak snadné, že byste si nakódovali libovolné HTML a do něj dali pár kousků PHP z Drupalu. Ne veškerý HTML výstup šel přizpůsobit nebo ne snadno. Ale zvládla to spousta příležitostných vývojářů.

Ze školení, od čtenářů mých knih, ze setkání i z praxe mám řadu kontaktů na Drupalisty z řad malých podnikatelů, učitelů, markeťáků, newebových ajťáků, farností… Zkrátka zaujalo to svou flexibilitou práce s obsahem a definicí toho, co bude uživatel kde vyplňovat a jak se to zobrazí, spoustu lidí. Musím říci, že mi to přineslo i mnoho známých a kamarádů.

S příchodem Drupalu 8 bohužel nastal velký zlom. Nová generace, tedy i současná verze 11 je postavena na frameworku Symfony. Byť je ovládání podobné a koncepty práce stejné, vývoj je odlišný. Hákovací funkce jsme opustili ve prospěch objektů a tříd, přišel Composer, celé se to posunulo blíže modernímu PHP světu, ale dále od hobby vývojářů.

A to nemluvím o přípravě vizuálu v Drupalu. Postavit nové téma vzhledu vyžaduje znalost práce se šablonovacím systémem Twig. Máme tu řadu konfigurací v YAML. Je toho spousta, co musí vývojář v Drupalu umět a trochu chápu, že to některé odradilo. Na druhou stranu, on je obecně vývoj webu čím dál složitější. Jak technicky, tak marketingově i legislativně.

Image
Drupal 7
Editace článku v Drupalu 7

Jak jsem stavěl weby na Drupalu 7

Přechody z Drupalu 6 nebyly vždy tak jednoduché, jak by se zdálo. Vzpomínám si, jak mě potrápilo uložení obrázků na některých webech. Brzy jsem si našel cestu, jak stavět weby na sedmičce takovým způsobem, že byly příjemné na ovládání.

Všude jsem používal osvědčenou kombinaci editoru TinyMCE se správcem souborů IMCE. Intenzivně jsem pracoval s různými typy obsahu. Nezbytné byly samozřejmě Views pro různé výpisy i uživatelské filtrování. Všude jsem přidával modul pro transliteraci názvů souborů, aby nebyl problém se stahováním. Řešily se redirekty, duplicitní adresy, SEO popisky, mapy webu, sdílecí tlačítka…

Oblíbil jsem si Display Suite. Umožňovalo to nakonfigurovat šablonu zobrazení bez nutnosti sahat do kódu, byť z dnešního pohledu mi přijde právě úprava v kódu mnohem rychlejší a flexibilnější.

Postupem času jsem přidal modul Paragraph pro flexibilnější tvorbu nových stránek na základě komponent a dnes mi v Drupalu 10/11 tvoří vlastně základ toho, jak editoři s Drupalem pracují.

Je to vlastně úsměvné. Drupal aktuální generace má toto všechno a mnohem více přímo v sobě, má správu médií ala WordPress, ale přesto se pořád vkládá jakási dávka nostalgie, že to dříve bylo jednodušší a rychlejší.

Já se před příchodem Drupalu 8 začal učit framework Symfony a později jsem zjistil, jaká to byla šťastná volba, protože jsem pak vše mohl zužitkovat v nové generaci svého oblíbeného redakčního systému a o to rychleji do osmičky naskočit.

Migrace na nový Drupal

Dost bylo vzpomínání. Drupal 7 je nyní minulost, byť pro někoho ještě přetrvávající, pokud mu stále pohání web. Pokud je to i váš případ, asi by se nabízelo přejít na novou verzi Drupalu.

Image
Drupal 10
Vkládání článku v Drupalu 10

Problém je, že sice v sobě má migraci pro natažení dat ze starého webu, stejně jako z jiných zdrojů, ale použití migračního API je něco jiného než spuštění upgrade procesu mezi verzemi, jako to bylo třeba při přechodu ze šestky na sedmičku.

Nyní musíte vlastně postavit nový web a natáhnout do něj starý obsah. Je to docela dost práce, ne vše se asi nastaví tak, jak by to vypadalo při ruční stavbě nového webu na Drupalu, ale je to jedna z cest. Počítejte s tím, že budete muset udělat zcela nové téma vzhledu a Twigu se nevyhnete.

Tip: Více o migraci v již trochu vousatém článku Upgrade či migrace na Drupal 8 krok za krokem.

Jaké další alternativy k přechodu z Drupalu 7?

Zajímavou alternativou k Drupalu 7 je redakční systém Backdrop. Když někteří aktivní členové Drupal komunity zjistili, kam osmička směřuje, vzali stávající verzi, udělali z ní fork, tedy odvozeninu a začli na jejím základě stavět nový systém. Backdrop si zachovává jednoduchost Drupalu 7 z pohledu ovládání i vývoje, a zároveň přidává nové funkcionality. Stojí pořád na původním konceptu kódu, tedy vše staré dobré PHP.

Image
Backdrop
Výchozí vzhled administrace v Backdropu

Tip: Backdrop má v sobě aktualizační mechanismus pro snadný přechod z Drupalu. Více se dozvíte v článku Jak jsem migroval weby z Drupalu 7 na Backdrop.

Image
Backdrop
Editace článku v Backdropu s admin tématem vzhledu Gin

Další alternativou může být samozřejmě přechod na jinou platformu. Nabízí se logicky největší konkurent, WordPress. I s tím mám zkušenosti, pro malý web bych jej v současnosti doporučil spíše než Drupal. Znamená to více práce než při přechodu na Backdrop, ale zase snadno naimportujete stávající obsah.

Tip: Případovka: jak jsem migroval Drupal na WordPress

Po pravdě řečeno, weby běžící na Drupalu 7 nejsou staré jen technologicky, ale i morálně. Pokud vám jej tedy nějaký nezkušený vývojář nepředal loni coby nový. Upgrade bych tedy vůbec neřešil. Klientům doporučuji takto neuvažovat a prostě postavit nový web.

Potřebujete současnou grafiku, současný komunikační koncept a marketing, současné technologie pro rychlé načítání a kompatibilitu s webovými prohlížeči atd.

Obsahové stránky tak obvykle vzniknou nové a v jiné grafice. V případě mých webů navíc na základě oddílů z modulu Paragraph a v kódu na Single Directory Components. Takže vše nachystáme a naplníme ručně.

Něco jiného jsou data jako produkty, novinky, lidé atd. Zde by se nabízelo využít migrační API v současném Drupalu. Umožňuje importovat data, zase import vracet do původního stavu a takto si s tím hrát. Ale vždycky mi to přišlo výrazně složitější než napsat importovací mechanismus pro Drush, spustit jej v příkazovém řádku a mít za chvíli hotovo.

Ve starém Drupalu tak s pomocí modulu Views Data Export nachystám exporty do XML nebo CSV a ty si pak importuji dle potřeby.

Už na nic nečekejte

Ať už zvažujete, že zůstanete věrni Drupalu nebo přejdete na jinou platformu, neměli byste otálet. Konec podpory Drupalu 7 neznamená, že teď ze dne na den přestává fungovat. Ale pokud se objeví bezpečnostní chyba, už k ní nedostanete opravu (byť velké firmy si zaplatí LTS podporu za odpovídající peníze). Pokud vám hosting za nějakou dobu zruší podporu starého PHP, Drupal tam už nepoběží. A podobné problémy budou narůstat.

Tagy

Buďme ve spojení, přihlaste se k newsletteru

Odesláním formuláře souhlasíte s podmínkami zpracováním osobních údajů. 
Více informací v Ochrana osobních údajů.

Autor článku: Jan Polzer

Tvůrce webů z Brna se specializací na Drupal, WordPress a Symfony. Acquia Certified Developer & Site Builder. Autor několika knih o Drupalu.
Web Development Director v Lesensky.cz. Ve volných chvílích podnikám výlety na souši i po vodě. Více se dozvíte na polzer.cz a mém LinkedIn profilu.

Komentáře k článku

Přidat komentář

Odesláním komentáře souhlasíte s podmínkami Ochrany osobních údajů

reklama
Moje kniha o CMS Drupal

 

Kniha 333 tipů a triků pro Drupal 9


Více na KnihyPolzer.cz