Php 使用WP REST API创建新用户并声明元对象
我在这里苦苦思索一个问题。我正在向Php 使用WP REST API创建新用户并声明元对象,php,json,wordpress,wordpress-rest-api,Php,Json,Wordpress,Wordpress Rest Api,我在这里苦苦思索一个问题。我正在向http://localhost/wp-json/v2/wp/users/使用此JSON数据: { "username" : "johndoe", "email": "jondoe@gmail.com", "password": "qwerty", "meta": { "icq": "11223344" } } 但是当我去查看结果时,meta对象是空的。我使用一个插件实现了这个目标,但是这个插件使用co
http://localhost/wp-json/v2/wp/users/
使用此JSON
数据:
{
"username" : "johndoe",
"email": "jondoe@gmail.com",
"password": "qwerty",
"meta": {
"icq": "11223344"
}
}
但是当我去查看结果时,meta
对象是空的。我使用一个插件实现了这个目标,但是这个插件使用cookie
进行身份验证,我还有另一个插件使用JWT
进行身份验证,所以我认为一个任务需要很多插件
有人有同样的问题吗?甚至在插件的官方文档中我也没有找到解决方案。只是在另一个堆栈溢出问题中找到了解决方案。使用函数
register\u meta()
:
现在,我可以使用以下命令发出请求:
{
"username" : "johndoe",
"email": "jondoe@gmail.com",
"password": "qwerty",
"meta": {
"icq": "11223344"
}
}
回应如下:
{
"id": 49,
"username": "johndoe",
"name": "johndoe",
"first_name": "",
"last_name": "",
"email": "johndoe@gmail.com",
"url": "",
"description": "",
"link": "http://localhost/author/johndoe/",
"locale": "en_US",
"nickname": "johndoe",
"slug": "johndoe",
"roles": [
"subscriber"
],
"registered_date": "2018-01-13T11:53:57+00:00",
"capabilities": {
"read": true,
"level_0": true,
"subscriber": true
},
"extra_capabilities": {
"subscriber": true
},
"avatar_urls": {
"24": "http://2.gravatar.com/avatar/29a1df4646cb3417c19994a59a3e022a?s=24&d=mm&r=g",
"48": "http://2.gravatar.com/avatar/29a1df4646cb3417c19994a59a3e022a?s=48&d=mm&r=g",
"96": "http://2.gravatar.com/avatar/29a1df4646cb3417c19994a59a3e022a?s=96&d=mm&r=g"
},
"meta": {
"icq": [
"11223344"
]
},
"_links": {
"self": [
{
"href": "http://localhost/wp-json/wp/v2/users/49"
}
],
"collection": [
{
"href": "http://localhost/wp-json/wp/v2/users"
}
]
}
}
如果我想在/wp admin/
中显示/编辑,我也可以使用此功能:
function more_contactmethods( $contactmethods ) {
$contactmethods['icq'] = 'ICQ';
return $contactmethods;
}
add_filter( 'user_contactmethods', 'more_contactmethods' );
function more_contactmethods( $contactmethods ) {
$contactmethods['icq'] = 'ICQ';
return $contactmethods;
}
add_filter( 'user_contactmethods', 'more_contactmethods' );