Il percorso <?php echo get_template_directory_uri(); ?>/images/image.jpg non funziona nella sidebar

8 ago 2012, 03:16:32
Visualizzazioni: 37.5K
Voti: 2

Spero che qualcuno possa rispondere a questo!

Sto usando questo codice nell'header e funziona:

<img src="<?php echo get_template_directory_uri(); ?>/images/image.jpg">  

Ma quando provo ad usarlo in un widget di testo nella sidebar, l'immagine non viene visualizzata. Qualche idea?

0
Tutte le risposte alla domanda 3
1

Il codice PHP non verrà eseguito all'interno di un widget di testo. Esistono plugin che ti permettono di farlo, ma questo tipo di approccio è fortemente sconsigliato.

Aggiungi questo codice al tuo file functions.php, o ancora meglio, crea un piccolo plugin semplice:

// Abilita l'uso degli shortcode all'interno dei widget.
add_filter( 'widget_text', 'do_shortcode' ); 

// Assegna il tag per il nostro shortcode e identifica la funzione che verrà eseguita. 
add_shortcode( 'template_directory_uri', 'wpse61170_template_directory_uri' );

// Definisci la funzione 
function wpse61170_template_directory_uri() {
    return get_template_directory_uri();
}

Per utilizzarlo nell'admin, aggiungi lo shortcode [template_directory_uri] al tuo widget di testo, e la directory del template verrà restituita, ad esempio:

[template_directory_uri]/images/image.jpg
8 ago 2012 05:00:05
Commenti

Nessun problema, e benvenuto su WPSE! Potresti per favore cliccare il segno di spunta per accettare questa risposta? Grazie, e buona continuazione!

Dave Romsey Dave Romsey
9 ago 2012 02:30:32
0

Puoi utilizzare un widget php, che è un widget di testo semplice adattato per poter eseguire codice php. Vedi WordPress › PHP Code Widget « WordPress Plugins di http://ottodestruct.com

8 ago 2012 07:11:07
0

Una soluzione semplice sarebbe caricare l'immagine nella libreria media e utilizzare l'url come src per l'immagine nel widget di testo.

8 ago 2012 08:42:14