• 解決済 it-plus

    (@it-plus)


    Custom Field TemplateとCustom Post Templatesを使用して、カスタムした記事ページにカスタムフィールドの内容を表示したいのですが、色々調べたら<?php echo post_custom($key); ?>で表示出来るようですがなぜか表示出来ません。
    実際のソースは下記です。

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    <?php echo post_custom('画像'); ?>
    <?php endwhile; endif;?>

    この項目は、テキストエリアにメディア追加の画像追加から画像をメディアにアップロードしてテキストエリアにそのソース(<img src=”~~~”>)を挿入しています。
    画像という項目も間違っていないのでpost_customで表示できるはずですがどうにも表示されなくて困っております。

    ちなみに、the_metaですべての項目と値は表示できるので値がそのページに受け渡って無いという事もないはずなんですが…。

    何か原因がお分かりでしたらご教授の程、宜しくお願い申し上げます。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • 未確認です。

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    <?php echo get_post_meta($post->ID, '画像', true); ?>
    <?php endwhile; endif;?>
    トピック投稿者 it-plus

    (@it-plus)

    返信ありがとうございます。

    教えて頂きましたコードを挿入しましたが、何も表示されませんでした。

    何か原因が分かりますでしょうか?

    状況が把握できてなくて申し訳ない。

    • キーは存在しているのか。
    • 条件式に通っているのか。
    • キーに値が格納されているのか。

    現在の投稿からすべてのカスタムフィールドのキー名を表示

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    <?php
    // 現在の投稿からすべてのカスタムフィールドのキーの配列を表示
    $custom_field_keys = get_post_custom_keys();
    foreach ( $custom_field_keys as $key => $value ) {
      $valuet = trim($value);
      if ( '_' == $valuet{0} ) continue;
      echo $key . " => " . $value . "<br />";
    }
    ?>
    <?php endwhile; endif;?>

    指定されたキーに値が格納されているのか。
    何も表示されていない時は、まず動いてない。

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    <?php
    if (get_post_meta($post->ID, '画像', true) !== "") {
      echo get_post_meta($post->ID, '画像', true);
    } else {
      echo "指定されたキーに値が格納されていません";
    }
    ?>
    <?php endwhile; endif;?>
    トピック投稿者 it-plus

    (@it-plus)

    ご返信ありがとうございます。

    ご教授頂きましたコードを挿入したところ文字化けしまして、
    “指定されたキーに値が格納されていません”の部分が文字化けしたようでなので
    エンコードを確認したところ「シフトJIS」だったようです。
    「UTF-8」に直したところ<?php echo post_custom('画像'); ?>での表示も可能となりました。

    おそらく’画像’の部分が文字化けしたためにキーが取得出来ずそれに格納している値を表示できなかったんだと思います。

    初歩的なミスでお手間を取らせてしまいまして大変申し訳ございません。
    しかしながら、c2nprds様のご教授がなければこのミスに気づく事すら出来なかったと思います。

    誠にありがとうございました。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「が表示出来ない。」には新たに返信することはできません。