Bonjour à tous,
Bon après quelques années d'overrides et d'alternate layouts, je saute le pas : je suis en train de coder mon premier plugin
(en fait, c'est un plugin qui va lire des custom fields pour les transformer en Meta Data dans le <head> du site)
Ma question est plutôt PHP en fait.
Le custom field en question peut contenir plusieurs valeurs qui sont des IDs d'articles liés (le custom field "Articles Field" de Regular Labs, pour ceux que ça intéresse).
S'il n'y a qu'un seul article lié, ça marche (j'affiche bien le Titre de l'article sur base de l'ID).
Mais dès que j'en ai plusieurs, je ne sais pas trop comment faire la boucle pour rendre tous les Titres d'articles.
Voici mon bout de code actuel :
Merci
Bon après quelques années d'overrides et d'alternate layouts, je saute le pas : je suis en train de coder mon premier plugin
(en fait, c'est un plugin qui va lire des custom fields pour les transformer en Meta Data dans le <head> du site)
Ma question est plutôt PHP en fait.
Le custom field en question peut contenir plusieurs valeurs qui sont des IDs d'articles liés (le custom field "Articles Field" de Regular Labs, pour ceux que ça intéresse).
S'il n'y a qu'un seul article lié, ça marche (j'affiche bien le Titre de l'article sur base de l'ID).
Mais dès que j'en ai plusieurs, je ne sais pas trop comment faire la boucle pour rendre tous les Titres d'articles.
Voici mon bout de code actuel :
Code PHP:
//!!! works if the Custom Field only contains one Article ID (like 8) but not if there are multiple Article IDs (like 8,9)
//!!! therefore, I made a quick temporary workaround that only takes the first value... but all have to be taken into account
//!!! also, here made it only for Custom Field 24 but we need to concatenate Custom Fields 24 and 25
$article = JTable::getInstance("content");
$articleids= explode( ',', $row->jcfields[24]->rawvalue );
$article->load($articleids[0]);
$dublincoremeta ='<meta name="DC.creator" content="' . $article->get("title") .'" />';
$document->addCustomTag($dublincoremeta);
// !!! this is a test to loop through articles, but it breaks
//$articleids = $row->jcfields[24]->rawvalue;
//for each ($articleids as $value) {
// $article = JTable::getInstance("content");
// $article->load($value);
// $articletitles = $article->get("title");
//}
//$dublincoremeta ='<meta name="DC.creator" content="' . $articletitles .'" />';
//$document->addCustomTag($dublincoremeta);
Commentaire