balise CHAINE_ARG

scoty portrait

Le 18/02/2011

> 13072 visites

Faire passer des arguments dans une chaine-texte de squelette.

Habituellement, dans nos squelettes lorsque nous voulons placer un mot, une phrase d’information ..., texte en "dur", nous utilisons la syntaxe suivante :
<:pfl:code_texte_a_traduire:>
pfl est le préfixe du fichier de langue (squelettes/lang/pfl_fr.php), et où code_texte_a_traduire est remplacé par le mot ou la phrase que l’on souhaite afficher (dans la langue).

Là, si vous débarquez totalement, je vous renvois à la documentation de SPIP traitant de ce sujet : Internationaliser les squelettes.

De nombreuse fois, nous avons voulu placer dans nos squelettes une phrase du genre :
Le site contient 125 documents dans 43 articles que l’on décomposait en plusieurs morceaux de chaines-texte suivies/précédées de la valeur.

Pour n’avoir qu’une seule chaine-texte traduisible, voici la balise CHAINE_ARG. Celle-ci va recevoir 2 arguments, dont le premier est le code de cette chaine-texte et le deuxième est un tableau (array) de "valeurs" à passer.

Syntaxe de CHAINE_ARG

#CHAINE_ARG{'pfl:code_texte_a_traduire',#ARRAY{'a',vala,'b',valb}}
Où en 1er argument :
.. pfl : préfixe du fichier de langue
.. code_texte_a_traduire : le code de la chaine-texte
où en 2e argument il nous faut un tableau (array) que produit la balise Spip #ARRAY{cle1,val1,cle2,val2}(voir doc. de cette balise).

Prenez soins de retenir chaque "cle" de la balise ARRAY - au passage, faite court - car nous allons réutiliser ces "cle" dans notre chaine-texte du fichier de langue.

Syntaxe de la chaine-texte

Dans le fichier de langue (squelettes/lang/pfl_fr.php), vous placerez votre groupe de code/chaine-texte comme d’habitude :

mais vous remarquerez le ’a’ et le ’b’ encadré de ’@’ !
’a’ et ’b’ étant, vous l’avez compris, nos ’cle’ de la balise #ARRAY qui seront remplacées par leurs valeurs respectives ’vala’ ... lors de l’affichage.

Les pros du Dev retrouveront évidemment l’usage du deuxième argument de la fonction _T('pfl:code_texte',array())

Exemple

Dans le squelette :

Dans lang/hug_fr.php :

Ceci va produire dans mon squelette : « Le site contient 87 photos dans 13 galeries. ».

Définition de CHAINE_ARG

Placez le code suivant dans le fichier mes_fonctions.php, ou dans un plugin destiné à l’appel de balises ...

Vous dites .. Les Forums !
Catalogue des fichiers
Ecrire un mail à Scoty ?!
Liste des liens proposés
Fil RSS de KOAKIDI.
Rédacteurs du Site
En savoir plus sur Koakidi.com et Scoty.
... mais ça cause de tout et n’importe quoi !
des skins maisons, pour Winamp 2.xx.
Photos, peintures et autres peut-être.
Des collections d’icones de création maison !
Galeries, Skins, Icônes, et autres babioles ...
Application modifiant divers éléments graphiques de W98 / W2k / XP
Essai : Règles pour JdR ... Eh oui !
Bases et création d’un personnage.
Scoty a - peut-être - des choses à dire !
Puisqu’il vous le dit !
Personnaliser Netscape7 ou Mozilla
Ou ce que Scoty en a fait. Et ça n’engage que lui ! Scripts et autres...
Gospel camerounais, négro spiritual, négro song, gospel
Skins maisons pour le mini notificateur de mails : EzPop.
Le compteur de téléchargement pour SPIP. Installation et Fonctionnalités.
Installation & Mise-à-jour - Fonctionnalités.
Documentation en Français.
Installation & Mise-à-jour - Fonctionnalités.
Documentation en Français.
Divers plugins pour SPIP.
Activité du jour, Balises blocs, Ratelier, Icônes privé.
Plugin de gestion de Forums + Jeu de squelettes
Archives plugins. Scripts pour version de SPIP antérieur à 1.9.x
Installation, configuration, fonctionnalités ...
::: v. 5.0 · scoty ::: koakidi.com © 2002-2017 :::  Crédits  :::  spip   koak2.0  :::  ico  984291  :::