Vlastní pole v Joomla - zobrazení v modulu mod_articles_category

Bart
30. kvě 2018 10:43 - 30. kvě 2018 10:46 #136102
Na Joomla magazínu se objevil již v pořadí druhý článek zabývající se vlastními poli v Joomla. Pokud Vás to trošku zajímá, koukněte sem:
  1. How far can we go with Joomla! and Custom Fields?
  2. Custom Fields - Episode 2 : how to manage your Custom Fields

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

Odpověď od Cony
30. kvě 2018 13:08 #136107
Na Custom Fields v Joomle jsem se těšil. Používal jsem DPFIelds, ze kterých Custom Fields v Joomle vycházelo (dělal to stejný člověk). Musím ale říct, že mne trochu zklamaly, hlavně v náročnosti práce s nimi v šabloně, pokud je potřebuji vykreslovat nějak sám a hlavně v omezenosti nasazení - fungují jen pro kategorie, kontakty, uživatele a články.

Poměrně často jsem řešil vlastní pole např. pro moduly, nebo položky menu, což s interními Custom Fields nelze.

Pokud by někdo něco podobného řešil, alternativou jsou n3t Fields - umožňují definovat vlastní pole téměř pro cokoliv v rámci definičních souborů přímo v šabloně. Je to spíše ale nástroj pro tvůrce šablon, nebo někoho, kdo alespoň trochu zvládá upravovat šablonu, nemají žádné automatické vykreslování. Ale zase poměrně jednoduše lze přidat např. podtitulek položky menu, nebo modulu...
Poděkovali: Bart

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

Odpověď od Martens
10. úno 2020 22:00 #141719
Ahoj,

řeším problém s Custom Fields a to následující. Mám nadefinovány Custom Fields, které vkládám přímo do článku - a to jak do fulltextu, tak i do introtextu.

Pokud článek zobrazuji jako blog, tak se v introtextu vše zobrazuje správně.

Pokud ale použiji modul (např. mod_articles_category) a povolím zobrazení úvodníku, tak se Custom Fields nezobrazují a co víc - sekvence {field xx} se z introtextu při načítání odstraní.

Zkoušel jsem přepsat script default.php z modulu, nic nepomáhá. Zatím jsem se dostal do stavu, že v přepsaném default.php jsem schopen si k právě zobrazenému článku načíst vyplněná custom field, ale už je nejsem schopen dostat do toho introtextu.

Máte na to někdo nějaký vyzkoušený postup nebo pluginu? Obecně si totiž myslím,že to mizení způsobuje to, že formát {field xx} svými závorkami nutí Joomlu na toto aplikovat nějaký plugin a protože žádný plugin nenajde, tak tu sekvenci při zobrazení z introtextu odstraní.

Je z toho nějaká cesta ven?

Díky předem za každé nakopnutí správným směrem.

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

Odpověď od Cufe
11. úno 2020 09:53 - 11. úno 2020 09:56 #141720
Ahoj Marte, pokud tedy chápu správně dotaz a řešíš, zda se custom field (ne)zobrazuje v modulu, tak se občas stává, že se v nastavení modulu zapomene povolit zobrazení custom field (bývá to tam přeloženo také jako povolit předdefinovaný obsah apod.), záleží, pokud to tam daný modul vůbec má k nastavení. Poté se custom field zobrazí. Jinak pak zbývá doprogramování v overridu.

Edit: případně také to povolit v globálním nastavení, aby to bylo jako výchozí, pokud není.

Joomla úřední deska | IVT služby - IT služby, webové stránky v Joomla!, online marketing | Joomla je best! Zveřejni svůj problém, pokud ho vyřešíš sám, jsi best!

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

Odpověď od Bong
11. úno 2020 10:16 - 11. úno 2020 10:16 #141721
Jenom doplním. Bývá to na záložce a pojmenovávají to Připravený nebo předpřipravený obsah, někde jsem viděl i Události obsahu nebo Content... Zpravidla modul, ve kterém je pole pro standardní editor by to měl mít vždycky (i moduly rozšíření).

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 Martens
11. úno 2020 10:18 #141722
Ahoj Petře,

no to bylo první, co jsem hledal v modulu, ale nenašel - a příjde mi divné, že by to třeba modul mod_articles_category (což je standardní Joomla Core modul) neuměl - a fakt to asi neumí - ta volba tam není.

Nicméně jak jsem psal - dokážu si v override k danému articlu vytáhnout všechny custom fields, ale prostě v tom modulu v property $item->displayIntrotext nejsou žádné vložené fieldy ve formátu {field xx}. V databázi jsou, ale po načtení nee.

Nechci ani přepisovat helper.php, protože tím bych si zadělal na další starost při aktualizaci Joomly a musel bych ten helper pokaždé upravovat.

A není to ani zvolenou šablonou, protože zcela stejně se mi to chová i na čisté instalaci 3.9.15 s beez šablonou.

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

Odpověď od Cufe
11. úno 2020 12:26 #141723
Hele, zkus si do modulu nacpat tento kód:
<!-- Vlastní pole článku -->
			<div class="cf-article">
			<?php
				if (!empty($item->jcfields)) {
					foreach ($item->jcfields as $k => $v) {
						if (isset($v->value) && $v->value != '') {
							echo '<div class="cf-article-'.$k.'">';
							echo $v->value;
							echo '</div>';
						}
					}
				}
			?>
			</div>
			<!-- Vlastní pole článku END -->
Bojoval jsem s tím v jednom modulu kdysi (asi před rokem, v období, kdy jsme vlastní pole řešili i na srazu) a od Davida (Mokrous) jsem si objednal úpravu, která mi pole zobrazila. Nevím, zda to bude funkční i pro tebe a zda ti to CF zobrazí. Pokud jo, tak mě pak pozveš na kofolu ;-)

Joomla úřední deska | IVT služby - IT služby, webové stránky v Joomla!, online marketing | Joomla je best! Zveřejni svůj problém, pokud ho vyřešíš sám, jsi best!
Poděkovali: Martens

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

Odpověď od Martens
15. úno 2020 19:17 - 15. úno 2020 19:17 #141746
Ahoj Petře,

díky, ale neřešilo to přesně to, co jsem potřeboval - nakonec jsem to obešel a zobrazil to jako blog (použil jsem plugin Component anywhere od Regular Labs) a vypadá to, že to funguje.

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

Odpověď od Cufe
15. úno 2020 21:38 #141747
Budu rád, pokud bys to vzal za své téma na srazu, pokud bys dorazil, a mohl o tom povyprávět
Vlastní pole jsou stále zajímavým téma.

Joomla úřední deska | IVT služby - IT služby, webové stránky v Joomla!, online marketing | Joomla je best! Zveřejni svůj problém, pokud ho vyřešíš sám, jsi best!
Poděkovali: Bong

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