如何从任何地方访问动物园组件数据


How to access zoo component data from anywhere

需要从任何地方访问zoo组件中的任何信息,如应用程序信息、应用程序模板中的元素。在这种情况下,我需要从我的Joomla3模板中访问这些信息,以制作动态自定义CSS。

在joomla中,你可以从任何地方获得模板名称,如下所示:

$app = JFactory::getApplication();
$template = $app->getTemplate();

我正在为动物园寻找类似的东西。

提前感谢!!

您可以通过调用:来完成此操作

    // make sure ZOO exists
    if (!JComponentHelper::getComponent('com_zoo', true)->enabled) {
        return;
    }
    // load ZOO config
    jimport('joomla.filesystem.file');
    if (!JFile::exists(JPATH_ADMINISTRATOR.'/components/com_zoo/config.php') || !JComponentHelper::getComponent('com_zoo', true)->enabled) {
        return;
    }
    require_once(JPATH_ADMINISTRATOR.'/components/com_zoo/config.php');
    // make sure App class exists
    if (!class_exists('App')) {
        return;
    }

    // Get the ZOO App instance
    $zoo = App::getInstance('zoo');

$zoo-var现在拥有zoo应用程序实例。从那里,您可以开始运行ZOO特定的任务和事件处理程序等。

这并不像它那样简单,因为它不是核心组件,但你可以获得元素数据,例如:

http://paulmason.name/item/yootheme-zoo-accessing-element-data-with-joomla-code

您总是可以编写代码从数据库表中获取json数据,并以这种方式访问它。