微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php-用户权限-触发有关用户角色的代码(WordPress)

我正在用PHP开发自定义插件,因此现有的插件不可用.我要实现的是,我想为某些用户在帖子中显示不同的url.对于在wordpress注册用户,请与我联系并得到“批准”.我想要设置此额外的用户配置文件字段,以便可以在某种情况下使用此字段.因此,没有此字段或在此字段中没有正确值的访客和用户将获得url1,但获得其他URL2.

要求

>仅具有管理员角色的用户
>可以创建/编辑其他用户个人资料字段
>对于所有其他用户

我知道如何在wordpress添加额外的用户个人资料字段(请参阅下面的链接),但是我不知道如何将编辑该字段的操作限制为给定角色的用户,以及具有管理员角色的用户如何创建/编辑该文件全部用户.在我看来,我必须在wordpress仪表板/用户/新用户和/或仪表板/用户/作者&下添加代码.用户.

我做了一些谷歌搜索,发现很少网站有关如何添加额外的用户个人资料字段

> Adding and using custom user profile fields
> User Contact Fields in WordPress 2.9
> Add Data to User Field in WordPress

在我看来,Adding and using custom user profile fields几乎是我想要做的,但我仍然不知道如何管理“仅管理员”才能做到.

解决方法:

这个怎么样:

$ID="2";
$user = new WP_User($ID);
if ($user->wp_capabilities['administrator']==1) {
    //code here
}

看到这个链接user capabilities for wordpress

因此,通过以上内容以及您提供的链接,也许像这样:

function my_show_extra_profile_fields( $user ) {
    if ($user->wp_capabilities['administrator']!=1) {
        return false;
    } ?>
    <h3>Extra profile information</h3>

    <table class="form-table">

        <tr>
            <th><label for="twitter">Twitter</label></th>

            <td>
                <input type="text" name="twitter" id="twitter" value="<?PHP echo esc_attr( get_the_author_Meta( 'twitter', $user->ID ) ); ?>" class="regular-text" /><br />
                <span class="description">Please enter your Twitter username.</span>
            </td>
        </tr>

    </table>
<?PHP }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