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 }

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...