表wp_usermeta中的字段wp_Capability的含义是什么

时间:2013-06-19 作者:diligent

我是wordpress的新手,在table中wp_usermeta 我注意到我们吵架了

meta_key                meta_value
wp_capabilities       a:1:{s:13:"administrator";b:1;}
首先,meta\\u值的含义是什么a:1:{s:13:"administrator";b:1;} , 我在哪里可以找到该字段的确切解释?或者我知道关于role user Capabilities , 我在哪里可以得到这些信息。

其次,我如何通过wordpress\'s API 按代码

提前感谢。

5 个回复
最合适的回答,由SO网友:Pontus Abrahamsson 整理而成

wp\\U功能将值保存为系列化数组,您可以在php中尝试,或者在以下示例中尝试:http://blog.tanist.co.uk/files/unserialize/.

代码:

a:1:{s:13:"administrator";b:1;}
是:

Array
(
   [administrator] => 1
)
意味着用户是管理员。

可以通过运行函数向数据库中添加新角色add_role, 只运行它once!

SO网友:random_user_name

除了@Krysiek的回答之外,您应该知道存储在元表中的数据,包括用户元数据,通常是序列化的。如果您想知道数据实际代表什么,可以使用PHP函数unserialize 来确定它的价值。例如,运行值a:1:{s:13:"administrator";b:1;} 通过取消序列化(然后var_dump-结果)产品:

array(1) {
    ["administrator"]=>
    bool(true)
}
options 表以及post_meta 桌子

但是,应避免直接写入这些表。WordPress函数允许您存储和访问有关用户的数据。例如,要从用户元表读取数据,应该使用get_user_meta 要写作,你应该使用WordPress函数update_user_meta. post\\u meta和options表也有类似的函数。

SO网友:Krzysiek Dróżdż

meta_value 是存储元字段值的列。每个meta\\u字段都包含键和值。

我认为这篇关于角色和能力的Codex文章应该可以帮助您:http://codex.wordpress.org/Roles_and_Capabilities

要添加自定义角色,应使用add_role 功能(http://codex.wordpress.org/Function_Reference/add_role)

以及Codex提供的使用示例:

$result = add_role(\'basic_contributor\', \'Basic Contributor\', array(
    \'read\' => true, // True allows that capability
    \'edit_posts\' => true,
    \'delete_posts\' => false, // Use false to explicitly deny
));
if (null !== $result) {
    echo \'Yay!  New role created!\';
} else {
    echo \'Oh... the basic_contributor role already exists.\';
}

SO网友:Dave Scotese

表wp\\u usermeta中的键“wp\\u capabilities”标识了一个数组的序列化表示形式,该数组标识了用户的角色以及使用$user->add_cap(\'my_capability\');. 谢谢spaul!

WordPress团队在意识到“功能”实际上是为填补特定角色的用户组合在一起的东西之前,将字段命名为[前缀]\\u功能。将密钥的值从[前缀]\\u功能更改为[前缀]\\u角色将破坏太多的第三方插件,并且需要对WordPress本身进行大量重构。

因此,可以肯定地说,wp\\u capabilities usermeta键拥有用户角色,如果没有那么多有用的软件希望它使用旧名称,那么它将被命名为wp\\u roles。

因为这一事实对新的WordPress爱好者非常有用,所以我建议所有对WordPress角色(或功能)有意见的人都要非常坦率地知道,用户角色列在一个数组中,该数组在[前缀]\\u capabilities键下的usermeta表中序列化。

SO网友:ksr89

在里面wp_usermeta 表我们可以在创建新用户或更新现有用户的配置文件时保存与用户相关的额外信息。

在里面wp_usermeta 表中有一个列名meta_key 在那里我们可以保存价值,通过它我们可以getupdate 例如,该字段的值

角色就像给用户的访问策略一样,用户在网站上只有那么多的访问权限。您可以添加、删除角色。

功能就像添加功能或限制角色。例如,有两个角色“黄金角色”、“白金角色”。我们限制“黄金角色”他只能添加帖子,但不能发布帖子,但我们限制“白金角色”他可以发布帖子。我们还可以添加或删除与角色相关的功能。您还可以对帖子的元数据库添加限制。

有关更多信息,请参见Role and Capabilities

您可以通过以下方式添加角色并设置其功能:wordpress API 或者您可以使用插件来完成此操作。在我看来Advanced Access Manager 是处理角色和功能的最佳插件。

结束

相关推荐

PHP致命错误:无法为wp-includes/capabilities.php中的非对象调用重载函数

我在apache日志中遇到了太多以下错误。PHP Fatal error: Cannot call overloaded function for non-object in wp-includes/capabilities.php on line 1187这是函数current\\u user\\u can($capability)的内部,第1187行如下所示:$current_user = wp_get_current_user(); 我不知道问题出在哪里?