[英]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.