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

How to access zoo component data from anywhere

需要从任何地方访问 zoo 组件的任何信息,例如应用信息、应用模板中的元素。在这种情况下,我需要从我的 Joomla 3 模板访问此信息以创建动态自定义 CSS.

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

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

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

提前致谢!!

它不是那么简单,因为它不是核心组件,但您可以获得元素数据,例如:

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

您始终可以编写代码从他们的数据库表中获取 json 数据并以这种方式访问​​它。

您可以通过调用以下方式执行此操作:

    // 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 变量现在包含 ZOO 应用程序实例。从那里您可以开始 运行 ZOO 特定任务和 运行 事件处理程序等