Wordpress - 可重复的自定义字段值输出为字符串而不是数组


Wordpress - Repeatable custom field values are outputted as a string and not an array

我有一个可重复的文本字段"show_on_pages",我创建了此内容类型的新帖子,并为"show_on_pages"添加了 3 个值。当我运行下面的代码时

$args = array('post_type' => 'my_post_type');
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post();
    $meta = get_post_meta(get_the_id(),'show_on_pages');
    print_r($meta);
endwhile;

它返回一个字符串而不是数组

数组 ( [0] => ["页 1","页 2","页 3"] )

如果我这样做

echo $meta[0];

页面将打印"["页1","页2","页3"]"

https://wordpress.org/plugins/custom-content-type-manager/

你的元被存储为 JSON。执行以下$pages=json_decode($meta[0]);$pages将是一个看起来像这样的数组(来自您的示例):

Array
(
    [0] => page1
    [1] => page2
    [2] => page3
)

有关json_decode函数的详细信息,请参阅此文档。