custom module
<customContent />
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
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.
if ($hasContent)
{
echo $this->form->getInput($hasContentFieldName);
}
if ($hasContent)
{
if($this->item->module == 'mod_custom') {
$this->form->setFieldAttribute($hasContentFieldName, 'type', 'textarea');
}
echo $this->form->getInput($hasContentFieldName);
}
Je možné udělat i override, takže úprava zůstane i updatu Joomly.
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.
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.
Ale není pravda, že to jde v textových filtrech vypnout. Prostě nejde, nefunguje to a speciálně to nefunguje pro jce. Strávil jsem nad tím hafo času a prostě nejde vložit nějaký kód (například iframe), aniž by to editor buď zcela smazal nebo upravil. Jestli je to chyba v joomle nebo je to kvůli bezpečnosti teď zcela zakázaný netuším.
Všechny návody na to nefungují, věřte mi, že bych raději zvolil nějaké takové řešení než sahat do kódu.
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.
Jinak pro vložení vlastního kódu jsem vždy radši šel cestou vytvoření template override custom modulu, kam jsem si ten kód dal natvrdo. Není pak třeba řešit editory, různá práva uživatelů apod...
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.
Při použití JCE dochází k dvojímu filtrování, o jedno se stará přímo JCE - to lze nastavit v rámci profilu JCE, o druhé Joomla, tam pak záleží jaká má práva přihlášený uživatel (v globálním nastavení filtrování textu).
Ano to vím, ale nelze to nastavit, tak že to nezmění nebo nesmaže třeba iframe. Pokud mi někdo takové nastavení předvede je borec, ale fakt to myslím nejde. Takovéto nastavení je mnohokrát popsáno, ale na aktuální joomle a JCE to nefunguje.
Jinak pro vložení vlastního kódu jsem vždy radši šel cestou vytvoření template override custom modulu, kam jsem si ten kód dal natvrdo.
Pro určitá řešení je to vhodné, ale ne vždy. Když je takovýchto modulů na webu více, tak by vznikal dost zmatek. A pokud tam budu mít třeba vloženou google mapu a nad ní bude v <h2> hlavička, tak si to zkušenější uživatel dokáže sám změnit v kódu. Pokud mu tam povolím editor, je vše nenávratně ztraceno.
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.
Konkrétně pro iframe je velice vhodné a jednoduché použít modul Obálka. Tento pak lze využít buď jako samostatný modul nebo třeba pomocí loadmodule zobrazit kdekoli v obsahu Joomly (článek, modul vlastní obsah,...). Je to bez starostí.
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.
Ale úplně vypnout editor v globální konfiguraci zase znepříjemní uživatelům psaní článků. Kdyby byla tato volba jen na vlastní moduly, bylo by to super. Možná by byl dobrý nápad přidat to do joomly.
A vypnout jce při editaci toho modulu znamená to že když tam někdo znovu vleze a uloží to, tak ten obsah zcela zmizí. A to je dost šílený.
A modul obálka jen vytvoří iframe, aniž bych ho mohl ovlivnit parametry, například lazy load.
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.
- buď na záložce Funkce & Rozvržení si přetáhnout ikonku pro Iframe do použitých ikon
- nebo na záložce Plugin Parameters sekce Podpora médií hodnota Povolit IFrame na Ano.
Oboje jsem zkusil, oboje mi funguje i po uložení. V příloze jsem hodil profil který používám (je tedy pro JCE PRO). Předpoklad tedy je být přihlášen jako uživatel bez nastaveného filtrování v rámci glob. nastavení Joomly.
Osobně to ale takto nepoužívám, riziko toho, že něco pak otevře uživatel s nižším oprávněním a tím to smaže je velké.
Pro podobné případy používám, jak jsem psal, přepis modulu Vlastní HTML a k tomu plugin n3t Fields - ten umožní v rámci šablony definovat doplňující pole téměř k čemukoliv, tedy i modulům. Takže si pak můžu vytvořit přepis modulu třeba iframe.php a k němu mít v Custom HTML modulu speciální záložku s parametry. Uživatelé pak zadávají atomické hodnoty a nemusím řešit co kdo jak zadá do editoru...
(stejně to používám třeba i u článků / kontaktů / bannerů)
Přílohy:
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.
Ono to opravdu vypadá, že to lze použít jen pro JCE pro, v neplaceném to prostě povolit nejde.
A právě riziko, že když do toho někdo vleze, tak to smaže je prostě průšvih.
To už si raději napíšu vlastní modul pro vlastní obsah, který nebude používat editor.
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.
To už si raději napíšu vlastní modul pro vlastní obsah, který nebude používat editor.
A jsme zpět u první rady, kterou jsem Vám dal

U mě navíc bez ztráty času a nervů.
Napsal Cony: Pro podobné případy používám, jak jsem psal, přepis modulu Vlastní HTML a k tomu plugin n3t Fields
Zajímavá varianta

To já zase používám ACM modul, kde si jednotlivé typy polí nadefinuji v XML a view si udělám takové jak potřebuji.
Ve výsledku si tímto připravím například různé typy prvků na web (podobné jako když si v page builderu nasázím předdefinované typy modulů.
A také to ve výsledku má asi stejný efekt - admin zadává jen to co má a nemá kam uhnout a udělat chyby.
Ale jestli je to odobné jako u core fields u článků, tak pak si dokážu představit, že tam kde do modulu potřebuji vložit JS, který nikdo nemá editovat než já, tak prostě dám poli nastavení že je jen pro superadmina, a admin tyto pole neuvidí == nemůže je zkonit.
Otázkou je, proč bych to dělal, když potřebuji k JS nastavit jeho chování (defer, umístění...).
Zde je opravdu na místě to nahrát natvrdo přímo do modulu.
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
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.
Vymazat v xml řádek se zpětným lomítkem
<customContent />
Rudolfe, fakt, hodně mi vadí, když někdo ze sebe dělá chytrého.
Tohle je jediné, co jsi k tomu napsal. Kde je tam ta rada o vlastním modulu?
Vytvořit nebo upravit si pro to nějaký modul, je možná to nejjednodušší, ale není to vhodné pro weby, které jsou již hotovy. Měnit custom moduly na jiné moduly (a možná i s nutností stylovat) není zrovna dobrý nápad.
Dobrá rada je ta Houbákova a taky jsem ji využil. Je možné, že se vynoří ještě něco lepšího, pokud ano, napíšu to sem.
Pro možnost přispívání do fóra je nutné: Přihlásit se nebo Vytvořit účet.