上下文:WordPress 5.4.5,Yoast 3.7.1如何更改WordPress頁面上的標題?
我是一個可以訪問客戶站點的插件開發人員。該網站安裝了Yoast 3.7.1,我想知道這是否意義重大,因爲無論我做什麼,我都無法更改404頁面的title
。
現在在StackOverflow的其他頁面上提出了類似的問題(例如here,here和here)。那些回答已經詢問header.php
是否正確地嵌入了對wp_title()
的呼叫。下面是在當前主題的header.php
在這一點上:
<title><?php wp_title('|', true, 'right'); ?></title>
有趣的是,在我的404.php
頁,wp_get_document_title()
告訴我,該文件標題爲Page not found - XXXX
即使上述wp_title
調用指定的分隔符,|
。 Yoast對標題的重寫已被禁用,所以我一點也不確定這個短跑是從哪裏來的。
我的插件執行REST調用並從外部提取內容以包含在頁面中。該內容的一部分是要在title
中使用的文本。
在以前的客戶網站,我已經能夠做到以下幾點:
add_filter('wp_title', 'change_404_title');
function change_404_title($title) {
if (is_404())
{
global $plugin_title;
if (!empty($plugin_title))
{
$title = $plugin_title;
}
}
return $title;
}
然而,在這個網站上,無法運作。
我都試過了,基於WordPress的版本中使用,掛鉤pre_get_document_title
過濾器,即
add_filter('pre_get_document_title', 'change_404_title');
但同樣無濟於事。我目前正在閱讀Yoast ...
你肯定這個'全球$ plugin_title優先級改變;'變量? –
完全。它被稱爲別的東西,但它絕對存在。 – bugmagnet