Immagine in evidenza come sfondo nelle pagine

27 set 2013, 19:49:33
Visualizzazioni: 52.4K
Voti: 10

Sto aggiungendo un'immagine in evidenza alla mia pagina attraverso la dashboard e voglio utilizzarla come immagine di sfondo sul div contenitore della pagina. Voglio applicare l'immagine di sfondo attraverso CSS, quindi sto pensando di inserire un attributo style nel mio markup. Sto cercando di fare qualcosa del genere:

<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;">

Ma purtroppo questo non funziona.

Quando controllo l'output è così:

background: url() !important;

Cosa c'è di sbagliato? Qualche suggerimento? Grazie!

2
Commenti

Hai già cercato nel sito?

kaiser kaiser
27 set 2013 19:53:41

Sì, ho fatto una ricerca ma sembra non funzionare correttamente, ho aggiornato la mia domanda, per favore controlla ora!

agis agis
27 set 2013 20:07:31
Tutte le risposte alla domanda 2
5
14

Devi utilizzare echo per visualizzare il valore restituito da wp_get_attachment_image_src(). Questa funzione restituisce un Array(), quindi devi estrarre la parte necessaria dall'array. In questo caso è il primo valore/0. Esempio:

<?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>il tuo testo demo</p>
</div>
27 set 2013 20:09:15
Commenti

Per favore spiega perché questo dovrebbe aiutare l'OP. Grazie.

kaiser kaiser
27 set 2013 20:14:02

@kaiser stava anche lavorando con gli sfondi in quel modo, sono un principiante, non so il perché, ma so che ha funzionato da quello che ho visto in un forum.

Raank Raank
27 set 2013 20:22:26

@Feera Beh, allora è Magia. E sappi che la Magia è sempre la risposta :D

kaiser kaiser
27 set 2013 20:28:28

può essere poco, ma ciò che conta è l'intenzione :P

Raank Raank
27 set 2013 20:31:23

Se stai facendo questo in una funzione, non dimenticare di precedere questo codice con global $post; .

Boycott A.I. Boycott A.I.
15 gen 2016 22:15:42
0

Prova a utilizzare la funzione the_post_thumbnail_url:

Ottiene l'URL diretto dell'immagine in evidenza del post corrente.

<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;">
15 giu 2017 11:44:51