web-dev-qa-db-fra.com

Obtenir les paramètres d'un modèle spécifique dans un fichier de bibliothèque

Est-il possible d'obtenir des paramètres pour un modèle spécifique (pas nécessairement le modèle actif)?

Tout avis sera le bienvenu.

// edit Le modèle NE SERA PAS actif, je dois donc obtenir les paramètres du modèle sans:

$app = JFactory::getApplication('site');
$template = $app->getTemplate(true);
$param = $template->params->get('paramName', defaultValue);
5
Anriëtte Myburgh

Vous pouvez le faire comme ça:

$db = JFactory::getDbo();
$query = $db->getQuery(true);
$query  ->select('params')
        ->from('#__template_styles')
        ->where('`template` = ' . $db->q('beez3')) // Just replace 'beez3' with with the name of your template
        ->where('client_id = 0'); // client_id = 0 for SITE and client_id = 1 for ADMIN templates
$db->setQuery($query);
$params = json_decode($db->loadResult());
echo $params->wrapperSmall; // replace wrapperSmall with desired parameter key

J'espère que ça aide.

2
Farahmand

Pour obtenir les paramètres de modèle actifs, vous pouvez utiliser les éléments suivants:

Code par @GDP ( source )

$template = JFactory::getApplication()->getTemplate(true);
$params   = $template->params;
$variable = $params->get('variable');

Cependant, je ne recommanderais pas d'obtenir des paramètres à partir d'un modèle non actif. Au lieu de cela, je vous suggère de définir des valeurs par défaut, par exemple.

$variable = $params->get('colour', '#FFFFFF');
3
Lodder