Utilisation de la variable globale dans Joomla

8

J'ai une variable qui détient une certaine valeur. J'ai besoin d'obtenir cette valeur variable à la fois dans l'administrateur et sur le site. Où dois-je placer la variable et comment puis-je obtenir la variable dans les composants ou partout?

aish
la source

Réponses:

9

L'administrateur et votre site frontal sont deux sites différents. Pour partager des informations entre eux, vous pouvez utiliser un mécanisme persistant comme ci-dessous.

1) Stockez les informations dans les tables de base de données et accédez-y à l'aide de Joomla Dbo.

https://docs.joomla.org/Accessing_the_database_using_JDatabase

2) Utilisez des cookies pour accéder aux informations en définissant des cookies au niveau racine (/)

$cookies = JFactory::getApplication()->input->cookie;
$cookies->set($name, $value, $expire, '/');

3) Stockez les informations dans un fichier temporaire et accédez-y où vous le souhaitez.

https://docs.joomla.org/How_to_use_the_filesystem_package

Notes complémentaires:

Si vous souhaitez partager des informations au sein d'une même application (sur site ou administrateur), vous pouvez la définir sur Application et y accéder sur le même site dans la même demande.

$app = JFactory::getApplication();
$app->set('some_variable', 'some_value');
...
$someValue = $app->get('some_variable');

Si vous souhaitez accéder à une variable parmi les demandes mais au sein de la même application, vous pouvez utiliser JSession

$session = JFactory::getSession();
$session->set('some_variable', "some_value");
...
echo $session->get('some_variable');
Nagarjun
la source
1
Selon le type de valeur, il peut s'agir d'un paramètre d'extension qui est stocké dans la base de données. De cette façon, la sauvegarde / interrogation de la base de données est prise en charge par Joomla :)
Bakual