Visualizzare elementi diversi a seconda delle sezioni del blog


Diverse volte (anche nel precedente post, dall'autore del blog ASD Monteiasi Calcio) mi è stato chiesto come fosse possibile visualizzare un elemento solo nella pagina principale del blog e non nelle altre. Ho deciso quindi di spiegare in questo post come sia possibile nascondere o mostrare i vari elementi a seconda di dove ci si trova nel blog.

Può risultare utile per diversi motivi: ad esempio, su Creare blog determinati annunci AdSense sono visibili solo nella pagina del singolo post e non nella pagina principale. Oppure potremmo decidere di visualizzare elenchi di post, o slide di foto, solo nella pagina principale piuttosto che in quelle del singolo post.

Queste modifiche riguardano il template del blog, e quindi consiglio di farne il backup.

Individuare gli elementi da nascondere nel blog

Bisogna andare in Layout->Modifica HTML, e selezionare "Espandi modelli widget". A quel punto possiamo cercare gli elementi che vogliamo nascondere. Teniamo presente che i vari widget che aggiungiamo (ad esempio HTML/JavaScript, Elenco categorie, e così via), hanno sempre questa struttura:

 

<b:widget id='....' locked='....' title='....' type='...'>
<b:includable id='...'>
...

</b:includable>
</b:widget>

In base al valore di title (cioè il titolo che avete dato all'elemento) potete capire di quale elemento si tratta. Nel mio caso, l'elemento con la ricerca nel blog comincia con

<b:widget id='HTML3' locked='false' title='Cerca nel blog' type='HTML'>

e lo riconosco proprio dal titolo. Ovviamente potete usare anche le altre proprietà per individuare l'elemento, come il type (HTML, LinkList, e così via).

Tuttavia potete decidere non solo di nascondere widget ma anche intere porzioni di codice del template, come per l'appunto nel mio caso quelle in cui visualizzo alcuni annunci AdSense.

Visualizzare o nascondere un elemento solo nella sezione principale del blog

Individuate il codice che volete visualizzare nella pagina principale del blog, e racchiudetelo tra:

<b:if cond='data:blog.url == data:blog.homepageUrl'>

e

</b:if>

Nel caso di un widget, queste due porzioni di codice vanno inserite rispettivamente subito dopo <b:includable e subito prima di </b:includable>. Per tornare al mio esempio di prima, se volessi visualizzare la casella di ricerca solo nella pagina principale del blog il codice sarebbe il seguente:

<b:widget id='....' locked='....' title='....' type='...'>
    <b:includable id='...'>
        <b:if cond='data:blog.url == data:blog.homepageUrl'>
        ...
        </b:if>
    </b:includable>
</b:widget>

Cercando di rispettare  i tag HTML di apertura e chiusura: se sono presenti più sequenze di <b:includable e di </b:includable> dentro il codice di apertura e chiusura del widget, allora dovrete ripetere l'intervento. Ma in genere sono presenti una sola volta.

Se invece volete che il vostro elemento sia nascosto solo nella pagina principale del blog, il suo codice va racchiuso tra:

<b:if cond='data:blog.url != data:blog.homepageUrl'>

e

</b:if>

Attenzione: in questo caso le considerazioni vanno fatte sole sulla pagina principale del blog. Quando cliccate su una categoria, e vedete l'elenco dei suoi articoli, già non siete più nella pagina principale del blog. Se volete che un elemento sia visibile sia nella pagina principale del blog che in quelle delle categorie o delle ricerche, ma non nelle pagine dei singoli post, leggete quanto sto per spiegare.

Visualizzare o nascondere un elemento solo nelle pagine dei singoli post

Se volete che un elemento venga visualizzato solo nelle pagine dei singoli post, il suo codice va racchiuso tra:

<b:if cond='data:blog.pageType == &quot;item&quot;'>

e

</b:if>

Quindi nella pagina principale del blog e in quelle delle categorie non sarà visibile. Se viceversa volete che un elemento sia visibile sempre tranne che nelle pagine del singolo post, allora il suo codice va racchiuso tra:

<b:if cond='data:blog.pageType != &quot;item&quot;'>

e

</b:if>

Abbiamo così coperto le principali casistiche. Per chiarimenti o maggiori approfondimenti, lasciatemi un commento!

Condividi su Facebook, Twitter o Google Buzz:
Condividi su Facebook Condividi su Twitter Pubblica su Google Buzz

Per ricevere direttamente in posta i nuovi articoli, inserisci il tuo indirizzo email:
oppure puoi iscriverti al feed per tenerti sempre aggiornato sui nuovi contenuti del blog!
Per maggiori informazioni sui feed, clicca qui!

48 commenti:

Rosa ha detto...

Ciao, è da poco che conosco il tuo blog e grazie alle tue spiegazioni sempre molto chiare sono riuscita a cambiare alcune cose sul mio!
Ti ho appena linkato.

Ciao
Rosa

Vinnie ha detto...

Ciao Tenebrae,

La domanda non riguarda questo post, scusami ma il tuo è l' unico blog dove trovare migliori pareri al riguardo.

Non so se sta capitando anche a voi, ma da circa 4-5 giorni i visitatori del mio blog sono diminuiti rispetto alla normale media, di conseguenza anche i guadagni, mentre poco prima andava tutto a gonfie vele. Potrebbe per caso dipendere dal recente aggiornamento di adsense (mi pare il 09-01)oppure è valido il discorso che hai fatto nel post "Cosa fare quando il nostro blog viene dimenticato da Google". Premetto che come hai consigliato in un altro tuo post, invio regolarmente la sitemap del mio blog.
Potrebbe anche centrare in qualche modo questo file robots.txt per consentire a google di avere accesso a i miei crawler (ti ho postato la domanda come trovare e modificare questo file nel post "Segnalare la Sitemap del blog ai motori di ricerca")

Ciao

Anonimo ha detto...

Salve Tenebrae,non sono riuscito a modificare il template....mi esce questo errore:

Il widget con ID HTML3 non è presente all'interno di una sezione (l'elemento principale effettivo è: b:if.) Ciascun widget deve trovarsi all'interno di una sezione.

Federico Distefano ha detto...

Ciao!
Dopo un paio di mesi che ti seguo (ti ho anche linkato sul mio blog), colgo l'occasione di farti anche io una domanda:
Di tanto in tanto, mi è capitato di trovare delle immagini (sui blog di alcuni disegnatori) che, sulla pagina principale, vengono mostrate come cliccabili (compare la manina) ma poi non vengono aperte, pur essendo dei normalissimi file jpg.
Si fa clic sull'anteprima e non succede nulla.
Mi sai dire come mai?
Vorrei evitare che capiti anche a me e mi piacerebbe sapere come anticipare il problema.

Ti seguo con molto piacere e ti rinnovo il mio apprezzamento, per il tuo lavoro!
Ciao!!

Tenebrae ha detto...

@asd monteiasi: caspita, hai ragionissima, ho commesso un errore, stasera aggiornerò il post!

Tenebrae ha detto...

@vinnie: non possiamo modificare il file robots.txt con le nostre mani, visto che viene gestito automaticamente da Blogger

purtroppo anch'io ho avuto il tuo stesso problema, ma si è risolto da solo dopo qualche giorno, e sicuramente si, è dovuto alle modifiche fatte ultimamente agli algoritmi di google

fammi sapere tra qualche giorno magari se risolvi

Tenebrae ha detto...

@federico: potrebbe dipendere da un milione di motivi!

ma direi di non preoccuparti adesso della cosa: se ti succede, fammi sapere e vedremo assieme... tanto mi trovi sempre qui

Vinnie ha detto...

OK..ti farò sapere..speriamo bene...

Daniele ha detto...

Molto utile!

Ernesto Tirinnanzi ha detto...

Ciao,
molto interessante; nella parte finale dell'articolo in "Visualizzare o nascondere un elemento solo nelle pagine dei singoli post" c'è lo stesso codice sia nel caso si voglia visualizzare solo nel singolo post che nel caso non si voglia visualizzare nei post.
Forse la seconda parte del codice è un disguido di copia incolla oppure c'è qualcosa che mi sfugge.
Ciao di nuovo e complimenti per il blog, certamente il migliore in questo campo

Anonimo ha detto...

Un post davvero utilissimo che indica esattamente su quali stringhe intervenire e permette di modificare il template in modo autonomo, evitando così l'intoppo di dover trovare il tutorial realizzato ad hoc; uno degli articoli più riusciti.
Ottimo lavoro :)

