Phoca Cart - skupiny polí a pole - nestandardní chování
07. led 2024 12:04 - 07. led 2024 12:10 #149055
Ahoj,
narazil jsem na problém s chováním polí u Phoca Cart.
Jedu J4 a PC 4.0.10.
Používám pole ke zobrazení informací v tabech u produktu. Vše funguje jak má jen jsem narazil na dost podstatný fail.
Vytvořil jsem si skupiny polí. Do těchto skupin polí si zařazuji vytvořené pole, které se mi pak zobrazují u produktu v administraci jako záložky. Ty pole jsou typu editor a vkládám tam odkazy na phoca gallery obrázky nebo texty.
Problém:
potřebuji si řadit tyto pole tak aby byly seřazeny dle ID - taková možnost by měla umět Joomla - je tam seznam kde si mohu způsob řazení zvolit. Ze začátku jsem měl vytvořeny asi 4 pole. Vše se zobrazovalo ok ale po přidání dalšího pole se mi řazení rozhodilo a ať nastavuji co nastavuji v polích tak to na frontendu je stejné. Pole co bylo kdysi první je poslední, ostatní místo nezměnili.
Všiml jsem si v DevTool, že se mi změnila třída u všech polí id="uk-tab-číslo" a podle tohoto id se to řadí.
Za nic na světě nemůžu přijít na to proč.
Tab Barvy musí být na druhém místě po tabu Typ dveří
Moc díky za směrování kde hledat řešení.
Leoš
test web url: zde
vstup: admin / admin
narazil jsem na problém s chováním polí u Phoca Cart.
Jedu J4 a PC 4.0.10.
Používám pole ke zobrazení informací v tabech u produktu. Vše funguje jak má jen jsem narazil na dost podstatný fail.
Vytvořil jsem si skupiny polí. Do těchto skupin polí si zařazuji vytvořené pole, které se mi pak zobrazují u produktu v administraci jako záložky. Ty pole jsou typu editor a vkládám tam odkazy na phoca gallery obrázky nebo texty.
Problém:
potřebuji si řadit tyto pole tak aby byly seřazeny dle ID - taková možnost by měla umět Joomla - je tam seznam kde si mohu způsob řazení zvolit. Ze začátku jsem měl vytvořeny asi 4 pole. Vše se zobrazovalo ok ale po přidání dalšího pole se mi řazení rozhodilo a ať nastavuji co nastavuji v polích tak to na frontendu je stejné. Pole co bylo kdysi první je poslední, ostatní místo nezměnili.
Všiml jsem si v DevTool, že se mi změnila třída u všech polí id="uk-tab-číslo" a podle tohoto id se to řadí.
Za nic na světě nemůžu přijít na to proč.
Tab Barvy musí být na druhém místě po tabu Typ dveří
Moc díky za směrování kde hledat řešení.
Leoš
test web url: zde
vstup: admin / admin
07. led 2024 12:23 #149056
Odpověď od Leoš

Pokročilý uživatel
Určitě to bude souviset s Custom fields v Joomle, vlastně potřebuji řadit pouze skupiny polí....a to právě nefunguje - žádný způsob popsaný v dokumentaci joomly a phoca cart nefunguje...
07. led 2024 16:47 - 07. led 2024 16:54 #149057
Phoca Cart - www.phoca.cz/phocacart - e-shop, e-commerce
Phoca Gallery - www.phoca.cz/phocagallery - obrázková galerie
Phoca Download - www.phoca.cz/phocadownload - stahování souborů
Phoca Guestbook - www.phoca.cz/phocaguestbook - guestbook
Odpověď od H13

