我正在尝试使用在我的网站上注册的空格来更新用户元。我使用register_meta
挂钩来注册用户元。为了使用WordPress REST API更新用户,我使用了wp_remote_post
,但问题是当我尝试使用空格更新用户元数据时,它将作为响应添加为数组,然后它将添加为新的用户元数据。
例如,用户元数据的值是 - 社区测试
示例回复:
[meta] => Array
(
[agent_community] => Array
(
[0] => community
[1] => test
)
)
用于注册用户元的示例代码。
register_meta('user', 'agent_community', array(
"type" => "string",
"show_in_rest" => true
));
使用wp_remote_post更新
$update_data = array('email'=> 'test@mail.com', 'meta[agent_community]' => 'community test');
$args = array(
'headers' => array(
'Authorization' => 'Basic ' . base64_encode( 'username:password' ),
),
'body' => array_filter($update_data));
$update_url = 'https://test-url.com/wp-json/wp/v2/users/17';
$response = wp_remote_post( $update_url, $args);
有没有办法可以合并用户meta上的数组?
答案 0 :(得分:0)
implode()可能会对您有所帮助。您可以使用HTML实体更改空格。或者使用像urledncode() / urlendecode()
之类的函数或类似的东西。