Jak na titulní stranu a modul

Teo
03. lis 2016 01:40 #129042
Ahoj, možná se budu opakovat, ale řeším už po několikáté, jak vyřešit problém s modulem, který chci mít jen na titulní straně. Jedná se o slider. Jako titulní stranu mám seznam kategorií Phoca Cart. Modul slideru je nastaven na zobrazování jen na titulní straně. Kliknu na jakoukoliv kategorii eshopu a pak dál třeba na nějaký výrobek. Tedy už nejsem na titulní straně, ale slider se stále zobrazuje. Vím, že se to dá řešit tak, že si udělám skryté menu, do kterého dám všechny kategorie eshopu jako položky a pak se modul slideru nebude objevovat. Pokud ale bude zákazník udržovat stránky sám, pak to není zrovna systémové řešení. Dá se to řešit jinak?

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

Odpověď od H13
03. lis 2016 09:47 - 03. lis 2016 10:07 #129046
Ahoj, jak to funguje:

- V Joomle! můžeš přiřadit modul k vybrané menu položce, ale to se může chovat dvojím způsobem:

1) když ta menu položka odkazuje jen na jednu stránku, např. na jeden článek, pak se modul bude zobrazovat jen na té jedné stránce
2) když ta menu položka odkazuje na nějakou komponentu a ta má více zobrazení: např. ze zobrazení seznamu kategorií (categories view) jdeš na zobrazení seznamu fotek (category view) a pak na konkrétní fotku (detail view), pak se ten modul zobrazí na té hlavní stránce, ale také na jejich podstránkách.

Tedy, pokud si definuješ úvodní stránku jako "jednostránku" - typicky odkaz na konkrétní článek, většinou je vše Ok, pokud si ji definuješ na komponentu, která se pak postupně dělí na různý zobrazení, pak prostě používá pořád stejné ID menu odkazu (to je důležité kvůli SEF) a prostě v každým zobrazení bude stejný ID menu odkazu, tedy i modul se bude zobrazovat všude.

Pak se to řeší např. přímo v modulu přidáním php podmínky na tvrdo:

- když se modul zobrazuje v této komponentě, pak se má zobrazit jen v listu kategorií (categories view) a ne v ostatních zobrazeních

Příklad:
$app	= JFactory::getApplication();
$option = $app->input->get('option');
$view 	= $app->input->get('view');

// ZOBRAZENI POUZE V PHOCA CART A TO JEN POUZE V CATEGORIES VIEW (Seznam kategorií)
if ($option != 'com_phocacart' || ($option == 'com_phocacart' && $view != 'categories')) {
	return false;
}

Pokud toto bude v hlavičce modulu, pak se tento modul zobrazí jen v Phoca Cart - seznamu kategorií, nikde jinde, ani v jiném menu odkazu, ani v Phoca Cart - seznamu produktů


Teoreticky by se to dalo udělat i nějak systémově, např. že by šablona přepisovala výstup modulů a v šabloně by existovaly parametry pro zobrazení - např. zobraz pouze v této komponentě, nebo zobraz pouze v této komponentě a pouze v tomto zobrazení. Taky by se to nějak mohlo kontrolovat v routeru, který by např. zjistil, že toto je opravdu úvodní stránka (žádná podstránka úvodní stránky) a pak by přizpůsobil modul, apod. :idea:

Phoca Gallery - http://www.phoca.cz/phocagallery - obrázková galerie (Joomla!)
Phoca Guestbook - http://www.phoca.cz/phocaguestbook - kniha návštěv (Joomla!)
Phoca Download - http://www.phoca.cz/phocadownload - stahování souborů (Joomla!)
Phoca Cart - http://www.phoca.cz/phocacart - e-shop,...
Poděkovali: Teo

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

Odpověď od Cony
03. lis 2016 22:16 #129060
Nebo by to šlo řešit pozicí pro moduly, kterou šablona zobrazí jen na titulce.

No a nebo Advanced Module Manager .
Poděkovali: Teo

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

Odpověď od Teo
03. lis 2016 23:44 #129061
Díky moc za rady pánové.
Nakonec jsem zvolil Advanced Module Manager. Funguje skvěle.

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

Odpověď od H13
04. lis 2016 11:46 #129063
Super, jak to funguje? Dal jsi "Include" v nastavení modulu pro "Homepage" nebo tam je ještě jiný nastavení?

Phoca Gallery - http://www.phoca.cz/phocagallery - obrázková galerie (Joomla!)
Phoca Guestbook - http://www.phoca.cz/phocaguestbook - kniha návštěv (Joomla!)
Phoca Download - http://www.phoca.cz/phocadownload - stahování souborů (Joomla!)
Phoca Cart - http://www.phoca.cz/phocacart - e-shop,...

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

Odpověď od Teo
07. lis 2016 09:30 #129080
Ano, mám to teda česky, tak že jsem dal Metodiku použití - Všem, Položky menu - Titulní strana a ještě Úvodní stránka - Zahrnout. Není to ještě komplet, ale zatím to funguje - martinbenda.savana-hosting.cz/stuky.cz/

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

Odpověď od H13
07. lis 2016 11:25 #129082
Ok

Phoca Gallery - http://www.phoca.cz/phocagallery - obrázková galerie (Joomla!)
Phoca Guestbook - http://www.phoca.cz/phocaguestbook - kniha návštěv (Joomla!)
Phoca Download - http://www.phoca.cz/phocadownload - stahování souborů (Joomla!)
Phoca Cart - http://www.phoca.cz/phocacart - e-shop,...

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