В ходе разработки очередной версии плагина для музыкальных сайтов на CMS Joomla столкнулся с необходимостью получения значений параметров плагина в AJAX-запросе, в файле ajax.php, то есть вне класса плагина.
Начало в обоих случаях будет одинаковым:
Код:
// Set flag that this is a parent file
define('_JEXEC', 1);
// no direct access
defined('_JEXEC') or die('Restricted access');
define( 'DS', DIRECTORY_SEPARATOR );
define('JPATH_BASE', dirname(__FILE__).DS.'..'.DS.'..'.DS.'..' );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
jimport('joomla.database.database');
jimport('joomla.database.table');
$mainframe = &JFactory::getApplication('site');
$mainframe->initialise();
$plugin = &JPluginHelper::getPlugin('content', 'mp3browser_pro');
define('_JEXEC', 1);
// no direct access
defined('_JEXEC') or die('Restricted access');
define( 'DS', DIRECTORY_SEPARATOR );
define('JPATH_BASE', dirname(__FILE__).DS.'..'.DS.'..'.DS.'..' );
require_once ( JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
jimport('joomla.database.database');
jimport('joomla.database.table');
$mainframe = &JFactory::getApplication('site');
$mainframe->initialise();
$plugin = &JPluginHelper::getPlugin('content', 'mp3browser_pro');
Далее для Joomla 1.5 эта задача оказалась тривиальной, используется класс JParameter:
Код:
$params = new JParameter($plugin->params);
$showDownload = $params->get('showDownload', '1');
$showDownload = $params->get('showDownload', '1');
А вот в Joomla 2.5-3.0 код будет иной:
Код:
$params = new JRegistry;
$params->loadString($plugin->params);
$showDownload = $params->get('showDownload', '1');
$params->loadString($plugin->params);
$showDownload = $params->get('showDownload', '1');
Пользуйтесь...
Comments
RSS feed for comments to this post