Editace vzhledu článku (úvodníku) v blogu kategorie

JanBab
29. dub 2020 11:41 #142232
Zdravím,
chtěl bych editovat layout úvodníku v blogu kategorie (obrázek vlevo, vpravo vedle obrázku nadpis, pod ním obsah z článku a pod tím číst více ...)
Hledal jsem v adresáři /www/components/com_content/views/category/tmpl, ale po několika zkouškách stále nevím, který je to soubor.
Díky

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Bong
29. dub 2020 13:06 #142234
Tyto soubory se ale neupravují. I když by to fungovalo, tak se vám při aktualizaci přepíšou originálem.

Upravovat musíte soubory vaší šablony. Hledejte ve složce templates/vasesablona/html/...

A ještě lépe v Joomle máte na to přímo nástroje v Šablony: šablony (Site) - TEMPLATE podrobnosti a soubory. Tam si můžete upravovat stávající, nebo vytvářet přepis vzhledu všech komponent, modulů,... a to bez obav, že narušíte soubory jádra.

I'm sorry, my responses are limited...you must ask the right questions.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od JanBab
29. dub 2020 13:17 #142235
Jo jo o tom vím ... uvedl jsem cestu k výchozím souborům Joomly, aby mě někdo nenařknul, že upravuji špatný soubor.
Jen stále nedokážu najít ten správný soubor/kód pro tu úpravu layoutu blogu kategorie.
Díky

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Bong
29. dub 2020 13:30 #142236
A vidíte - nařknul :-)

Takže jste si v šabloně vytvořil přepsání com_content - category a soubory pro blog upravil?

I'm sorry, my responses are limited...you must ask the right questions.

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od JanBab
29. dub 2020 13:57 #142237
Už jsem si zvykl :)
Ano, vytvořil přepsání, ale nevím kde to upravit! Mám tam teď tyto soubory:
blog.php
blog_children.php
blog_item.php
blog_links.php
default.php
default_articles.php
default_children.php
Nemůžu ale nalézt kód, kterým upravým vzhled článku v blogu kategorie (obrázek vlevo, vpravo vedle obrázku nadpis, pod ním obsah z článku a pod tím číst více ...).

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.

Odpověď od Rudolf
29. dub 2020 18:12 - 29. dub 2020 18:18 #142240
Jednotlivé články se renderují ve view blog_item.php.

Je to vidět v souboru blog.php:
				<div class="item column-<?php echo $rowcount; ?><?php echo $item->state == 0 ? ' system-unpublished' : null; ?>"
					itemprop="blogPost" itemscope itemtype="https://schema.org/BlogPosting">
					<?php
					$this->item = &$item;
					echo $this->loadTemplate('item'); // Zde volám sublayout pro jednotlivé články - item
					?>
				</div>


Uvnitř této šablony pak načítáte jednotlivé elementy zobrazení (titulekm ikonky, štítky, intro, obrázek) a to dvojím způsobem:

1. renderováním informací pomocí core joomla kódu (zde například pro obrázek:
<?php echo JLayoutHelper::render('joomla.content.intro_image', $this->item); ?>

Vzhled se tedy renderuje pomocí šablony v core Joomla, ale i tu můžete overridovat v šabloně. No a najdete ho v adresáři pro layout:
layouts/joomla/content/intro_image.php

URL pro Override pak vypadá:
templates/sablona/html/layouts/joomla/content/intro_image.php

2. Renderováním pomocí triggeru. Zde se pomocí eventů zobrazují další informace:
<?php echo $this->item->event->afterDisplayTitle; ?>

Tyto Eventy spouští pluginy typu Content.

Zde je to spíše na daný plugin a jeho výstup.



Resume:

- udělejte si override view pro content
- udělejte si override layoutů

Tyto informace v lepším podání než mojí najdete samozřejmě také po hledání mimo joomlaportal, nejl=pe v dokumentaci pro Joomla. Tam já chodím ještě dříve než sem.

Například zde:
docs.joomla.org/J3.x:Layout_Overrides_in_Joomla

MiniJoomla! - www.minijoomla.org - eshop s rozšířením Joomla/VM
Email Manager - aplikace na správu šablon emailů pro VirtueMart
Easy Feeder - aplikace na generování XML/CSV feedů a napojení na ERP pro VM
PragueClassicconcert - portál pro prodej vstupenek na systému Joomla
Poděkovali: Bong

Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.