- Aplikace
- Databáze
- Šablony
- Formuláře
- Knihovny
- Návody
Šablony – dědění
Dědění šablon je velmi silná stránka Háefka frameworku. Díky dědění šablon můžete přepisovat dříve a jinde definované bloky šablony. Zároveň je můžete doplňovat (na konci i ze předu). V jedné šabloně můžete definovat jakékoliv množství bloků.
Pokud je definována dědící šablona, ale není definován
blok, považuje se obsah stávající šablony za blok pojemnovaný
#content.
Podívejte se na označení bloků:
{extends 'layout.phtml'}
{block #content}
<p>Zde je zásadní obsah dokumentu.</p>
{/block}
{block append #footer}
Naposledy upraveno 19.11.2022.
{/block}
V layout šabloně, kterou dědíme, pak stačí definovat stejné bloky, které budou přepsány, případně doplněny.
<html>
<body>
<div id="content">
{block #content}{/block}
</div>
<hr />
<div class="footer">
{block #footer}
Copyright Jan Skrasek
{/block}
</div>
Pokud nechcete obsah bloku nahradit, ale pouze doplnit, napište před název
bloku append pro přidání za, respektive prepend pro
přidání vpřed.
Nastavení dědícího souboru
Z výše uvedené ukázky je vidět, že dědící šablonu nastavíte
pomocí triggeru extends. Dědící šablono můžete samozřejmě
nastavit i ve svém php kódu pomocí metody setExtendsFile.
$template = new Template('template.phtml');
$template->setExtendsFile('layout.phtml');
...
