Ich habe eine Variable, die einen Wert enthält. Ich muss diesen Variablenwert sowohl im Administrator als auch auf der Site abrufen. Wo soll ich die Variable platzieren und wie kann ich die Variable in Komponenten oder überall abrufen?
quelle
Ich habe eine Variable, die einen Wert enthält. Ich muss diesen Variablenwert sowohl im Administrator als auch auf der Site abrufen. Wo soll ich die Variable platzieren und wie kann ich die Variable in Komponenten oder überall abrufen?
Der Administrator und Ihre Front-End-Site sind zwei verschiedene Sites. Um Informationen zwischen ihnen auszutauschen, können Sie einen dauerhaften Mechanismus wie den folgenden verwenden.
1) Speichern Sie Informationen in Datenbanktabellen und greifen Sie mit Joomla Dbo zu.
https://docs.joomla.org/Accessing_the_database_using_JDatabase
2) Verwenden Sie Cookies, um auf die Informationen zuzugreifen, indem Sie Cookies auf Root-Ebene setzen (/)
$cookies = JFactory::getApplication()->input->cookie;
$cookies->set($name, $value, $expire, '/');
3) Speichern Sie Informationen in einer temporären Datei und greifen Sie bei Bedarf darauf zu.
https://docs.joomla.org/How_to_use_the_filesystem_package
Wenn Sie Informationen in derselben Anwendung (entweder vor Ort oder vom Administrator) freigeben möchten, können Sie sie auf Anwendung setzen und in derselben Anforderung auf dieselbe Site zugreifen.
$app = JFactory::getApplication();
$app->set('some_variable', 'some_value');
...
$someValue = $app->get('some_variable');
Wenn Sie über die Anforderungen hinweg, jedoch innerhalb derselben Anwendung, auf eine Variable zugreifen möchten, können Sie JSession verwenden
$session = JFactory::getSession();
$session->set('some_variable', "some_value");
...
echo $session->get('some_variable');