Joomla « Доступ к переменным Joomla из стороннего приложения
1 ответов
можно попробывать сделать как сделал я )
делал для вордпресса и оскоммерса...
написал внешний скрипт на пхп и просто подключил туда функции из ВП и оскоммерса соответсвенно ) и уже на их основе писал приложение полностью совместимое с этими системами .
у многих опенсурс фри цмс ) есть что то типа function.php ) его и подключаем и юзаем.
Решение удалось найти показывая свое приложение в iframe и передавая Joomla session id через УРЛ. Для показа в iframe можно использовать Wrapper component.
// получить session id
$session =& JFactory::getSession();
$sid = $session->getId();
// передать его через УРЛ
src="<?php echo $this->wrapper->url . "?sessionid=$sid"; ?>"
В своем приложении можно использовать что-то такое:
$jconn=db_connect();
// Get sessionvariable of Joomla-Session over the URL which passes the Joomla-Wrapper to the iframe
$sessionid = @$_GET["sessionid"];
//Get the values out of the jos-session-table:
$rs=db_query("select * from `jos_session` where session_id='$sessionid'",$jconn);
$data=db_fetch_array($rs);
if($data)
{
$_SESSION["UserID"] = $data["username"];
$_SESSION["GroupID"] = $data["usertype"];
}
Подробнее вот здесь .
А сторонее приложение каким образом обращается к файлу в котором необходимо получить переменые Joomla?
Можно сделать так: в папке с Вашим шаблоном создаём файл допустим test.php, далее в файле который отправляет запрос, адрес к файлу прописываем следующий: www.вашсайт.ru?tmpl=test
и если допустим Вам нужна какая либо информация о пользователе тогда используем JFactory::getUser и т.д
и echо'м выводим нужную информацию
Фишка в том что обращаясь к файлу по адресу www.вашсайт.ru?tmpl=test подругажается фреймворк Joomla что и позволит использовать его для передачи данных