Kratší link do template

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Mikulas Dite
Člen | 756
+
0
-

Ahoj,
říkám si, zda by stálo za to vytvořit nějaké další makro, které by si samo dělalo k linku i anchor element. Aby to bylo stejný jako ostatní linky, tak by to byla nepárová značka s textem někde v parametru (a protože jsou krátký, tak to vůbec nevadí). Další atributy a se jednak mohou přidávat v parametru toho makra, ale a jich stejně moc nemá; class (a i ta se dá obejít přes container_class a) a target (optional, 2. parametr, je to u minima linků).

Mikulas Dite
Člen | 756
+
0
-
<?php
function alink($presenter, $link, $text, $target = '__self')
{
    $link = Html::el('a')->href($presenter->link($link))->setText($text);
    $link->attrs['target'] = $target;
    return $link;
}
?>
<?php
$template->registerFilter($lf = new LatteFilter);
$lf->handler->macros['alink'] = '<?php echo alink($presenter, %:macroModifiers%); ?'.'>';
?>

Editoval Mikulas Dite (6. 3. 2010 11:02)