La balise d'attributs / The attributes tag : <b:attr>

Blogger - La balise d'ajout d'attributs <b:attr>

La balise singleton <b:attr> est une balise d'instruction qui permet d'ajouter à la balise parente un quelconque attribut et une valeur.



La syntaxe

XML
<div>

  <b:attr cond='CONDITION' name='ATTRIBUTE_NAME' value='VALUE'/>

</div>
  • La balise <b:attr> travaille dans l'ensemble du code XML, excepté à l'intérieur d'un balisage <![CDATA[.

  • Plusieurs balises <b:attr> peuvent se cumuler.

  • Les balises <b:attr> ne peuvent pas s'imbriquer.



Les attributs

La balise doit contenir plusieurs attributs dont certains sont obligatoires.

<b:attr cond='CONDITION'
        name='ATTRIBUTE_NAME'
        value='VALUE'/>

<b:attr cond='CONDITION'
        expr:name='EXPRESSION'
        expr:value='EXPRESSION'/>

Attributs Description Classification Préfixe « expr: » Implantation
name

Nom de l'attribut

La valeur attendue est le nom de l'attribut qui sera ajouté à la balise parente.

Accompagné du préfixe expr:, la valeur peut-être :

  • Une donnée de type string.

  • Une expression Blogger dont le résultat est de type string.

Classification : HTML classic Préfixe « expr: » : Autorisé Implantation : Obligatoire
value

Valeur de l'attribut

La valeur attendue est la valeur de l'attribut qui sera ajouté à la balise parente.

Lorsque la valeur est inexistante, l'attribut n'est pas ajouté.

Accompagné du préfixe expr:, la valeur peut-être :

  • Une donnée de type string.

  • Une expression Blogger dont le résultat est de type string.

Classification : HTML classic Préfixe « expr: » : Autorisé Implantation : Obligatoire
cond

Condition d'exécution de la balise

La valeur attendue doit être boolean (true ou false).

Elle peut être une valeur explicite, une donnée ou une expression Blogger.

Classification : XML Blogger Expression Préfixe « expr: » : Autorisé Implantation : Facultative


Quelques exemples

Ajouter un ID

<div>

  <b:attr name='id' value='ILOVEBLOGGER'/>

</div>

Le nouvel attribut id dont la valeur est ILOVEBLOGGER sera ajouté à la balise parente <div> dans le rendu HTML.

Résultat

<div id='ILOVEBLOGGER'>

</div>

Ajouter un attribut avec une condition

<div>

  <b:attr cond='data:view.isHomepage' name='style' value='background: transparent'/>

</div>

Le nouvel attribut style dont la valeur est background: transparent, sera ajouté à la balise parente <div> dans le rendu HTML uniquement si la page courante est la page d'accueil.

Résultat si vrai

<div style='background: transparent'>

</div>

Résultat si faux

<div>

</div>

Ajouter un attribut dont la valeur est une expression

<a>

  <b:attr name='href' expr:value='data:blog.homepageUrl path "/search/" params { label: "TOTO" }'/>

  LINK

</a>

Le nouvel attribut href sera ajoutée à la balise parente <a> dans le rendu HTML. La valeur sera une URL.

Résultat

<a href='https://BLOG_NAME.blogspot.com/search?label=TOTO'>

 LINK

</a>

Ajouter plusieurs attributs

<a>

  <b:attr name='href' expr:value='data:view.url'/>
  <b:attr name='target' value='_blank'/>
  <b:attr name='title' expr:value='data:view.title'/>

  LINK

</a>

Les nouveaux attributs href, target et title seront ajoutés à la balise parente <a> dans le rendu HTML..

Résultat

<a href='https://BLOG_NAME.blogspot.com/' target='_blank' title='PAGE_TITLE'>

  LINK

</a>


Remarques additionnelles

Remarque 1

Lorsque la balise <b:attr> est intégrée dans une balise singleton comme <img>, <input>, <link>, <meta>, etc, l'éditeur soulignera la balise de fermeture en rouge. Afin d'éviter l'erreur, remplacez la balise singleton par une balise <b:tag>.

<b:tag name='img' expr:src='data:view.featuredImage'>

  <b:attr name='alt' value='My image'/>

</b:tag>

Remarque 2

ATTENTION FONCTIONNALITÉ BETA !!!

Pour refermer une balise singleton ouverte, ajoutez à l'intérieur une nouvelle balise <b:attr> avec le nom b:whitespace et la valeur remove.

<b:tag name='img' expr:src='data:view.featuredImage'>

  <b:attr name='b:whitespace' value='remove'/>
  <b:attr name='alt' value='My image'/>

</b:tag>


Spotlight

Populaires cette semaine