Jak na vlastní kontextové odkazy v Drupalu 7

Drupal 7 přišel s modulem Contextual Links, který slouží k zobrazení kontextových odkazů u uzlů nebo bloků. Výrazně tak zrychluje přístup do jejich nastavení a úprav. Co ale v případě, že chcete doplnit další kontextové odkazy? S šikovnou pomůckou si je přidáte i bez programování.

Jakmile v Drupalu 7 zapnete modul Contextual Links (nezapomeňte na to hlavně po upgradu ze starších verzí, při nové instalaci je už modul aktivní), začnou fungovat u uzlů a bloků kontextové odkazy. Všimněte si, že v momentě, kdy najedete nad uzel ve výpisu nebo nad nějaký blok myší, zobrazí se v jejich pravém horním rohu ozubené kolečko.

Když na toto ozubené kolečko kliknete, objeví se kontextové odkazy. V případě uzlů nabízejí odkazy na jejich editaci nebo smazání,  případě bloků vás pak mohou přesunout do natavení daného bloku. Jestliže je blok tvořen pomocí Views, nabídne se vám mezi kontextovými odkazy i nasměrování do editace příslušného View.

Tyto pohotové odkazy vám ušetří spoustu klikání. Běžně byste totiž museli například uzel zobrazit v celé jeho podobě a teprve poté byste měli k dispozici odkaz na jeho úpravu. Ještě praktičtější je to u bloků. Bez kontextových odkazů byste museli jít do administrační sekce Struktura > Bloky, pak najít mezi množstvím ostatních ten správný blok a teprve poté se přepnout do jeho nastavení.

Přesun do editace, mazání nebo odkaz na příslušné View jsou ale vším, co kontextové odkazy v Drupalu 7 standardně poskytují. Přitom se teoreticky nabízí celá řada dalších odkazů, které by zde mohly být umístěny a zjednodušit vám práci s Drupalem.

Jak přidat další kontextové odkazy

Pokud byste chtěli přidat další kontextové odkazy k blokům a uzlům, pak záleží na tom, s čím by tyto nové kontextové odkazy měly být spojeny. Jestliže se nějak týkají přímo vašeho modulu, který jste si vytvořili, je vhodné přidat nové odkazy pomocí právě tohoto modulu, ve kterém implementujete funkci hook_contextual_links_view_alter(). S její pomocí přidáte nové odkazy, nebo upravíte ty stávající. Je to jednoduché.

Pokud si ale chcete přidat další kontextové odkazy jakožto administrátor webu a ne jako jeho vývojář, sáhněte po modulu Custom Contextual Links. S jeho pomocí si totiž můžete nové kontextové odkazy v Drupalu 7 naklikat.

Řekněme, že chcete ke všem uzlům doplnit kontextový odkaz na jejich záložku Sledovat, kde najdete seznam stránek, ze kterých se uživatelé dostali na daný uzel. Jak jistě víte, tato adresa je tvořena ve formátu node/číslo-uzlu/track.

Po zapnutí modulu Custom Contextual Links tedy přejděte do administrační části Konfigurace > Uživatelské rozhraní > Custom Contextual Links a klepněte na odkaz Add a link here. Zobrazí se formulář, ve kterém do políčka Nadpis zadejte text odkazu, který se bude zobrazovat. Následně vložte URL, na kterou bude tento odkaz směřovat.

URL zadáváte v relativním tvaru bez lomítek na okrajích. Chcete-li do URL automaticky vkládat NID číslo příslušného uzlu, pak použijte nahrazovací vzorek %nid. URL pro odkaz na záložku Sledovat u příslušného uzlu tedy bude node/%nid/track.

Ve spodní části formuláře si ještě přepněte, zda má být tento kontextový odkaz aplikován na uzly nebo na bloky a podle této volby pak určete, jestli se bude vztahovat na všechny položky nebo jen na některé konkrétní. Náš odkaz pro přesun na sledovací stránku se tedy bude týkat uzlů, a to všech. Tedy stiskněte tlačítka Uzly a All nodes. Nastavení poté uložte.

Custom Contextual Links

Přidávání nového kontextového odkazu v Drupalu 7

Nyní už zbývá jen nově přidaný kontextový odkaz vyzkoušet. Přejděte na titulní stranu nebo někam jinam, kde máte výpis uzlů a zkuste si u některého zobrazit seznam kontextových odkazů. Měla by zde figurovat nová položka. Vyzkoušejte její funkčnost.

Kontextové odkazy

Kontextové odkazy s novou položkou

Modul Custom Contextual Links můžete využít i k tvorbě mnohem sofistikovanějších kontextových odkazů, zejména  v kombinaci s bloky, kdy můžete u některého konkrétního bloku poskytovat odkazy pro editaci některých konkrétních uzlů a podobně.

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.
Marketing 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

Sledujte Maxiorla na Facebooku

Maxiorel na Facebooku

Poslední komentáře
Hosting pro Drupal a WordPress

Hledáte český webhosting vhodný nejenom pro redakční systém Drupal? Tak vyzkoušejte Webhosting C4 za 1200 Kč na rok s doménou v ceně, 20 GB prostoru a automatické navyšováním o 2 GB každý rok. Podrobnosti zde.

@maxiorel na Twitteru

Maxiorel na Twitteru