我有一个wordpress插件,它使用add_filter来更改页面的 Headers . 在一个空的wordpress网站,它只是工作正常 . 但我有两个其他网站,我想使用我的插件,但由于某种原因,它根本不起作用 .
function hooks() {
if(get_query_var('car_id') != "") {
add_action('wp_head', 'fillHead');
add_filter('document_title_parts', 'addTitle', PHP_INT_MAX);
}
add_shortcode('auto', 'showCar');
}
我试图停用一些插件和主题等 . 但似乎没有任何工作 . 我不知道 Headers 的位置在哪里 . 有没有办法看到wp_head()中发生了什么,或者为什么这个代码没有在正确的时间执行?
EDIT 在header.php中有一些代码可以生成 Headers . 如果我删除这部分它仍然无法正常工作 . 它会将网址作为 Headers . 但是我如何在我的插件中否决这个标签呢?
2 回答
您的插件代码很可能会在主题代码之前运行,并且会在将任何内容添加到挂钩之前运行 . 您将需要处理文件包含的代码到所有插件加载后运行的其他钩子,如after_setup_theme
This是wordpress加载序列?
所以我终于找到了让它发挥作用的方法 . 在主题中有一个header-details.php . 我删除了标签之间的所有内容,只添加了以下内容:
然后到插件我使用过滤器wp_title而不是document_title_parts .
它现在有效,但我仍然需要在其他网站上进行测试