我已用名称保存了元密钥writer_meta_key 并希望在我的自定义函数页面上检索它。我可以在首页和单页上找到它,但在我的自定义函数页上它不起作用。这是我的密码。它只给出了标题,没有给出作者的名字。
$term       = get_queried_object();
$tax_object = get_taxonomy( $term->taxonomy );
$post_type_array = $tax_object->object_type;
$post_type  = $post_type_array[0];
$posts      = get_posts( array(
    \'post_type\' => $post_type,
    \'taxonomy\'  => $term->taxonomy,
    \'term\'      => $term->slug
) );
foreach ($posts as $post) {
    $id = get_the_ID();
    $custom_meta_writer = get_post_meta( $id, \'writer_meta_key\', true );       
    $writer = $custom_meta_writer[\'writer\'];
    echo $post->post_title; 
    echo $writer; 
}
 当我回音时
$id 错误显示为
Array
Array
Array
Array
 我哪里弄错了??
 
                    最合适的回答,由SO网友:Howdy_McGee 整理而成
                    WordPress使用global $post 跟踪用户正在查看的当前帖子。无论何时调用以下函数the_title() 或get_the_ID() 它使用的是global $post 获取数据。在您使用的代码段中get_posts() 通常不会覆盖global $post 对象,除非指定为setup_postdata( $post ).
最简单的方法是修改元数据行并使用:
$custom_meta_writer = get_post_meta( $post->ID, \'writer_meta_key\', true );