#INFO_

  afficher une information contextuelle sans boucle

Une balise générique SPIP3, pour accéder sans boucle explicite à la valeur #INFO d’un champ dans une table.

Article publié le 8 novembre 2014, et actualisé en décembre 2019

 
 
 
 
 
 
 
 
 
 
 
 

Le langage de squelettes de SPIP traduit tout appel à une table dans une Architecture de boucle.

Pour afficher la valeur d’un champ, cela parait parfois un peu lourd à écrire dans un code de squelette : cette nouvelle balise [1] simplifie l’accès direct à une balise de champ sans nécessiter la boucle englobante.

Syntaxe

Pour obtenir l’information d’un champ d’une table, contenu dans une occurrence précise, il faut donc écrire la balise #INFO_CHAMP [2] en relevant le nom du champ SQL voulu dans la description de la table ou de sa boucle, et indiquer en paramètres (comme dans une boucle), le nom de table, et la valeur de ode-clé (numérique) à utiliser (correspondant au paramètre id_nom-de-table).

Ainsi, L’organisation d’une page ARTICLE vous permet d’identifier La boucle ARTICLES et ses balises de champs ; mais point besoin de recopier cette boucle pour afficher juste un champ d’un enregistrement...
#INFO_TITRE{rubrique, 13} vous permet d’afficher le titre de la rubrique associé sans expliciter une boucle RUBRIQUES sur le critère {id_rubrique=13} particulièrement utile pour juste afficher son libellé dans un attribut <a title="..">.

Attention à vérifier La structure de base de données de SPIP 3, pour contrôler la présence du champ voulu dans votre table de départ ; comme il y a potentiellement plusieurs AUTEURS pour un ARTICLE, l’information #ID_AUTEUR n’est pas stockée dans la table ARTICLE, mais dans une table de lien : dans ce cas particulier, l’accès en est simplifié par une balise calculée #LES_AUTEURS [3]

Ainsi, cette balise permet d’afficher une valeur de champ d’une table, sans devoir écrire explicitement une boucle [4] : elle est donc utile pour simplifier l’écriture de squelettes, surtout ceux présentant des parties conditionnelles [5], ce qui est souvent le cas pour Utiliser des Formulaires.


Merci de nous signaler les coquilles, imprécisions ou erreurs qui figureraient dans cette page.

[1Depuis SPIP 3, le core a intégré cette balise auparavant apportée par Bonux .

[2Comme une balise de champ, parfois évoqué comme champ-SQL !

[3Voir la table de liens La structure de base de données de SPIP 3 et la doc sur SPIP.

[4La requête supplémentaire est néanmoins générée par SPIP : ne comptez pas alléger ainsi la charge serveur !

[5Interdit d’avoir une boucle dans une partie conditionnelle d’une balise : voir Recommandations sur Squelettes et Boucles !


Liens A2A visibles seulement pour les inscrits.
Liens visibles seulement pour les inscrits.

Article publié le 8 novembre 2014, et actualisé en décembre 2019 .

Répondre à cet article