WordPress投稿の注目画像のURLを取得する方法


144

この機能を使用して、注目の画像を取得しています。

<a href="#" rel="prettyPhoto">
    <?php the_post_thumbnail('thumbnail'); ?>
</a>

ここで、画像のURLが必要なアンカータグをクリックして、画像全体を取得したいと思います。

<a href="here" rel="prettyPhoto">

どうすれば修正できますか?

回答:


302

以下のコードを確認し、問題なく機能するかどうかお知らせください。

<?php if (has_post_thumbnail( $post->ID ) ): ?>
  <?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' ); ?>
  <div id="custom-bg" style="background-image: url('<?php echo $image[0]; ?>')">

  </div>
<?php endif; ?>

1
本当にありがとう仕事です。条件も追加したい。投稿サムネイルがある場合はこれを表示し、そうでない場合は別のdivまたはcssまたはデフォルトの画像のアイデアをどのように表示するか
pagol

2
私はそれを作りましたが、それは正しい方法であるかどうかわかりません。<?php $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' ); ?> <div class="section bannerarea cashstudybanner" style="background-image: url( <?php if ( has_post_thumbnail() ) { echo $image[0]; } else { ?> <?php bloginfo('template_directory'); ?>/images/common-banner.jpg <?php } ?> )">
pagol

どうもありがとうございました!このコードは完全に機能しています。
Calum Childs

95

他の情報を含む配列ではなく、ソースだけが必要な場合:

<?php $url = wp_get_attachment_url( get_post_thumbnail_id($post->ID), 'thumbnail' ); ?>
<img src="<?php echo $url ?>" />

 


バージョン4.4.0以降の場合wp_get_attachment_image_url()
Charlie Vieillard

1
これはまさに私が必要としたものでした。完全なimg srcをロードします。ありがとうございました!
killscreen

1
wp_get_attachment_image_url(投稿IDではなく)添付ファイルIDがわかっている場合にのみ適用されます。
間違いなく

探していました。おかげで男:)
アーマンH



14

これは私にとって完璧に機能しました:

<?php echo get_the_post_thumbnail_url($post_id, 'thumbnail'); ?>

3
注:Wordpress 4.4.0以降でのみ使用可能
MarcGuay 2016

<?php echo get_the_post_thumbnail_url($ post_id); ?>フルサイズの画像が必要な場合。
yeahlad

7

私はこれが最も簡単な解決策であり、更新されたものだと思います:

<?php the_post_thumbnail('single-post-thumbnail'); ?>

一番上にあるものは機能しませんでしたが(PHPエラーがないため、大衆向けのWordPressテーマを作成しているので不要でした)、これは機能しました。+1
Calum Childs


6

あなたはこれを試すことができます:

<?php 
    $feat_image = wp_get_attachment_url(get_post_thumbnail_id($post->ID)); 
    echo $feat_image; 
?>

これは「$ feat_image」のみを出力します。
Stefan Yohansson、2015年

私の間違い、エコー$ feat_image;
nim 2015年

4

これをお試しください

<?php 
    echo get_the_post_thumbnail($post_id, 'thumbnail', array('class' => 'alignleft')); 
?>

1
get_the_post_thumbnail_url画像のURLのみが必要な場合に使用します。
ギャビン

3

これを試すことができます。

<?php
   $image_url = wp_get_attachment_url( get_post_thumbnail_id($post->ID) );
?>
<a href="<?php echo $image_url; ?>" rel="prettyPhoto">

3

次のようにpost_metaから取得することもできます。

echo get_post_meta($post->ID, 'featured_image', true);

3

次のようにして、画像添付ファイルのURLを取得することもできます。正常に動作します。

if (has_post_thumbnail()) {
    $image = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'medium'); 
}

1
<?php
    if (has_post_thumbnail( $post->ID ) ):
        $image = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'single-post-thumbnail' );
?>
        <img src="<?php echo $image[0]; ?>">  
<?php endif; ?>

1

これを試してみます

<?php $url = wp_get_attachment_url(get_post_thumbnail_id($post->ID), 'full'); ?> // Here you can manage your image size like medium, thumbnail, or custom size
    <img src="<?php echo $url ?>" 
/>

1

私はこれを得るまで、たくさん検索して何も見つかりませんでした:

<?php echo get_the_post_thumbnail_url( null, 'full' ); ?>

これは、<img>タグ全体なしで完全な画像URLを提供するだけです。

お役に立てれば幸いです。


0

投稿が画像であり、画像が何であるかがすでにわかっている場合は、あまり面倒なくサムネイルのURLを取得できます。

echo pathinfo($image->guid, PATHINFO_DIRNAME);

0

使用する:

<?php 
    $image_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'thumbnail_size');

    $feature_image_url = $image_src[0]; 
?>

thumbnail_size必要なサイズに応じて値を変更できます。


0

次のように、画像の添付ファイルのURLを取得することもできます。

<?php
    "<div><a href=".get_permalink(id).">".wp_get_attachment_url(304, array(50,50), 1)."</a></div>";
?>

0

単純にループの中に<?php the_post_thumbnail_url(); ?>以下のように書いてください:-

$args=array('post_type' => 'your_custom_post_type_slug','order' => 'DESC','posts_per_page'=> -1) ;
$the_qyery= new WP_Query($args);

if ($the_qyery->have_posts()) :
    while ( $the_qyery->have_posts() ) : $the_qyery->the_post();?>

<div class="col col_4_of_12">
    <div class="article_standard_view">
        <article class="item">
            <div class="item_header">
                <a href="<?php the_permalink(); ?>"><img src="<?php the_post_thumbnail_url(); ?>" alt="Post"></a>
            </div>

        </article>
    </div>
</div>            
<?php endwhile; endif; ?>

-1
<img src="<?php echo get_post_meta($post->ID, "mabp_thumbnail_url", true); ?>" alt="<?php the_title(); ?>" width ="100%" height ="" />

詳しく説明できますか?
Peter Mortensen
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.