ZiaBoby ha detto...

Questa possibilità di manipolare il codice affiché alcune cose, appaiono solo in home o solo nel post è una grande cosa, la grande pecca è che Blogger considera come home anche le pagine delle etichette.

Sabatino Di Giuliano ha detto...

Ottimo blog-sito. Grazie per renderci edotti. A presto. Sabatino
Ti seguo

Tenebrae ha detto...

@parsifal: vero, ho sbagliato anche qui, si vede che ieri sera avevo la testa altrove... o forse devo ancora entrare nell'ottica delle cose dopo le vacanze ;)

ho corretto il post!

Tenebrae ha detto...

@boby: una cosa interessante che voglio provare prima o poi è quella di visualizzare determinati elementi a seconda della categoria in cui ci si trova... che ne pensi?

Tenebrae ha detto...

@sabatino: grazie e benvenuto nel blog!

ASD Monteiasi Calcio ha detto...

Tenebrae non so come ringraziarti...grazie grazie grazie

Anonimo ha detto...

Ciao Tenebrae,

è da un po' che non ti stresso ;-).
Grazie alla tua dritta il mio blog è tornato ai fasti di un tempo... si fa per dire.
Per ringraziarti ho deciso di girarti due premi che, se non hai già ricevuto, potrai ritirare passando un attimo nel mio blog.

