data:widgets[i].id - Blogger Data Documentation

Blogger - data:widgets[i].id
Data Type Gadget Version 1 Gadget Version 2
string Inexistant Global
Description de la donnée
data:widgets[i].id est une donnée universelle Blogger contenant les identifiants des gadgets visibles
Intégration dans le code XML
Dans les nœuds enfants de la balise <html>, excepté à l'intérieur des marqueurs <![CDATA[ ]]>.
Directives d'usage et niveau de priorité de mise à jour
Thème Version 1
Garantie d'usage : Inexistant
Aucune priorité
Thème Version 2
Garantie d'usage : Inexistant
Aucune priorité
Thème Dynamique
Garantie d'usage : Inexistant
Aucune priorité
Thème Version 3
Garantie d'usage : Expérimental
Priorité indéfinie
Disponibilité par défaut par type de pages
Toutes les pages.
Disponibilité par type de gadgets
Tous les types de gadgets.
Longueur maximum de la valeur
Indéfini.
Set de réglages XML
Disponible.
Condition additionnelle
Aucune.
Donnée de gadgets apparentée
widget.instanceId


Ressources

Échantillonnage des ressources


  widgets: 
    id: string,
      
        size: number,
        length: number,
        escaped: string,
        jsEscaped: string,
        jsonEscaped: string,
        cssEscaped: string
      
  

Parenté - Enfant de :



Valeur

L'identifiant d'un gadget est composé du type de gadget, suivi d'un numéro entre 1 et 999.

widgetTypeXXX
Exemple : Le widget Blog
Blog1


Implantation de la donnée

La donnée étant emboîtée dans plusieurs tableaux, le choix de la méthode d'implantation dépendra du résultat que vous voulez obtenir.
Pour réduire le temps de réponse, limitez le nombre de boucles et privilégiez l'usage de filtres :

Filtres par type de gadget Filtres premier et dernier set d'un tableau Les opérateurs de tableaux Les opérateurs Lambdas

Syntaxe basique

<b:loop values='data:widgets' var='widget'>

  <!-- Tag -->
  <data:widget.id/>

  <!-- Attribute value -->
  <b:eval expr='data:widget.id'/>

</b:loop>

Type de gadgets

<!-- METHOD 1 -->
<b:loop values='data:widgets.Profile' var='Profile'>

  <!-- Tag -->
  <data:Profile.id/>

  <!-- Attribute value -->
  <b:eval expr='data:Profile.id'/>

</b:loop>

<!-- METHOD 2 -->
<b:loop values='data:widgets filter (w => w.type == "Profile")' var='Profile'>

  <!-- Tag -->
  <data:Profile.id/>

  <!-- Attribute value -->
  <b:eval expr='data:Profile.id'/>

</b:loop>

Le tableau data:widgets peut être filtré par type de gadgets. Pour obtenir ce résultat, il existe au moins 2 méthodes :

  • La première méthode, en appliquant le type du gadget comme suffixe au tableau.

  • La deuxième méthode, en utilisant un filtre lambda.

Dans nos exemples, nous filtrons pour obtenir les résultats liés à tous les gadgets Profile visibles sur le blog.

Indice de l'item

<b:loop values='data:widgets' var='widget' index='i'>

  <!-- Index [i] -->
  <b:eval expr='data:widgets[i].id'/>

  <!-- Index [i+1] -->
  <b:with value='data:i + 1' var='next'>
    <b:eval expr='data:widgets[next].id'/>
  </b:with>

  <!-- Index [i-1] -->
  <b:if cond='data:i gt 0'>
    <b:with value='data:i - 1' var='prev'>
      <b:eval expr='data:widgets[prev].id'/>
    </b:with>
  </b:if>

</b:loop>

L'indice est un nombre entier positif (0 compris) qui représente la position de l'élément dans un tableau. Il peut être intègré directement dans la donnée de cette manière : data:array[index].item. Quant à la donnée, elle doit obligatoirement être dans un attribut d'expression.
Dans notre exemple, nous utilisons l'indice pour retrouver l'élément courant [i], l'élément suivant [i+1] et l'élément précédant [i-1].

Premier et dernier item

<!-- First -->
<b:eval expr='data:widgets.first.id'/>

<!-- Last -->
<b:eval expr='data:widgets.last.id'/>

first et last sont des filtres qui permettent d'obtenir respectivement le premier et dernier élément d'un tableau sans avoir à recourir à l'usage d'une boucle.

Mappage

<b:loop values='data:widgets map (w => w.id)' var='id'>

  <!-- Tag -->
  <data:id/>

  <!-- Attribute value -->
  <b:eval expr='data:id'/>

</b:loop>

Le mappage est une opération qui consiste à regrouper des items d'un ensemble dans un nouvel ensemble.

Dans ce cas-ci, nous utilisons l'opérateur lambda map.



Réglages de la donnée

Les réglages sont des items contenus dans l'objet de la donnée qui renvoient une nouvelle valeur. Ils s'ajoutent à la suite de la donnée.

Introduction aux réglages des données

Les réglages autorisés pour cette donnée sont :

Longueur de la chaîne de caractères

<b:loop values='data:widgets' var='widget'>

  <!-- WITH SIZE -->
  <data:widget.id.size/>

  <!-- WITH LENGTH -->
  <data:widget.id.length/>

</b:loop>

Le nombre de caractères de la chaîne peut être obtenu en utilisant les suffixes size ou length.

Longueur de la chaîne de caractères

Échappements de la chaîne de caractères

<b:loop values='data:widgets' var='widget'>

  <!-- HTML ESCAPED -->
  <data:widget.id.escaped/>

  <!-- JS ESCAPED -->
  <data:widget.id.jsEscaped/>

  <!-- JSON ESCAPED -->
  <data:widget.id.jsonEscaped/>

  <!-- CSS ESCAPED -->
  <data:widget.id.cssEscaped/>

</b:loop>

La chaîne de caractères peut être échappée en utilisant les suffixes escaped, jsEscaped, jsonEscaped et cssEscaped.

Échappements de la chaîne de caractères



Récipients dans le thème

Cette section répertorie les emplacements des récipients qui accueillent cette donnée.

ID Inclusion Balisage

Il n'y a pas de récipient dans le thème par défaut.



Spotlight

L'Éditeur XML de Thème Blogger : Quand le BackEnd Rencontre le FrontEnd

Populaires cette semaine

Foire aux questions Blogger (Novembre 2021)

Outils de sauvegarde et suppression du blog