对特定用户角色隐藏内容和功能

时间:2016-03-22 作者:Dennis

我正在研究一个主题,我想知道如何通过PHP对某些用户角色隐藏特定的内容和功能。我正在处理许多预构建的函数,所以我想要的是一些代码片段,我可以围绕我想要的函数进行包装,这样它就可以显示给特定的用户角色。主题将具有自定义用户角色和自定义帖子类型。我是wordpress开发的新手,所以这是我的第一个主题,我认为这是问这个问题的最好地方。

1 个回复
最合适的回答,由SO网友:nonsensecreativity 整理而成

如果你是WordPress开发的新手,我建议你使用这个插件https://wordpress.org/plugins/members/, 有一个选项允许您根据用户角色禁用内容,您还可以使用插件轻松创建角色。

至于你的问题:如果你不想让拥有订阅者角色的用户查看内容,我正在使用twentysixteen 以主题为例

// Start the loop.

if( have_post() ) :
    while ( have_posts() ) : the_post();

        /*
         * Include the Post-Format-specific template for the content.
         * If you want to override this in a child theme, then include a file
         * called content-___.php (where ___ is the Post Format name) and that will be used instead.
         */
        if( current_user_can( \'edit_posts\' ) ) :
            // can accessed by contributor and the others but not subscriber
            get_template_part( \'template-parts/content\', get_post_format() );

        endif;



    // End the loop.
    endwhile;
endif;
“edit\\u posts”角色是订阅者没有的功能,您可以在此处查看有关角色和功能图表的更多信息https://codex.wordpress.org/Roles_and_Capabilities#Capability_vs._Role_Table

相关推荐

Admin Theme customization

我遵循wordpress codex网站上关于通过插件创建管理主题的说明。我激活了插件,但我的样式表没有包含在<head>.. 这是我的代码:add_action( \'admin_init\', \'kd_plugin_admin_init\' ); add_action( \'admin_menu\', \'kd_plugin_admin_menu\' ); function kd_plugin_admin_init() { /* Register