bylineRegion [GV2]

StatutGadget TypeDefault Gadget VersionLayouts VersionUpdate Version
Invisible
Blog
FeaturedPost
PopularPosts
2
3
Révision 1.3.0
bylineRegion [Blog/FeaturedPost/PopularPosts GV2]
bylineRegion est le nom d'une inclusion qui a pour mission de sélectionner les options des articles actives dans l'entête et le pied de l'article.

Dans le modèle de gadget Version 1, le système de gestion des options était souvent brisé lorsqu'on modifiait le code. Parfois, l'option cochée ne s'affichait pas, et bien souvent, on ne pouvait plus la déplacer.
Dans le modèle de gadget Version 2, l’ingénierie Blogger a corrigé ce défaut de conception en mettant en place un commutateur (le code ci-dessous) et plusieurs sets de données contenant la liste des options actives et leur emplacement. En combinant l'ensemble, on obtient un système 100% fiable en phase avec les réglages définis par l'utilisateur.
Soyons clair sur ce point, 100% fiable lorsque le thème ne contient pas de restriction ou/et si les sets de données sont disponibles.
Le grand avantage avec cette inclusion, c'est qu'elle est commune à plusieurs gadgets et qu'elle peut être utilisée pour afficher les options dans les gadgets Blog, FeaturedPost et PopularPosts. Le hasard fait relativement bien les choses, puisque tous ces gadgets possèdent des sets d'alias communs.


Contenu de l'inclusion

<b:includable id='bylineRegion' var='regionItems'>
  <b:loop values='data:regionItemsdata:regionItemsdata:widgets.Blog.first.headerByline.itemsdata:widgets.Blog.first.footerBylines[i].itemsdata:widgets.Blog.first.allBylineItems' var='byline'>
    <b:switch var='data:byline.namedata:byline.namedata:widgets.Blog.first.headerByline.items.namedata:widgets.Blog.first.footerBylines[i].items.namedata:widgets.Blog.first.allBylineItems.name'>
    <b:case value='share'/>
      <b:include cond='data:post.shareUrldata:post.shareUrldata:posts[i].shareUrl (Blog)data:posts[i].shareUrl (FeaturedPost)data:posts[i].shareUrl (PopularPosts)' name='postShareButtonspostShareButtonsGV2 par défautGV2 ContempoGV2 EmporioGV2 Notable'/>
    <b:case value='comments'/>
      <b:include cond='data:post.allowCommentsdata:post.allowCommentsdata:posts[i].allowComments (Blog)data:posts[i].allowComments (FeaturedPost)data:posts[i].allowComments (PopularPosts)' name='postCommentsLinkpostCommentsLinkGV2 par défaut (Blog/FeaturedPost/PopularPosts)GV2 par défaut (widget Blog)'/>
    <b:case value='location'/>
      <b:include cond='data:post.location' name='postLocation'/>
    <b:case value='timestamp'/>
      <b:include name='postTimestamp'/>
    <b:case value='author'/>
      <b:include name='postAuthor'/>
    <b:case value='labels'/>
      <b:include cond='data:post.labels.anydata:post.labels.anydata:posts[i].labels (Blog)data:posts[i].labels (FeaturedPost)data:posts[i].labels (PopularPosts)' name='postLabelspostLabelsGV2 par défautGV2 ContempoGV2 EmporioGV2 Soho'/>
    <b:case value='icons'/>
      <b:include cond='data:post.emailPostUrldata:post.emailPostUrldata:posts[i].emailPostUrl (Blog)data:posts[i].emailPostUrl (FeaturedPost)data:posts[i].emailPostUrl (PopularPosts)' name='emailPostIconemailPostIconGV2 par défautGV2 Soho'/>
    <b:case value='reactions'/>
      <b:include cond='data:post.reactionsUrl' name='postReactions'/>
    </b:switch>
  </b:loop>
</b:includable>


