Modello Blogger. Mostra solo determinati tag nei post.

Utilizzando lo strumento di creazione modelli di Blogger che genera le etichette per ogni post, è facile specificare quali visualizzare e quali no.
Supponiamo di utilizzare molte etichette sul nostro blog, ma la maggior parte di esse non viene realmente utilizzata per categorizzare i contenuti. Mi riferisco al caso in cui ce ne sono alcune che usiamo sempre in diversi post perché servono effettivamente a categorizzarli, ma ce ne sono anche molte altre create per altri scopi.
Un esempio di questo potrebbero essere, ad esempio, i possibili tag generici Pittura , Scultura , Architettura , ecc., tra i quali TUTTE le nostre voci ne avrebbero obbligatoriamente uno, ma a cui potremmo facilmente aggiungerne altri per:

  • Contrassegna internamente determinati contenuti per scopi di layout , condizionandoli con un sì/no; saranno visibili se hanno questa etichetta (coverYES, coverNO...)
  • per qualificare i temi generici ( Impressionismo , Cubismo , Realismo ...)
  • aiuta il gadget delle voci correlate a far emergere più relazioni ( Velázquez , Picasso , Monet ... 1 , 2 e 3 )
  • visualizzare una cosa molto specifica tramite un feed ( http://blogname.blogspot.com/feeds/posts/default/-/tagname )
  • Crea una pagina di copertina nascondendo il widget Blog e poi usa feed di tag speciali per visualizzare i contenuti per sezione.
  • ecc.

In breve, aggiungere tag può essere utile per molte cose, non solo per categorizzare gli argomenti, e se lo facciamo, potremmo non voler rendere visibili determinati tag nei post.

Per fare ciò, il modo più semplice è manipolare il codice originale che li genera, che originariamente è così:

(1) <b:if cond='data:post.labels'>
(2) <data:postLabelsLabel/>
(3) <b:loop values='data:post.labels' var='label'>
(4) <a expr:href='data:label.url' rel='tag'><data:label.name/></a>
(5) <b:if cond='data:label.isLast != "true"'>, </b:if>
(6) </b:loop>
(7) </b:if>

Per capire cosa fa, seguiamo l'ordine delle righe precedenti:

  1. Viene effettuato un controllo per verificare se sono presenti etichette memorizzate nella variabile corrispondente ( data:post.labels ). Se non sono state aggiunte etichette al post, le azioni successive non vengono eseguite.
  2. Viene stampato il nome generico che abbiamo assegnato alle nostre etichette: Argomenti , Categorie , Tag , Sezioni ...
  3. Viene avviato un ciclo che esaminerà tutti i tag contenuti in una voce specifica, dal primo all'ultimo (in ordine alfabetico)
  4. Viene creato un collegamento che porta alla pagina dei tag che attualmente contrassegna il loop e al suo interno viene stampato il nome del tag.
  5. Viene verificato se è l'ultimo nell'elenco e, in caso contrario, viene aggiunta una virgola per separarlo dal successivo che verrà stampato.
  6. La chiusura del ciclo fa sì che il codice passi al tag successivo nell'elenco, ripetendo quanto ordinato al suo interno (5 e 6). Quando raggiunge l'ultimo, continua, interrompendo la ripetizione delle attività e passando al tag 7.
  7. Il condizionale è chiuso

Sapendo questo e utilizzando uno dei nuovi operatori introdotti da Blogger qualche mese fa, quello che appartiene a un set di valori, possiamo modificare il codice precedente per questo e con questo otterremo che in ogni voce vengano visualizzati solo i tag che desideriamo.
<b:if cond='data:post.labels'>
  <data:postLabelsLabel/>
  <b:loop values='data:post.labels' var='label'>
    <b:if cond='data:label.name in [" Tag1 "," Tag2 "," Tag3 "]'>
      <a expr:href='data:label.url' rel='tag'><data:label.name/></a>
      <b:if cond='data:label.isLast != "true"'>, </b:if>
    </b:se>
  </b:ciclo>
</b:se>

Nell'esempio, questi sarebbero quelli che ho chiamato Tag1 , Tag2 e Tag3 , ma l'elenco può includerne quanti ne vuoi, assicurandoti solo che siano racchiusi tra virgolette (") e separati l'uno dall'altro da virgole.
Manipolando questo codice in altri modi e includendolo con condizioni in altre parti del modello, possiamo persino fare in modo che determinate voci con determinati tag appaiano o non appaiano in determinati punti, ma questo è qualcosa che è più difficile da spiegare in modo generico per tutti i tipi di modello, quindi lo lascerò come compito a casa.

Vogliamo dare un'occhiata a un altro post a caso, nel caso lo trovassi utile, o forse preferisci essere più sistematico e iscriverti ai nostri post via email ? Puoi anche stampare questo articolo e, naturalmente, condividerlo sui social media se ti è piaciuto.

fonte

Commenti

nome-foto