我已用名称保存了元密钥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 );