检索USER_META并复制到POST_META

时间:2013-11-08 作者:Paul Aston

由于geo mashup只检索post\\u meta,因此我尝试将geo\\u位置从自定义注册字段复制到包含地图的页面的meta中。

我使用的代码是:

<?php 
$blogusers = get_users_of_blog();
if ($blogusers) {
foreach ($blogusers as $bloguser) {
$user = get_userdata($bloguser->user_id);
$user_location = the_author_meta(\'geo_address\', $user->ID);
 add_post_meta( 463, \'geo_move\', $user_location); 

}}
?>
这将创建post meta,但该值写为空白,因此看起来$user\\u location不起作用。有什么建议吗?

1 个回复
最合适的回答,由SO网友:gmazzap 整理而成

首先get_users_of_blog 已弃用,因此您应该使用get_users 相反,或运行WP_User_Query.

之后,the_author_meta echo 元值,不返回任何内容。到return 您应该使用的元get_the_author_meta()

$blogusers = get_users( $args ); // for args see codex

if ($blogusers) {
  foreach ( $blogusers as $bloguser ) {
    $user_location = get_the_author_meta(\'geo_address\', $bloguser->ID );
    $has_meta = get_post_meta(463, \'geo_move\', true);
    if ($user_location && ! $has_meta) add_post_meta( 463, \'geo_move\', $user_location);
  }
}

结束

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在