Stammi bene.

Forrest

ZiaBoby ha detto...

non so se si può, però tu sei più esperto di me, magari trovi il modo e se ci riesci, passamelo subito :)

Anonimo ha detto...

ciao Tenebrae,vorrei un altra info...per creare una barra di navigazione su due righe come si fa...mi spiego meglio se io voglio fare un bottone Classifica come dovrei procedere?
&Risultati

Casa Cuori Colori ha detto...

Ciao, ho conosciuto il tuo blog tramite amiche che me l'hanno segnalato. Ultimamente abbiamo un problema tecnico che non riusciamo a risolvere: quando clicchi su "Layout" per modificare caratteri e colori del blog, appariva l'immagine in anteprima, così che potevi cambiare e vedere l'effetto che faceva. Ora l'anteprima scompare, così sono costretta a cambiare un colore alla volta, sbagliato e anche pubblicarlo, perché è l'unico modo per controllare una modifica!
Ci potresti aiutare? Grazie per il tempo che ti sei comunque preso per leggermi!
Claudia

Vinnie ha detto...

Ciao Tenebrae,

volevo chiederti se era possibile sostituire la dicitura Post più vecchi e Post più recenti con la numerazione dei post, o meglio delle pagine, in modo tale che i visitatori clicchino la pagina desiderata senza dover sfogliare tutto secondo l' ordine imposto dalla dicitura.

Ciao

Roberto Arleo ha detto...

Esiste un modello a 3 colonne invece di due, in molti blog l'ho visto, ma non riesco a trovarlo tra i modelli standard, come devo fare?
Grazie
Roberto

Tenebrae ha detto...

@asd: presto pubblicherò altri post sull'argomento

