joomla API:头部数据被覆盖

时间:2011-04-24 10:18:47

标签: api frameworks joomla joomla1.5

我使用以下PHP代码在文章中设置页面标题和描述元标记

$doc =& JFactory::getDocument();
$options = $doc->getHeadData();
$options['metaTags']['standard']['description'] = "test description";
$options['title'] = "my title";
echo '<pre>'; print_r($options); echo '</pre>';
$doc->setHeadData($options);

感谢我的print_r我可以看到它们已正确设置。然而,在setHeadData之后,头部数据被Joomla覆盖,这就是我在页面中得到的结果:
[1]在我之后添加了另一个空描述元标记(这是一个问题,因为我不知道搜索引擎是处理第一个还是第二个)。
[2] <title>标签只会被文章标题值覆盖。

[Q1]我能做些什么来阻止Joomla覆盖我设置的头部数据? (也许在插件或模块中插入我的代码可以让我在joomla添加自己的代码后添加数据?)

1 个答案:

答案 0 :(得分:2)

您的代码需要位于流程后期执行的插件中。以下是框架自动触发的所有全局系统事件的文档 -

http://docs.joomla.org/Reference:System_Events_for_Plugin_System

以下是有关API执行顺序的文档 -

http://docs.joomla.org/API_Execution_Order