file Vykreslení vlastních polí (Custom Fields) v šabloně

  • Danko Velovský (Duvel)
  • Avatar uživatele Danko Velovský (Duvel) Autor tématu
  • Offline
  • Pokročilý
  • Pokročilý
Více
06. srp 2020 07:28 #503 od Danko Velovský (Duvel)
Vykreslení vlastních polí (Custom Fields) v šabloně vytvořil uživatel Danko Velovský (Duvel)
V Joomla můžete natáhnout vlastní pole a vykreslovat různými způsoby:

Vykreslení vlastních polí (custom fields) - varianta 1:
$mojeFields = array();
foreach($this->item->jcfields as $field) {
    $mojeFields[$field->name] = $field->value;
    $mojeFields_lbl[$field->name] = $field->label;
}

echo $mojeFields['kraj'];

Vykreslení vlastních polí (custom fields) - varianta 2:
foreach($this->item->jcfields as $jcfield) {
    $this->item->jcFields[$jcfield->name] = $jcfield;
}
echo($this->item->jcFields['kraj']->value);

Postup naleznete i na stránkách Joomla:
https://docs.joomla.org/J3.x:Adding_custom_fields/Overrides/en

Prosím Přihlásit se nebo Vytvořit účet připojte se ke konverzaci.

Více
06. srp 2020 07:39 #504 od Oko (Oko)
Ahoj, já osobně pro vykreslování používám tento Helper:
https://github.com/martyf/joomla-item-helper
a tady je to ještě popsáno taky:
https://www.martyfriedel.com/blog/how-to-easily-access-to-custom-fields-in-joomla
Nasazení je velice jednoduché a pak už voláte jen funkce:

getFieldGroupId
getFieldLabel
getFieldOptions
getFieldValue
getFieldRawValue

Zobrazení pole pak vypadá v layoutu takto:
echo ItemHelper::getFieldValue($this->item, 'my-field-name');
kdy vám je vrácena hodnota pole "my-field-name"

nebo:
echo ItemHelper::getFieldLabel($this->item, 'my-field-name');
a je vám vrácen label.

Takto můžete používat funkce podle potřeby toho co potřebujete vypsat.

Prosím Přihlásit se nebo Vytvořit účet připojte se ke konverzaci.

Přihlášení