La comodità dei campi personalizzati è quella di poterli inserire nell'override del template di altri moduli e componenti. Il seguente codice può essere inserito ad esempio in un modulo in cui abbiamo l'array $item
$item è l'array dell'elemento, che può essere un articolo, come in questo caso, o un altro elemento. Per ottenere $item->jcfields di un contatto è sufficiente cambiare il primo parametro "com_content.article" con "com_content.contact"
JLoader::register('FieldsHelper', JPATH_ADMINISTRATOR . '/components/com_fields/helpers/fields.php');
$item->jcfields = FieldsHelper::getFields('com_content.article', $item, true); $fields = []; //ciclo dell'intero array di campi persinalizzati
foreach($item->jcfields as $jcfield) { $fields[$jcfield->name] = $jcfield; } //singolo campo (al posto di field_name sostituire con l'alias del nome del campo) echo $field_value = $fields['field_name']->rawvalue;
Commenti offerti da CComment