我已经用一些PHP来显示一个可重复的字段,但输出只显示了数组
任何想法都会受到很大的影响:
<?php
$repeatable = get_post_meta( get_the_ID(), 'ecpt_eventdaytime', true);
if( !empty($repeatable )) {
echo '<img src="/wp-content/uploads/2013/02/Time.gif">';
echo $repeatable ;
echo "<br><br>";
}
?>
答案 0 :(得分:1)
试试这样:
<?php if (have_posts()) :
while (have_posts()) : the_post();
$repeatable = get_post_meta( get_the_ID(), "ecpt_eventdaytime", true );
echo $repeatable ;
endwhile;
endif;
?>
或者,如果要在循环外显示自定义字段值,只需使用以下代码即可。问题是,你只需要ID。
<?php
global $wp_query;
$postid = $wp_query->post->ID;
echo get_post_meta($postid, 'ecpt_eventdaytime', true);
?>
答案 1 :(得分:0)
因为get_post_meta
返回数组需要使用循环
<?php $meta_values = get_post_meta($post_id, $key, $single); ?>
返回值
- 如果只设置了$ id,它将返回关联数组中的所有元值。
- 如果$ single设置为false或保留为空,则该函数返回一个包含指定键的所有值的数组。
- 如果$ single设置为true,则该函数返回指定键的第一个值(不在数组中)
答案 2 :(得分:0)
如果ecpt_eventdaytime
是数组,那么:
<?php
$repeatable = get_post_meta( get_the_ID(), 'ecpt_eventdaytime', true);
if( !empty($repeatable )) {
foreach($repeatable as $value) {
echo '<img src="/wp-content/uploads/2013/02/Time.gif">';
echo $value;
echo "<br><br>";
}
}
?>