使用筛选器更改标题不使用参数

时间:2019-09-18 作者:Mustafa

我正在尝试更改自定义页面的标题,我可以使用此功能执行此操作:

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主题)

1 个回复
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,因此可能是稍后的筛选器正在覆盖您拥有的内容。

相关推荐

apply_filters to $GLOBALS

我正在使用Pootle页面构建插件构建一个单页网站。使用get\\u page,我在1页上显示每个单独的页面。为了针对Pootle页面生成器内容,我使用以下代码:$content = $GLOBALS[\'Pootle_Page_Builder_Render_Layout\']->panels_render( $page_data->ID ); 当我尝试实现一个像旋转木马这样的插件时,我需要使用一个短代码,但短代码不起作用。为了使短代码有效,我需要使用apply_filters(\'