我正在尝试更改自定义页面的标题,我可以使用此功能执行此操作:
add_filter(\'the_title\',\'change_title\');
function change_title($data){
global $post;
return \'Page ID \' . $post->ID;
}
我正在调用筛选器:
apply_filters(\'the_title\', $response->data->name);
这很好,但当我尝试使用
$data
返回默认名称的页面标题。我的意思是,如果将过滤器更改为:
add_filter(\'the_title\',\'change_title\');
function change_title($data){
global $post;
return \'Page ID \' . $data;
}
返回默认标题的标题。为什么我不能设置动态标题?而且我很确定我在传递一根弦。(顺便说一句,我用的是Hestia主题)
SO网友:Howdy_McGee
也许您可以将更高的优先级添加到过滤器中,作为挂钩的第三个参数:
/**
* Modify the data
*
* @param String $data
*
* @return String $data
*/
function change_title( $data ) {
global $post;
return \'Page ID \' . $data;
}
add_filter( \'the_title\', \'change_title\', 15 );
默认优先级为10,因此可能是稍后的筛选器正在覆盖您拥有的内容。