Joomla,  joomla-1,  software

Joomla: jak vložit libovolný kód automaticky za intro

Narazil jsem na pěkný návod, jak automaticky vkládat za intro článku v Joomle libovolný kód nebo text. Vzhledem k slušné čtenosti mých ostatních textů o Joomle (článek o AdSense v Joomle má k dnešnímu datu 2098 přečtení, jedná se o 6. nejčtenější text na tomto webu) jsem se rozhodl jej upravit a přeložit do češtiny. Manuál platí pro Joomlu 1.0.15.

Jako první musíte stáhnout a nainstalovat komponent s názvem JosReplace a k němu příslušný mambot na stejné adrese (označený jako plugin). Jakmile máme obě instalace za sebou, můžeme se podívat na další krok, kdy za pomoci nainstalovaného komponentu a mambotu vytvoříme pravidlo pro nahrazování textu vybraným kódem.

V admin rozhraní Joomly otevřete záložku Components->Replace->Configuration a kliknutím na ikonu New zvolte novou položku pravidla.  Do pole Search Expression vložíme výraz, který bude následně mambot hledat. Na obrázku je vidět můj konkrétní výraz adsense_intro, v popisu budu pokračovat se vzorovým {VLASTNI RETEZEC}. Vy si jej nahraďte libovolným textem podle potřeby.

Do další text area s názvem Replace Expression vepíšeme přímo kód nebo text, který chceme, aby se nám zobrazoval v článcích na místě, kam vložíme text z pole Seach Expression, například {VLASTNI RETEZEC}. Opět na mém konkrétním příkladu vidíte kód z Google AdSense. Po tomto nastavení pravidla nastavte 4  položky Published, Exact Word, Case Sensitive a Voidable stejně, jako je mám já.

Nyní by mohlo být hotovo. Pokud chcete vkládat kód do článků ručně na místě, ktere se vám zdá vhodné, stačí při psaní textu vložit na zvolené místo text,  který jste si zvolili jako Search Expression. Pokud byste chtěli takový kód vkládat automaticky přímo za intro článku, čtete dále.

Tato část už je hack systému Joomly, pokud budete později systém aktualizovat, musíte hack provést znovu. Na svém FTP najděte soubor content.php (adresa běžně …/components/com_content/content.php). Otevřete jej v nějakém editoru a najděte řádek 1712, kde nahradíte následující kód:

$row->text = $row->introtext. ( $params->get( ‘intro_only’ ) ? ” : chr(13) . chr(13) . $row->fulltext);

tímto kódem:

$row->text = $row->introtext. ( $params->get( ‘intro_only’ ) ? ” : chr(13) . chr(13) .’{VLASTNI RETEZEC}’. $row->fulltext);

Nezapoměňte si do kódu vložit vlastní řetězec namísto tagu {VLASTNI RETEZEC}, který jste zadali do pole Seach Expression.

Aktualizovaný soubor poté nahrejte zpět na FTP a máte hotovo. Zvolený kód se bude automaticky vkládat do všech textů hned intru.

Článek je postaven na informacích z webu joomladigger.com a extensions.joomla.org