Mostrare un div solo nella homepage/blog index in WordPress/PHP

5 mag 2012, 05:03:47
Visualizzazioni: 18.7K
Voti: 4

Ho un sito WordPress. Ho un div che voglio far apparire solo nella homepage (nell'header). Che tipo di istruzione if in PHP devo usare...

In altre parole:

mostra solo .... nell'header della pagina principale dell'indice del blog. Il problema è che l'header stesso viene caricato in ogni pagina.

Grazie!

php
1
Commenti

possibile duplicato di Mostrare un codice diverso nella pagina iniziale rispetto alle altre pagine

Chip Bennett Chip Bennett
6 mag 2012 02:47:01
Tutte le risposte alla domanda 4
8

Vedi: http://codex.wordpress.org/Function_Reference/is_home

<?php if(is_home()): ?>

<div>Il tuo div.</div>

<?php endif; ?>
5 mag 2012 05:10:32
Commenti

grazie.. il mio problema è che il mio tema imposta effettivamente la homepage per visualizzare una "categoria". Esiste un'istruzione simile a (is_category_XXXX)?

User User
5 mag 2012 05:14:43

@NKeating Questo non ha funzionato?

iambriansreed iambriansreed
5 mag 2012 05:16:15

ha nascosto il div dalla homepage perché non la rileva come home.. In altre parole, la homepage è impostata per visualizzare un indice di categoria chiamato videos. Vedi URL: http://speedsociety.com/

User User
5 mag 2012 05:19:49

e sto cercando di visualizzare un div "video in evidenza" sopra l'indice principale ma solo nella homepage.

User User
5 mag 2012 05:23:31

Prova anche: is_front_page().

iambriansreed iambriansreed
5 mag 2012 05:25:48

Prova anche a leggere tutto codex.wordpress.org/Function_Reference/ Ci sono alcune funzioni utili lì.

JakeParis JakeParis
5 mag 2012 05:36:04

Dovresti assolutamente usare is_front_page() invece di is_home(). La prima corrisponde alla Pagina Principale del Sito; la seconda corrisponde all'Indice degli Articoli del Blog, che potrebbe o meno essere sulla pagina principale del sito.

Chip Bennett Chip Bennett
6 mag 2012 02:45:21
Mostra i restanti 3 commenti
0
<?php if(is_home()): ?>

<div>Il tuo div.</div>

<?php endif; ?>

Il codice sopra funziona bene finché non imposti una Pagina statica per la visualizzazione della Pagina iniziale da qui Amministrazione > Impostazioni > Lettura.

<?php if(is_front_page()): ?>

<div>Il tuo div.</div>

<?php endif; ?>

Ma questo codice funzionerà indipendentemente dal fatto che venga visualizzata la pagina principale del blog o che tu abbia impostato una pagina statica da mostrare nella home page.

5 mag 2012 08:52:30
1

Potresti anche risolvere il problema con il CSS.

Imposta il div su

#your-div{
display: none;
}

nel tuo css.

Quindi trova la classe body page-id per la pagina iniziale e imposta il css in questo modo:

.body-class-page-id #your-div {
display: block;
}

Questo nasconderà il div su tutte le pagine tranne quella in cui vuoi mostrarlo.

5 mag 2012 11:11:36
Commenti

Alla fine ha avuto più senso per me.

little tiny man little tiny man
9 feb 2021 06:22:59
4

Puoi sempre utilizzare $_SERVER['REQUEST_URI'] per determinare su quale pagina ti trovi. Per la homepage di solito è semplicemente '/'. Quindi:

<?php if( $_SERVER['REQUEST_URI'] == '/' ) { ?>
<div id="home_only">Contenuto qui..</div>
<?php } ?>
5 mag 2012 05:30:02
Commenti

a) Che dire di index.php? e b) quel tipo di soluzione non funzionerebbe davvero con WordPress.

JakeParis JakeParis
5 mag 2012 05:37:08

a) Non vedo il motivo per cui qualcuno permetterebbe agli utenti di visualizzare la propria homepage come http://dominio.com/index.php b) Cosa ti fa pensare che non funzionerebbe?

User User
5 mag 2012 05:46:56

...Funziona?

JakeParis JakeParis
5 mag 2012 05:48:49

Sì, funziona alla perfezione.

User User
5 mag 2012 05:51:32