0

繰り返し可能なフィールドを表示するために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>";
}
?> 
4

3 に答える 3

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);
?>
于 2013-02-16T16:59:18.613 に答える
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>";
    }
}
?> 
于 2013-02-17T00:01:05.590 に答える
0

配列を返すためget_post_meta、ループを使用する必要があります

ワードプレスより引用

<?php $meta_values = get_post_meta($post_id, $key, $single); ?>

戻り値

  • $id のみが設定されている場合、すべてのメタ値が連想配列で返されます。
  • $single が false に設定されているか、空白のままの場合、関数は指定されたキーのすべての値を含む配列を返します。
  • $single が true に設定されている場合、関数は指定されたキーの最初の値を返します (配列ではありません)。
于 2013-02-16T16:57:24.643 に答える