13.1 Úvod do contrib modulů

Core moduly jsme si probrali již dříve, teď se podíváme, jak používat Contrib moduly.

Hledání modulu

Jak bylo dříve řečeno, contrib modulů existují tisíce a prakticky každý den nové přibývají, takže je z čeho vybírat. Většinou tedy už existuje modul, který řeší náš problém. 

Dejme tomu, že hledáme modul, který umožní vložení YouTube videa. A nechceme ho vkládat přímo do editoru, ale vložit YouTube link jako hodnotu políčka a pak mít možnosti ho nějak formátovat.

Každý modul má svoje strojové jméno, pod kterým je ke stažení ze stránek Drupalu, např. modul Admin Toolbar má strojové jméno admin_toolbar, a tedy URL https://www.drupal.org/project/admin_toolbar.

Problematice hledání contrib modulu se věnuje i stránka oficiální dokumentace Finding Contributed Modules https://www.drupal.org/node/2845602

Hledání pomocí internetového vyhledávače (např. Google)

Jednoduché, dáme hledat "Drupal Youtube field" a dostaneme hromadu výsledků. Otevřeme se první tři, ty vypadají zajímavě - už podle URL (https://www.drupal.org › project ) je vidět, že jsou to stránky modulů. 

  • YouTube Field - hned první výsledek se ukáže být tím správným
  • YouTube: Field - dle stránky je vidět, že to byl spíš jen nějaký neuskutečněný pokus o modul
  • Video Embed Field - dělá trochu něco jiného (vkládá video do editoru), a pro nás zbytečně podporuje i další video služby

Google search youtube field

Hledání na stránce modulů

Na stránce s moduly https://www.drupal.org/project/project_module zkusím hledat klíčová slova "youtube field" a řadit dle Relevancy.

Drupal 9 je vydaný jen několik týdnů, ne všechny moduly mají verzi právě pro něj. Některé Drupal 8 moduly (vydané pro Drupal 8.8) jsou ale kompatibilní s Drupalem 9, takže je můžeme také použít.

Hned první výsledek je opět YouTube Field modul. Další nadějný modul Youtube Formatter existuje pouze pro Drupal 7, verze pro Drupal 8 nebyla nikdy dokončená (ale existuje v seznamu View all releases).

Drupal org module search

Hledání v abecedním seznamu modulů podle klíčového slova

Lze hledat i v úplném abecední seznamu https://www.drupal.org/project/project_module/index/.  Bohužel před pár týdny zmizela možnost filtrovat dle Drupal verze, takže je teď s nalezením správného modulu mnohem více práce.

Full list modules

Výběr správné verze modulu

Moduly často mají stabilní nebo vývojové (development) verze. Kterou instalovat bývá často zajímavá otázka. Doporučoval bych asi následující pořadí:

  • Existuje stabilní release? Tak určitě začít s ním.
  • Chybí mi nějaká nová nebo potřebná funkcionalita, kterou obsahuje development verze? Pak je čas sáhnou právě pro ni. Stejně tak, pokud stabilní verze obsahuje nějakou chybu, která mě limituje a je opravená v development verzi. 
  • Ani poslední development verze nefunguje podle očekávání? Možná obsahuje chybu, která je už známá a existuje pro ni patch. Pak je třeba si projít seznam Issues a zkusit najít odpověď tam. 

Barva pozadí rámečku označuje verzi doporučenou (zelená), nebo ostatní (krémová). Pokud rámeček obsahuje "štít", znamená to status "Stable release covered by the Drupal Security Team", více viz.  https://www.drupal.org/drupal-security-team.

Module versions

 

Co se týká číslování verzí modulů, donedávna bylo naprosto jasné, která verze modulu je pro kterou verzi Drupalu. Moduly verze 7.x byly pro Drupal 7, moduly 8.x pro Drupal 8. Jelikož je nyní Drupal 9 prakticky totožný s poslední verzí Drupal 8, dochází postupně i ke změně číslovaní modulů – v názvu se již neobjevuje verze Drupalu. To, pro jakou verzi Drupalu je modul určen, najdeme v jeho popisku: Requires Drupal: ^8.8 || ^9.

Module new numbering

Řešení závislostí mezi moduly

Některé moduly (např. Pathauto) nelze povolit, dokud se nevyřeší jejich závislost na jiném modulu. Bohužel webové rozhraní to neumí řešit automaticky, to funguje jen u nástrojů pro příkazovou řádku (drush).

pathauto zavislosti

Sub-moduly

Některé moduly - např. Admin Toolbar - obsahují samotný modul plus sub-moduly doplňující nebo rozšiřující základní modul. Zde konkrétně hlavní Admin Toolbar, a sub-modul Admin Toolbar Extra Tools (a dva další), který na něm závisí.

submoduly