Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何排除标题过滤器wordpress中的菜单项_Php_Wordpress - Fatal编程技术网

Php 如何排除标题过滤器wordpress中的菜单项

Php 如何排除标题过滤器wordpress中的菜单项,php,wordpress,Php,Wordpress,我很难从功能中排除菜单项,我必须修改帖子标题 我想修改单篇文章标题以及侧栏中的文章,在_循环()中使用可以很好地工作,但它也排除了我的侧栏/存档文章标题、面包屑等 有没有办法检测菜单项并排除它们?然后在循环()中使用 这是我的密码: function update_the_title( $title, $post_id ) { if (not menu items) { return $title + 'some string'; } else {

我很难从
功能中排除菜单项,我必须修改帖子标题

我想修改单篇文章标题以及侧栏中的文章,在_循环()中使用
可以很好地工作,但它也排除了我的侧栏/存档文章标题、面包屑等

有没有办法检测菜单项并排除它们?然后在循环()中使用

这是我的密码:

function update_the_title( $title, $post_id ) {
    if (not menu items) {
        return $title + 'some string';
    } else {
        return $title;
    }
}

add_filter( 'the_title', 'update_the_title');

谢谢

你必须这样尝试

未测试

function update_the_title( $title, $post_id ) {
    $menuLocations = get_nav_menu_locations(); 

    $menuID = $menuLocations['primary']; // Get the *primary* menu ID

    $primaryNav = wp_get_nav_menu_items($menuID); 

    if (array_search($post_id, array_column($primaryNav, 'ID'))) {
        return $title + 'some string';
    } else {
        return $title;
    }
}

add_filter( 'the_title', 'update_the_title', 10, 2);

我的“解决方案”是添加我自己的导航助行器,并在标题中添加一个过滤器,以恢复主过滤器的效果。又是什么问题?您想要修改标题的页面或小部件是什么?我已经明确提到,我想要修改除菜单标题之外的所有标题。太棒了,不回答的人至少应该评论下一个标题的原因。这与循环()中的
相同。