Jak na změnu meta description v jednotlivych sablonaych
- Pavel Macháň
- Člen | 282
malkol napsal(a):
Ahoj,
jak se řeší, pokud chci v každé šabloně v meta upravit jiný description ? v @layout to udelat nemuzu, protoze by se to zobrazilo vsude … myslím něco jako{block title} … ale pro description
nemůžu to nikde najít .. díky
co ti brani udelat {block description} ? :)
- Machy8
- Člen | 59
//@layout.latte
<meta name="description" content="{ifset description}{include description}{else}Moje stránky{/ifset}">.
//šablona Articles/default.latte
{block description}
Stránka s články
{/block}
//šablona Articles/view.latte
{block description}
{$article->annotation}
{/block}
- malkol
- Člen | 133
{block title|striptags|upper}titulek knihovna{/block}
{block description}
Stránka s články
{/block}
takto jsem to napsal … title se mi upravi, ale description zustane prazdny .. text :
Stránka s články
se v source-codu napise normalne na misto tam, kam jsem ho v latte vlozil
<title>titulek knihovna</title>
<meta name="description" content="">
určitě to dělám špatně .. title je prece obsah tagu, a content je jeden konkretni atribut ne ?
- David Matějka
- Moderator | 6445
Dejte si pozor, latte v takovem pripade spravne neescapuje (block
description je totiz definovan v jinem kontextu, nez kam se vklada), viz
https://github.com/…atte/pull/60
je nutno pouzit
<meta name="description" content="{include description|escape}"/>
- malkol
- Člen | 133
duke napsal(a):
A proč to vůbec řešíš přes include a nemáš v layoutu:
<meta name="description" content="{block description}Moje stránky{/block}" />
Nebo mi něco uniká? Pak by nebylo třeba nejspíš ani to |escape.
potom bych nemohl preci na kazde strance mit jiny description ne ?
- David Matějka
- Moderator | 6445
@malkol slo, pomoci dedicnosti bloku https://latte.nette.org/cs/tags#…
podobnym zpusobem jsou v sandboxu reseny scripty:
https://github.com/…layout.latte#…
https://github.com/…efault.latte#…
ale jak rikam, neslo by tam spravne vyresit escapovani kvuli rozdilnym kontextum
- malkol
- Člen | 133
David Matějka napsal(a):
@malkol slo, pomoci dedicnosti bloku https://latte.nette.org/cs/tags#…
podobnym zpusobem jsou v sandboxu reseny scripty:
https://github.com/…layout.latte#…
https://github.com/…efault.latte#…ale jak rikam, neslo by tam spravne vyresit escapovani kvuli rozdilnym kontextum
mnohem hezčí řešení .. díky za něj
- duke
- Člen | 650
David Matějka napsal(a):
@malkol slo, pomoci dedicnosti bloku https://latte.nette.org/cs/tags#…
podobnym zpusobem jsou v sandboxu reseny scripty:
https://github.com/…layout.latte#…
https://github.com/…efault.latte#…ale jak rikam, neslo by tam spravne vyresit escapovani kvuli rozdilnym kontextum
Když se přepisuje blok (pomocí dědičností bloků), kontext
přepisujícího bloku je přece naprosto irelevantní (vlastně by ani žádný
být neměl a přepisující bloky by měli jen následovat jeden za druhým).
Pokud si tedy latte nepamatuje skutečný kontext (původního) bloku
z layoutu, jde jednoznačně o bug. Ještě mě napadá, že by jako
workaround mohl jít ten kontext nějak řídit pomocí makra
{contentType}
ale nezkoušel jsem a ani to není dostatečně
zdokumentováno (nejsou zdokumentovány všechny podporované druhy
kontextů).