У меня есть переменная, которая содержит некоторое значение. Мне нужно получить значение этой переменной как в администраторе, так и на сайте. Где я должен разместить переменную и как я могу получить переменную в компонентах или везде?
источник
У меня есть переменная, которая содержит некоторое значение. Мне нужно получить значение этой переменной как в администраторе, так и на сайте. Где я должен разместить переменную и как я могу получить переменную в компонентах или везде?
Администратор и ваш интерфейсный сайт - это два разных сайта. Для обмена информацией между ними вы можете использовать какой-то постоянный механизм, как показано ниже.
1) Хранить информацию в таблицах базы данных и получать доступ с помощью Joomla Dbo.
https://docs.joomla.org/Accessing_the_database_using_JDatabase
2) Используйте куки для доступа к информации, установив куки на корневом уровне (/)
$cookies = JFactory::getApplication()->input->cookie;
$cookies->set($name, $value, $expire, '/');
3) Храните информацию во временном файле и обращайтесь к ней везде, где это необходимо.
https://docs.joomla.org/How_to_use_the_filesystem_package
Если вы хотите поделиться какой-либо информацией в одном приложении (на сайте или с администратором), вы можете установить для нее значение «Приложение» и получить доступ к нему на том же сайте по тому же запросу.
$app = JFactory::getApplication();
$app->set('some_variable', 'some_value');
...
$someValue = $app->get('some_variable');
Если вы хотите получить доступ к переменной через запросы, но в пределах одного приложения, вы можете использовать JSession
$session = JFactory::getSession();
$session->set('some_variable', "some_value");
...
echo $session->get('some_variable');