登录时的菜单不同

时间:2015-01-16 14:58:05

标签: wordpress plugins wordpress-plugin

所以我正在创建一个wordpress插件,但我遇到了问题。 我希望登录用户看到更多页面,然后是客人。

我认为有两个不同的菜单是最简单的,所以用户也可以自己编辑。

现在我遇到了一个问题。我创建了2个菜单(用户菜单和访客菜单) 访客菜单是我的主菜单。

现在我做了一些谷歌搜索并偶然发现了这段代码:

function customMenu(){
    if( is_user_logged_in() ) { 
        $args['menu'] = 'User-Menu';
    }
    return $args;
}
add_filter( 'wp_nav_menu_args', 'customMenu' );

不幸的是,这导致我的菜单完全消失。 代码有问题吗?我仔细检查了名字(在空间,首都等)并找不到任何东西。 我也尝试过菜单项id而不会工作。

此代码是否正确?如果是的话那里的错误是什么? 如果不是,从插件(而不是主题!)

执行此操作的正确方法是什么

1 个答案:

答案 0 :(得分:1)

过滤器获取现有变量并对其进行修改,因此它应该是函数的参数:

function customMenu($args){
    if( is_user_logged_in() ) { 
        $args['menu'] = 'User-Menu';
    }
    return $args;
}
add_filter( 'wp_nav_menu_args', 'customMenu' );