web-dev-qa-db-ja.com

ページの背景画像としての特集画像

ダッシュボードから自分のページにおすすめの画像を追加していますが、それをページのコンテナdivの背景画像として使用したいのです。 CSSを通して背景画像を適用したいので、マークアップの中にスタイル属性を入れることを考えています。私はこのようなものを作ることを考えています:

<div id="<?php echo $post_name; ?>" class="page<?php echo $post_id; ?>" style="background: url(<?php wp_get_attachment_image_src( get_post_thumbnail_id(), 'large' ); ?>) !important;">

しかし残念ながらこれはうまくいきません。

出力を確認すると、このようになります。

background: url() !important;

何が問題なのですか?助言がありますか?ありがとうございます。

8
agis

wp_get_attachment_image_src()からの戻り値をechoする必要があります。またArray()も返すので、その配列から必要な部分を取得する必要があります。この場合、それが最初の/ 0値です。例:

<?php $thumb = wp_get_attachment_image_src( get_post_thumbnail_id($post->ID), 'full' );?>
<div id="post" class"your-class" style="background-image: url('<?php echo $thumb['0'];?>')">
<p>text demo</p>
</div>
12
Raank

the_post_thumbnail_url関数を使用してみてください

現在の投稿の注目画像の直接画像URLを取得します。

<div id="<?php echo post_name; ?>" class="page<?php 
echo $post_id; ?>" style="background: url(<?php 
echo get_the_post_thumbnail_url( $post_id, 'large' ); ?>) !important;">
2
Gleb Kemarsky