Admin
Ahoj, to bude asi problém, protože Joomla na to má statickou funkci, kde nemáme možnost zadat ordering:
components/com_phocacart/views/item/tmpl/default.php
Kdyby ta funkce měla navíc parametr pro řazení, opravili bychom špatné řazení z "a.ordering", na "g.ordering, a.ordering"
Například, pokud by měla řazení jako parameter:
administrator/components/com_fields/src/Helper/FieldsHelper.php
a pak:
v naší funkci bychom zavolali:
A řazení by bylo správně nejprve podle skupin a pak podle položek. Pokud chybí v řažení "g.ordering", pak Joomla ty cusom fieldy řadí nesmyslně. : - (
Jen pro test, pokud najedeš do:
administrator/components/com_fields/src/Model/FieldsModel.php
a změníš (opravdu jen pro test, protože by to mohlo ovlivnit ostatní části Joomly) na řádku cca 375 (jsem na Joomla 5, může to být trochu jiné u J4)
Z:
NA:
pak by ti to mělo fungovat OK
BTW: Dalším možným řešením by bylo, kdyby Joomla vylistovala group_ordering, pak by se s tím dalo také pracovat, ale bohužel to nelistuje. : - (
components/com_phocacart/views/item/tmpl/default.php
Code:
$fields = FieldsHelper::getFields('com_phocacart.phocacartitem', $x, true);
Kdyby ta funkce měla navíc parametr pro řazení, opravili bychom špatné řazení z "a.ordering", na "g.ordering, a.ordering"
Například, pokud by měla řazení jako parameter:
administrator/components/com_fields/src/Helper/FieldsHelper.php
Code:
public static function getFields(
$context,
$item = null,
$prepareValue = false,
array $valuesToOverride = null,
bool $includeSubformFields = false,
string $listOrdering ''
)
a pak:
Code:
if ($listOrdering != '') {
self::$fieldsCache->setState('list.ordering', $listOrdering);
}
v naší funkci bychom zavolali:
Code:
$fields = FieldsHelper::getFields('com_phocacart.phocacartitem', $x, true, null, false, 'g.ordering, a.ordering');
A řazení by bylo správně nejprve podle skupin a pak podle položek. Pokud chybí v řažení "g.ordering", pak Joomla ty cusom fieldy řadí nesmyslně. : - (
Jen pro test, pokud najedeš do:
administrator/components/com_fields/src/Model/FieldsModel.php
a změníš (opravdu jen pro test, protože by to mohlo ovlivnit ostatní části Joomly) na řádku cca 375 (jsem na Joomla 5, může to být trochu jiné u J4)
Z:
Code:
$listOrdering = $this->state->get('list.ordering', 'a.ordering');
Code:
$listOrdering = $this->state->get('list.ordering', 'g.ordering, a.ordering');
BTW: Dalším možným řešením by bylo, kdyby Joomla vylistovala group_ordering, pak by se s tím dalo také pracovat, ale bohužel to nelistuje. : - (
Phoca Cart - www.phoca.cz/phocacart - e-shop, e-commerce
Phoca Gallery - www.phoca.cz/phocagallery - obrázková galerie
Phoca Download - www.phoca.cz/phocadownload - stahování souborů
Phoca Guestbook - www.phoca.cz/phocaguestbook - guestbook
Poděkovali: Leoš
07. led 2024 17:55 #149058
Odpověď od Cony

Moderátor
Nejjednodušší je vzít si seznam polí v administraci a setřídit si jej manuálně podle skupin, tak aby pole z první skupiny byly na prvním místě, z druhé skupiny na druhém atd... Pak by to mělo zafungovat.
07. led 2024 18:30 #149059
Odpověď od Cony

Moderátor
Bude vyřešeno v příští BETA verzi.
Poděkovali: Leoš
07. led 2024 19:04 #149060
Samotné pole mám seřazená jak doporučuje Cony.
Pak jsem soubor FieldsModel.php změnil na původní a vše se vrátilo do původního špatného řazení.
To se někde ukládá? V db?
Ta oprava v další verzi - stačilo by vlastně vyřešit řazení Skupin polí - ty se zobrazují jako taby v kartě produktu, že?
Web mám zatím ve vývoji. Doporučujete už použít Joomlu 5 ?
Moc díky za pomoc
leoš
Odpověď od Leoš

Pokročilý uživatel
Toto jsem vyzkoušel a podařilo se mi řazením skupin polí správně seřadit taby na stránce produktu.Jen pro test, pokud najedeš do:
administrator/components/com_fields/src/Model/FieldsModel.php
a změníš (opravdu jen pro test, protože by to mohlo ovlivnit ostatní části Joomly) na řádku cca 375 (jsem na Joomla 5, může to být trochu jiné u J4)
Z:NA:Code:$listOrdering = $this->state->get('list.ordering', 'a.ordering');pak by ti to mělo fungovat OKCode:$listOrdering = $this->state->get('list.ordering', 'g.ordering, a.ordering');
Samotné pole mám seřazená jak doporučuje Cony.
Pak jsem soubor FieldsModel.php změnil na původní a vše se vrátilo do původního špatného řazení.
To se někde ukládá? V db?
Ta oprava v další verzi - stačilo by vlastně vyřešit řazení Skupin polí - ty se zobrazují jako taby v kartě produktu, že?
Web mám zatím ve vývoji. Doporučujete už použít Joomlu 5 ?
Moc díky za pomoc
leoš
07. led 2024 21:07 #149061
Ta oprava v další verzi bude prostě přepsání kompletních Joomla funkcí tak, aby fungovaly, jak mají.
Jestli je web ve vývoji, nebál bych se Joomla 5 verze. Každopádně, poslední Phoca Cart 5 Beta verze by měla fungovat i na 4.4.
Phoca Cart - www.phoca.cz/phocacart - e-shop, e-commerce
Phoca Gallery - www.phoca.cz/phocagallery - obrázková galerie
Phoca Download - www.phoca.cz/phocadownload - stahování souborů
Phoca Guestbook - www.phoca.cz/phocaguestbook - guestbook
Odpověď od H13

Admin
Ta oprava v další verzi - stačilo by vlastně vyřešit řazení Skupin polí - ty se zobrazují jako taby v kartě produktu, že?
Ta oprava v další verzi bude prostě přepsání kompletních Joomla funkcí tak, aby fungovaly, jak mají.
Jestli je web ve vývoji, nebál bych se Joomla 5 verze. Každopádně, poslední Phoca Cart 5 Beta verze by měla fungovat i na 4.4.
Phoca Cart - www.phoca.cz/phocacart - e-shop, e-commerce
Phoca Gallery - www.phoca.cz/phocagallery - obrázková galerie
Phoca Download - www.phoca.cz/phocadownload - stahování souborů
Phoca Guestbook - www.phoca.cz/phocaguestbook - guestbook
Poděkovali: Leoš
01. čvc 2025 14:21 #150440
Odpověď od Leoš

Pokročilý uživatel
Ahoj, tak jsem po čase testoval tuto funkci a stále i na nejnovější verzi Joomly a Phoca Cart stále nefunguje standartně řazení custom fields. Pouze s tou opravou kodu, kterou zde navrhoval Honza.
Nevíte, zda je to už nějak řešitelné?
Nevíte, zda je to už nějak řešitelné?