J'ajoute une image sélectionnée sur ma page via le tableau de bord et je souhaite l'utiliser comme image d'arrière-plan sur le conteneur div de la page. Je souhaite appliquer l'image d'arrière-plan via css. Je pense donc à insérer un attribut de style dans mon balisage. Je pense faire quelque chose comme ça:
<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;">
Mais malheureusement, cela ne fonctionne pas.
Quand je vérifie la sortie, c'est comme ça:
background: url() !important;
Quel est le probleme avec ca ? Aucune suggestion? Merci!
Vous devez echo
la valeur de retour de wp_get_attachment_image_src()
. Il retourne également un Array()
, vous devez donc extraire la partie nécessaire de ce tableau. Dans ce cas, c'est la première valeur/0
. Exemple:
<?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>
Essayez d’utiliser la fonction the_post_thumbnail_url
:
Obtient l'URL de l'image directe pour l'image sélectionnée de la publication en cours.
<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;">