サポート » テーマ » WPループ中のサムネイル表示

  • お世話なります。
    目下ハマリにハマっている作業で、WPループ中でのサムネイル表示ができません。

    WPのバージョンは3.1.4で、そんなに古いものではないのです。
    現在やろうとしていることは、WPループ中にthe_content()の中から投稿に貼りつけた画像の情報を取り出して任意のサムネイルを表示させる(一番最初に貼りつけた画像を表示させる)ということなのですが、これが以外にできなくて困っております。

    WPループの外で最新の投稿から幾つかのサムネイルを表示させるというのはできましたが、逆にWPループ中だとできない感じです。
    どなたか詳しい方いましたらおしえてください。よろしくお願いします。

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

    コンテンツから、特定の拡張子を持つ画像URIを取得する関数をつくって
    functions.phpに追加して、

    function get_content_image_uri(){
    	global $post;
    	if( ! preg_match("/(https?:\/\/)([-_.!*\'()a-zA-Z0-9;\/?:@&=+$,%#]+)\.(jpg|jpeg|gif|png)/iu",get_the_content(),$regs) ){
    		return false;
    	}
    	$url = $regs[1].$regs[2].'.'.$regs[3];
    	return $url;
    }

    templateのループの中で、関数を呼び出せばいいと思います

    <?php while ( have_posts() ) : the_post(); ?>
    <img src=" php echo  get_content_image_uri();?>" style="width:100px;height:auto" />
    <?php endwhile; ?>

    で、どうでしょう?
    追記
    このコードだと、コンテンツに画像がない場合でも、空のイメージタグを書いてしまうので、returnを、タグ付にしたほうがいいかもしれないです。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「WPループ中のサムネイル表示」には新たに返信することはできません。