Na navigaci | Klávesové zkratky

Přidejte si značku {texy} do Latte

Knihovna Texy od verze 3.1.6 přidává podporu pro Latte 3 v podobě značky {texy}. Co umí a jak ji nasadit?

Značka {texy} představuje snadný způsob, jak v Latte šablonách psát přímo v syntaxi Texy:

{texy}
You Already Know the Syntax
----------

No kidding, you know Latte syntax already. **It is the same as PHP syntax.**
{/texy}

Stačí do Latte nainstalovat rozšíření a předat mu objekt Texy nakonfigurovaný podle potřeby:

$texy = new Texy\Texy;
$latte = new Latte\Engine;
$latte->addExtension(new Texy\Bridges\Latte\TexyExtension($texy));

Pokud je mezi značkami {texy}...{/texy} statický text, tak se přeloží pomocí Texy už během kompilace šablony a výsledek do ní uloží. Pokud je obsah dynamický (tj. jsou uvnitř Latte značky), zpracování pomocí Texy se provádí pokaždé při vykreslování šablony.

Pokud je žádoucí Latte značky uvnitř vypnout, dá se to udělat takto:

{texy syntax: off} ... {/texy}

Do rozšíření lze kromě objektu Texy předat také vlastní funkci a tak umožnit předávat ze šablony parametry. Kupříkladu chceme mít možnost předávat parametry locale a heading:

$processor = function (string $text, int $heading = 1, string $locale = 'cs'): string {
	$texy = new Texy\Texy;
	$texy->headingModule->top = $heading;
	$texy->typographyModule->locale = $locale;
	return $texy->process($text);
};

$latte = new Latte\Engine;
$latte->addExtension(new Texy\Bridges\Latte\TexyExtension($processor));

Parametry v šabloně předáme takto:

{texy locale: en, heading: 3}
...
{/texy}

Pokud chcete pomocí Texy formátovat text uložený v proměnné, můžete použít filtr:

{$description|texy}

Komentáře

  1. Pepa Paprčka #1

    avatar

    Texy je fajn, ale dokumentace je trošku zanedbaná.
    V části Modifikátory se říká „více se dozvíte v jiné kapitole“, která tam není. Editor nic nedělá.

    Dotaz k modifikátorům: jak nastavit styl jen pro jedno nebo více slov, to znamená udělat tohle, ale bez vytučnění nebo kurzivy:

    Chci aby **slovo .[text-danger]** bylo červené, ale ne tučné. Chci aby //tato slova .[text-danger]// byla červená, ale ne skloněná.

    Jak texy pozná odkud kam chci modifikovat?

    před 11 měsíci | odpovědět
  2. David Grudl https://davidgrudl.com #2

    avatar

    Použij "slovo .[text-danger]"

    před 11 měsíci | odpovědět

Zanechat komentář

Text komentáře
Kontakt

(kvůli gravataru)



*kurzíva* **tučné** "odkaz":http://example.com /--php phpkod(); \--

phpFashion © 2004, 2023 David Grudl | o blogu

Ukázky zdrojových kódů smíte používat s uvedením autora a URL tohoto webu bez dalších omezení.