Appel de l'inclusion et paramètres

L'appel de l'inclusion doit être positionné dans une boucle d'articles. Soit dans les gadgets Blog, FeaturedPost ou PopularPosts.

<b:loop values='data:posts' var='post'>

  <b:include name='bylineRegion'/>

</b:loop>

Présenté tel quel, l'appel ne travaillera pas, puisqu'il faut également mentionner un set d'options que l'on souhaite afficher.

Dictionnaire Gadget Version Layouts Version Tableau Contenu
data:widgets 3 data:widgets[i].headerByline.items Liste des options contenues dans l'entête de l'article
data:widgets[i].footerBylines[i].items Liste des options contenues dans le pied de l'article
data:widgets[i].allBylineItems Liste de toutes les options
Gadget Blog 2 data:headerByline.items Liste des options contenues dans l'entête de l'article
data:footerBylines[i].items Liste des options contenues dans le pied de l'article
data:allBylineItems Liste de toutes les options


Pour cette démo, nous allons utiliser les données universelles du dictionnaire data:widgets.
Vous pouvez également vous référez aux codes fournis par l’ingénierie (voir plus bas, les inclusions parentes).

Toutes les options
<b:include cond='data:widgets.Blog.first.allBylineItems.any'
           data='widgets.Blog.first.allBylineItems'
           name='bylineRegion'/>
Options positionnées dans l'entête de l'article
<b:include cond='data:widgets.Blog.first.headerByline'
           data='widgets.Blog.first.headerByline.items'
           name='bylineRegion'/>
Options positionnées dans le pied de l'article
<b:loop values='data:widgets.Blog.first.footerBylines' var='region'>
  <b:include cond='data:region.items.any'
             data='region.items'
             name='bylineRegion'/>
</b:loop>
Pour le cas du pied de l'article, la boucle est nécessaire, puisque cette section contient 3 lignes. Donc, 1 cycle par ligne.
Sélectionner manuellement des options
<b:with value='data:widgets.Blog.first.allBylineItems where (n => n.name in ["author","comments"])' var='allbyline'>
  <b:include cond='data:allbyline.any'
             data='allbyline'
             name='bylineRegion'/>
</b:with>
Si vous ne souhaitez afficher que des options spécifiques, ajoutez le nom de l'option dans le tableau.
  • Boutons de partage - share
  • Lien commentaires - comments
  • Option localisation - location
  • Date - timestamp
  • Nom de l'auteur - author
  • Libellés - labels
  • Bouton Email - icons
  • Réactions des lecteurs - reactions


Modifier l'inclusion

Bien qu'invisible, le code de l'inclusion peut être ajouté et modifié dans le code du widget.

<b:includable id='bylineRegion'>

  <!-- Add new code for "bylineRegion" inclusion here -->

</b:includable>

Lorsque l'inclusion est explicitement ajoutée dans le gadget, la version "serveur" n'est plus prioritaire.
Dans ce cas-ci, pour appeler l'inclusion "serveur", vous devez mentionner le préfixe super à l'identifiant de l'inclusion.
En savoir plus
  <!-- Call custom version -->
  <b:include name='bylineRegion'/>

  <!-- Call server version -->
  <b:include name='super.bylineRegion'/>


Disponibilité par thème

Original Contempo Emporio Notable Soho
XML Explicite X X X X X
Version serveur


Inclusions parentes

Gadget Type Inclusion Gadget Version Thème
Blog
Blog
FeaturedPost
PopularPosts
headerByline 2
Blog
Blog
FeaturedPost
PopularPosts
headerBylineOverride 2
Blog
Blog
FeaturedPost
PopularPosts
footerBylines 2
Blog
Blog
FeaturedPost
PopularPosts
footerBylinesOverride 2
FeaturedPost
PopularPosts
snippetedPostByline 2


Les autres versions

Aucune.

Posts les plus consultés de ce blog

Character DATA [CDATA]