• 解決済 H9

    (@harle9uin)


    どなたか、お分かりになりましたらご協力ください。

    別の方の以前の投稿(http://ja.forums.wordpress.org/topic/7469?replies=3)で、カスタムフィールドの値によって別の書き出しをするという投稿があったのですが、例えばりんごの【echo “<img src=’apple.png’ />\n”;】の部分に別のカスタムフィールドの値を入れることはできるでしょうか?

    例えば、このように書き出せればいいなと思っています。

    例 )<img src='<?php echo post_custom(‘色’); ?>_<?php echo post_custom(‘果物’); ?>_<?php echo post_custom(‘価格’); ?>.jpg’ />

    よろしくお願いいたします。

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • こんにちは

    出来ると思いますが、試してみてうまくいかなかったのですか?:-)

    トピック投稿者 H9

    (@harle9uin)

    こんにちわ。

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

    試してみましたが、ダメでした…。
    私があまりphpを理解していないのもあるとは思いますが…。

    そのまま【<img src='<?php echo post_custom(‘色’); ?>_<?php echo post_custom(‘果物’); ?>_<?php echo post_custom(‘価格’); ?>.jpg’ />】と表示されてしまいます…。

    こんにちは

    間違っていたら、許していただきたいのですが、

    もしかして、投稿にそのコードを書いていますか?

    このようなコードは、投稿に書くものではなくて、テーマファイルのテンプレートに記述するものなので、投稿に直接書いてもそのまま表示されます。

    もし、テンプレートファイルに、コードを記述して、このような表示になるのであれば、PHPのコードの記述そのものに問題があると思われます。
    例えば、半角の文字で書くべきところを、全角で書いているとか、スペースが全角とか、、、

    トピック投稿者 H9

    (@harle9uin)

    なんとか、自己解決しました。

    例えば【画像1】の値が「1」(値はなんでもいいですが…)だった場合に、色_果物_価格_1.jpg(red_apple_298_1.jpg)と出力して、さらに、画像へのリンクも♪「1」以外だと出力はしないということをやりたかったのです。
    また、【画像2】の場合も「1」だった場合、色_果物_価格_2.jpg(blk_apple_298_2.jpg)と出力したかったということでした。

    <?php
        $fruits = (array)post_custom('画像1');
    	$type = 'http://www.xxxxxx.com/img/' . post_custom('色') . _ . post_custom('果物') . _ . post_custom('価格') . '_1.jpg';
        foreach ($fruits as $fruit) {
          switch ($fruit) {
            case 1:
              echo $meta = '<'; if($meta) echo 'a href="'.$type.'"><img src="'.$type.'" /></a>';
              break;
          }
        }
    ?><?php
        $fruits = (array)post_custom('画像2');
    	$type = 'http://www.xxxxxx.com/img/' . post_custom('色') . _ . post_custom('果物') . _ . post_custom('価格') . '_2.jpg';
        foreach ($fruits as $fruit) {
          switch ($fruit) {
            case 1:
              echo $meta = '<'; if($meta) echo 'a href="'.$type.'"><img src="'.$type.'" /></a>';
              break;
          }
        }
    ?>

    一応これで、なんとかできました。

    無駄やもっと簡潔に出来る…ものなのかもしれませんが、phpがあまり分かっていないので、これでなんとか運用してみます。

    nobitaさん、ありがとうございました。

    H9 さん

    目的が達成できてよかったですね、同じコードをまねして書いてみました。

    参考になればうれしいです

    がんばってください

    $fruits	= ( array ) post_custom( '画像1' );
    	$type	= 'http://www.example.com/img/%1$s_%2$s_%3$s_%4$s';
    	$type 	= sprintf($type
    			, post_custom( '色' )
    			, post_custom( '果物' )
    			, post_custom( '価格' )
    			,'1.jpg'
    			);
    
        foreach ( $fruits as $fruit ) {
          switch ( $fruit ) {
            case 1:
              if( $meta ){
    		   echo '<a href="'.$type.'"><img src="'.$type.'" /></a>';
    		  }
            break;
          }
        }
    トピック投稿者 H9

    (@harle9uin)

    おぉ、こちらでやってみますね♪

    nobitaさん、ありがとうございました♪

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

トピック「カスタムフィールドにて…」には新たに返信することはできません。