• 下記コードにclass名を付加したいのですが、どのように記述すれば良いか、分からず、困り果てております。。どなたか教えて頂けないでしょうか。
    大変恐縮ですが、どうか宜しくお願い致します。

    <?php
    $custom_fields = get_post_custom();
    $my_custom_field = $custom_fields['amazon'];
    foreach ( $my_custom_field as $key => $value )
    echo $value . "";
    ?>

    補足
    質問内容が分かりづらいかと思いますので、補足致します。
    カスタムフィールドで、1つの名前で複数の値を使用する予定なのですが、吐き出される物に「amazon」というクラス名をつけれれば良いのですが、記述方法が分からず、苦悩しております。どなたかお力添えをお願い致します。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • モデレーター Takayuki Miyoshi

    (@takayukister)

    ryouma さん、トピックのタイトルがありませんが、付け忘れでしょうか。もしタイトルを付けたはずなのに消えてしまったというようなことがありましたら、お手数ですがどのようなタイトルを付けたかお知らせください。

    それから、「【重要】 お読みください」はフォーラム管理上のお知らせを掲載するカテゴリーですので質問のトピックには使用されないようお願いします。質問のトピックを作成される際には最もあてはまるカテゴリーを選択してください。本件は「使い方全般」カテゴリーに移動します。

    トピック投稿者 ryouma

    (@ryouma)

    失礼致しました!
    タイトルは「WordPressのカスタムフィールドにclass名を付与する方法について」です。
    申し訳ありません。

    モデレーター Takayuki Miyoshi

    (@takayukister)

    タイトルを変更しました。

    管理者様
    他にも2件ほど、タイトルが消えているトピックがあると思いますのでそちらもご対応ください。

    ryoumaさん
    カスタムフィールドの名前は「amazon」でしょうか。
    値を「amazon」にしているような気がします。

    もし下記のようなカスタムフィールドがあるとします。
    名前    値
    class   amazon
    class   rakuten

    class=”amazon rakuten”という風に出力したい場合は、下記になります。

    <?php
    $custom_fields = get_post_custom();
    $my_custom_field = $custom_fields['class'];
    echo 'class="';
    foreach ( $my_custom_field as $key => $value ){
    	echo $value . ' ';
    }
    echo '"';
    ?>

    ただし、この場合最後のクラス名と”の間に半角スペースができてしまいます。表示には特に問題はありませんが、気になるようでしたら一旦変数に格納してsubstrなどで削除してください。
    また、Codexを参考にしていると思いますが、foreachの{}が省略されていて、今回のケースではコードがわかりにくくなりますので、{}をつけたほうがいいと思います。

    トピック投稿者 ryouma

    (@ryouma)

    ixkaitoさん、回答ありがとうございます。
    質問内容が分かりづらく、大変申し訳ありません。
    カスタムフィールドの名前は「amazon」で、値はリンク付き画像のURLを記述する予定です。
    私、PHPは素人並みの知識しか無く、下記の記述をカスタマイズしようと試みましたが、分かりませんでした。
    ちなみに下記コードを記述するとclass=””を表示されてしまいます。
    恐縮ですが、お教え頂けると嬉しいです。

    <?php
    $custom_fields = get_post_custom();
    $my_custom_field = $custom_fields['class'];
    echo 'class="';
    foreach ( $my_custom_field as $key => $value ){
    	echo $value . ' ';
    }
    echo '"';
    ?>

    カスタムフィールドの名前がamazonであれば、お伝えしたコードではclass=””と表示されるでしょう。

    名前がamazonであれば下記で値が出力されると思いますが?
    (ryoumaさんが最初に書いたコードとほぼ同じです。echo $value.””;の.””は取りました。意味ありませんので。)

    <?php
    $custom_fields = get_post_custom();
    $my_custom_field = $custom_fields['amazon'];
    foreach ( $my_custom_field as $key => $value ){
    	echo $value;
    }
    ?>

    最終的にはどのようソースを出力したいと思っておりますでしょうか。またclass名というのはcssのclassではないんですか?

6件の返信を表示中 - 1 - 6件目 (全6件中)

トピック「WordPressのカスタムフィールドにclass名を付与する方法について」には新たに返信することはできません。