@claudia: questo problema può dipendere dai cookie, puoi provare a cancellarli... se non sai come fare fammi sapere

@vinnie: ne parlerò presto, è già messo in scaletta

@roberto: a quale modello ti riferisci? comunque ho pubblicato tempo fa una guida su come creare un template a 3 colonne, lo trovi qui

Casa Cuori Colori ha detto...

Sono felicissima che tu abbia risposto! Ho provato subito a eliminarli facendo STRUMENTI>ELIMINA CRONOLOGIA ESPLORAZIONI> ELIMINA COOKIE ma... nn funziona...ho sbagliato qualcosa o devo prendere un'altra strada?
Grazie di cuore, Claudia

Roberto Arleo ha detto...

Grazie sono riuscito a creare le due colonne, devo solo riuscire a spostare la colonna dei post al centro e non ci riesco :( puoi aiutarmi?

Anonimo ha detto...

Ma c'è un modo per nascondere dei post in modo che non vengono visualizzati nella ricerca ma solo quando vengono richiamati?

Tenebrae ha detto...

@claudia & company: su quale blog esattamente avete il problema?

Casa Cuori Colori ha detto...

Ciao Tenebrae, scusami se non ho risposto subito, ma sono stata assente qualche giorno! Noi abbiamo il problema sul blog "Casacuoricolori". Ho provato di tutto: l'unica cosa che ho ottenuto è che l'immagine sparisce dopo 8 sec (tanto che la prima volta ho pensato che funzionasse...)! Se hai un'idea...grazie ancora e buon week! Claudia

Tenebrae ha detto...

@claudia: che browser usi? hai provato a visualizzare il blog con un altro?

Casa Cuori Colori ha detto...

Ciao Tenebrae, uso Internet Explorer 7 e non ho mai avuto la possibilità di usarne un altro.Buona serata! Claudia

Casa Cuori Colori ha detto...

Sono ancora io! Ho pensato che ti fosse utile sapere che ho altri due blog, non collegati tra di loro e funzionano tutti.Per questo penso che non sia un problema di browser...ma non sono troppo esperta, anzi!! Ciao ciao, Claudia

Casa Cuori Colori ha detto...

Ciao Tenebrae!! Ho risolto il problema, avevi ragione tu sul browser: l'ho cambiato e con Mozilla funziona!! Sei geniale, grazie ancora e a presto!
Claudia

Tenebrae ha detto...

@claudia: ottimo!

Anonimo ha detto...

Grazie alle tue indicazioni ho modificato un blog (che avevo creato) in questo modo:
http://km-fesik2.blogspot.com/
Il risultato non è male. L'indirizzo è momentaneo e fra poco lo bloccherò. Per il momento si ha libero accesso proprio per farti vedere il risultato.

Giuliano
(piccolo78.blogspot.com)

Tenebrae ha detto...

@giuliano: complimenti, ottimo effetto!

Amrita ha detto...

alla fine ci ho rinunciato,non sono riuscita a inserire lo sfondo come volevo io.non si ingrandisce,e non si centra,e di conseguenza si vede 1 volta e mezzo,così da non apparire simmetrico....pazienza.
ma ho un problema:non trovo nessun elemento da aggiungere sulla barra laterale,per individuare al volo gli ultimi post.e così non so mai se qualcuno mi ha scritto,e dove.c'è qualcosa da poter incollare?

Amrita ha detto...

scusa,gli ultimi commenti,(che ultimi post???)
poi,in alcuni blog ho visto una cosa carinissima.invece di un semplice elenco di nomi di blog e rispettivo lunk,c'è una fotina del post più recente,o l'avatar del proprietario del blog.ho cercato di aggiungere elementi che avessero funzioni simili,ma io non ne ho trovati.non è che puoi aiutarmi?

Tenebrae ha detto...

@amrita: mi dispiace per lo sfondo, ma l'unica in questi casi è provare a oltranza, finchè le cose non vanno come devono... spero sempre di essere chiaro nei post, ma mi rendo conto di avere anch'io i miei limiti

onde evitare fraintendimenti, mi metti il link di un blog che ha l'elenco dei blog che dici?

Casa Cuori Colori ha detto...
Questo commento è stato eliminato dall'autore.
Casa Cuori Colori ha detto...

Ciao Orazio, va un po' meglio?
...volevo solo augurare a te a alla tua famiglia una serena Pasqua!
Claudia

Passo Nuragico ha detto...

Ciao Tenebrae la spiegazione è chiarissima, grazie.. e ti chiedo un approfondimento: è possibile scegliere il singolo post in cui visualizzare i widget?
In pratica sto cercando di trasformare il mio blog in un sito statico e vorrei inserire elementi(html) differenti per ogni singolo post(!).. Hai qualche dritta?
Ti ringrazio, ciao

Unknown ha detto...

Salve caro Orazio ^^

sono un lettore del tuo blog da poco ^^
ho trovato moltissime cose utili in questo blog e ti vorrei fare i miei complimenti ^^

la cosa che mi chiedo.... a me servirebbe di visualizzare solamente un articolo nella mia "Home Page"
ma non so come fare... ho provato con degli esempi qui ma nn riesco a trovare la cosa che mi serve ^^ potresti darmi una mano?

Ti Ringrazio in anticipo

PS: Il mio blog tratta del guadagno su internet... il progetto deve ancora partire... appena avrò gli articoli che pubblicherò farò una pagina per lo scambio di link... e sarei felice di inserire il tuo link ^^

per ora ti do il link del mio blog così potrai vedere tu stesso di cosa si tratta ^^ se puoi gradirei commenti anche se è composto solamente da 2 articoli di prova...

ecco il link http://ioguadagnosubito.blogspot.com/

Gabriele Gualco ha detto...

Ciao, ti faccio i complimenti ammirato ancora una volta.. Qui, per pignoleria, dovresti ricordare ai meno esperti di cancellare la stringa che trovano prima, ma io sono molto contento di aver appreso questa tecnica, che aiuterà chi la usa a ottimizzare gli spazi nelle colonne... A presto G

Gabriele Gualco ha detto...

Ciao, ti devo chiedere una cosa che forse ha che fare con l'argomento ma non ne sono sicuro. Ho aggiunto lo script per il feed flare. in parole povere sotto div class='post-footer' ora ho un pò di subscribe e ho spostato aanche il tuo link per stampare che mi sembrava stesse meglio nel post footer che sotto il body. il problema è che quando cambio pagina (come da tuo post coi numeri delle pagine) il feed flare non appare. c'è solamente nella prima pagina in parole povere. quale può essere il problema? Ciao grazie ancora

Gabriele Gualco ha detto...

Ciao, sono appena passato da http://gabrielegualcoinviaggio.blogspot.com a http://www.gabrielegualco.eu.
Lo shock è stato non tanto che non trovasse gli script su google sites, che ho provveduto a spostare su fileden, ma che non funziona questo sistema degli elementi. funziona per le colonne ma i widget non li fa neanche vedere col quick edit. Mi tocca trasferire i widget nell'html? Cambiando gli indirizzi verso gabrielegualco.eu mi sembra che la situazione non cambi, e non so che altro fare. Bisogna usare altri codici?

Ciao Gabriele

Gabriele Gualco ha detto...

Ok, ho trovato la soluzione, per quanto riguarda le etichette bisogna sostituire l'indirizzo precedente con quello nuovo e lasciare invariato /search/label etc. Ma se voglio nascondere un elemento in tutte le etichette come devo fare? <b:if cond='data:blog.url != e poi?

Gabriele Gualco ha detto...
Questo commento è stato eliminato dall'autore.

Prima di lasciare un commento, leggete qui

Posta un commento

Nota. Solo i membri di questo blog possono postare un commento.