Si je veux récupérer un seul paramètre d'un composant, le code est assez simple, exemple:
$app = JFactory::getApplication();
$params = $app->getParams('com_content');
echo $params->get('num_leading_articles');
Cela fonctionne si seulement si vous connaissez le nom exact du paramètre que vous voulez récupérer. Y a-t-il un moyen d'obtenir TOUS les params à la place? Parfois, vous ne connaissez peut-être pas tous les paramètres d'un composant. Comment pouvez-vous obtenir une liste de ces paramètres si c'est le cas?
Je suis sur Joomla! 3.4
Vous pouvez simplement utiliser les éléments suivants:
$componentParams= JComponentHelper::getParams('com_content');
var_dump($componentParams);
Cela fournira un objet comme ceci:
object(Joomla\Registry\Registry)[175]
protected 'data' =>
object(stdClass)[503]
public 'article_layout' => string '_:default' (length=9)
public 'show_title' => string '1' (length=1)
public 'link_titles' => string '1' (length=1)
etc....
Puisqu'il s'agit d'un objet protégé, vous devrez bien sûr utiliser la méthode get()
de Joomla pour y accéder, comme suit:
$foo = $componentParams->get('show_title');
Si vous souhaitez obtenir les paramètres sans connaître leur nom ou sans utiliser get()
, vous pouvez utiliser une boucle foreach
comme suit:
$componentParams = JComponentHelper::getParams('com_content');
foreach ($componentParams as $key => $val)
{
echo $key . ' - ' . $val;
}
J'espère que cela t'aides