如何将自定义字段设置为只读或按用户角色禁用?

时间:2020-03-01 作者:sofdesigne

我正在尝试为函数中的特定用户角色创建一个简单的自定义字段(不带插件)只读或禁用。php,这可能吗?

谢谢

1 个回复
SO网友:Sally CJ

首先,可以按如下方式获取当前用户对象:$user = wp_get_current_user();.

这个$user 对象将具有roles 属性,因此可以执行以下操作来检查当前用户是否具有特定角色:in_array( \'role_slug\', $user->roles ).

然后在HTML字段中,可以使用disabled()readonly() 用于轻松添加disabledreadonly 属性:

<?php
// Get the current user object.
$user = wp_get_current_user();

// Check if the associated user has a specific role.
$has_role = in_array( \'administrator\', $user->roles );
?>
<input name="some_name" <?php disabled( true, ! $has_role ); ?> />
<input name="some_name2" <?php readonly( true, ! $has_role ); ?> />
如果当前用户没有该角色,则上述操作将使该字段处于禁用/只读状态administrator (注意! $has_role).