2017-12-20 12 views
0

私の各投稿のコンテンツから最初の画像を取得しようとしています。以下のコードは動作しません。しかし、私が1つ以上のイメージを持っていれば、私にイメージが与えられますが、最後のイメージです。投稿記事の最初の画像をワードプレスで検索

私は本当に最初の画像だけを必要とします。

function catch_that_image($post_content) { 
$first_img = ''; 
ob_start(); 
ob_end_clean(); 
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post_content, $matches); 
$first_img = $matches [1] [0]; 
return $first_img; 

}

答えて

0

まず、あなたのfunctions.phpファイルにこの関数を貼り付けます。一度行わ

function catch_that_image() { 
    global $post, $posts; 
    $first_img = ''; 
    ob_start(); 
    ob_end_clean(); 
    $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches); 
    $first_img = $matches [1] [0]; 

    if(empty($first_img)){ //Defines a default image 
    $first_img = "/images/default.jpg"; 
    } 
    return $first_img; 
} 

、あなたは単にポストから最初の画像を表示するようにループ内の関数を呼び出すことができます。ここ

<?php echo catch_that_image() ?> 

は、私は同じことを行っているが、それでも私が得たlink

+0

ですコンテンツからの第3の画像。 –

+0

ポスト・コンテンツの最初のイメージを特集イメージにしようとしましたか?またはあなたがそれを取得しようとした場合、あなたがどこにそれを表示しようとしたらどこかに表示したいですか? –

+0

また、$ first_img = $ matches [1] [0];の配列の値を変更しようとしましたか?そしてこれをエコ化しようとしました。 –

関連する問題