[英]joomla API: head data overwritten
我使用下面的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添加自己的数据后添加数据?)
您的代码需要位于流程后期执行的插件中。 以下是框架自动触发的所有全局系统事件的文档 -
http://docs.joomla.org/Reference:System_Events_for_Plugin_System
以下是有关API执行顺序的文档 -
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.