Les variables de text d'una pàgina són variables de tipus cadena que es creen al text d'una pàgina (el que normalment s'edita), i es poden oferir automàticament per a ser incloses a altres pàgines.
Definició de Variables de Text d'una Pàgina
Hi ha tres modes per a definir Variables de Text d'una Pàgina automàticament:
- useu una llista de definicions - la sintaxis normal de les llistes de definicions crea una variable de text
Exemple de llista de definicions:
:Nom: Definició del nom
"{$:Nom}"
| - Nom
- Definició del nom
"Definició del nom"
|
Açò crea una nova variable a la qual podem accedir amb {$:Nom} (esdevenint: "Definició del nom") a la pàgina.
- useu únicament el caràcter de dos punts (
:) com a separador al text
Exemple de separació amb els dos punts:
Correu: meu@exemple.com
"{$:Correu}"
| Correu: meu@exemple.com
"meu@exemple.com"
|
Açò crea la variable {$:Corre} (esdevenint: "meu@exemple.com") a la pàgina.
- amb el format d'una directiva oculta - etiquetes de PmWiki que no es renderitzen a la pàgina, però creen la variable
Exemple de directiva:
(:Pais: Països Catalans:)
"{$:Pais}"
| "Països Catalans"
|
Açò crea la variable {$:Pais} (esdevenint: "Països Catalans") a la pàgina.
Nota: Es desencoratja l'ús de caràcters fora de l'alfabet ASCII, per tant, no s'han d'usar caracters accentuats, la ce trencada, etc.
Ús
Ús a la mateixa pàgina
Quan esteu a la mateixa pàgina, podeu accedir a les variables de text mitjançant el format {$:Var} (mostrat a dalt).
Ús a les capçaleres i els peus de pàgina: referències especials
Si voleu que una pàgina del tipus GroupHeader, GroupFooter, SideBar, etc. accedeixi a una variable de text de la pàgina principal, heu d'incloure una informació de referència especial.
Per a referir-vos explícitament a la variable de text de la pàgina que s'està mostrant afegiu un asterisc a l'etiqueta de la variable de text: {*$:Correu} a la pàgina GroupFooter o GroupHeader.
Per a incloure una variable de text de la capçalera o del peu de pàgina vegeu més abaix l'ús des d'altres pàgines.
Ús des d'altres pàgines
Si voleu extreure les dades d'un altra pàgina, useu el format {Grup/NomPagina$:Var}.
Exemple:
Poble: Alcoi
(:Llac:L'estany pudent:)
:Muntanya:Penyagolosa
->"{PmWikiCa/PageTextVariables$:Poble}"
->"{{$FullName}$:Llac}"
->"{PmWikiCa/PageTextVariables$:Muntanya}"
| Poble: Alcoi
- Muntanya
- Penyagolosa
"Alcoi"
"L'estany pudent"
"Penyagolosa"
|
Ús des de pàgines incloses
Les variables de text d'una pàgina mai s'inclouen des de la pàgina font.
Vegeu dalt l'ús des d'altres pàgines per a fer referència a les variables de text d'altres pàgines.
Ús amb llistats de pàgines
Els Llistats de pàgines també poden accedir a les variables de text:
Exemple:
(:pagelist group=PmWikiCa order=$:Summary count=6 fmt=#singleline:)
|
|
I per a crear nous formats de llistats (com els que hi ha documentats a Site.Page List Templates, Page Lists, Page List Templates?, Page Variables?. Deseu-los a Site.Local Templates?).
Els Llistats de pàgines també poden usar variables de text d'una pàgina per a seleccionar les pàgines:
Exemple:
(:pagelist group=PmWiki $:Ciutat=Paris count=8 fmt=#singleline order=-name:)
|
|
llista les pàgines que tenen definida la variable '$:Ciutat' a 'Paris'.
Exemple: seleccions múltiples amb espais
(:pagelist group=PmWiki $:Ciutat="Addis Ababa,Paris" order=-$:Version count=8 fmt=#singleline:)
|
|
totes les seleccions s'han d'envoltar de 'cometes'.
- Quan s'usen les variables de text per a la selecció o ordenació de pàgines, no cal ficar les claus (
{,}) al voltant del nom de la variable. Les claus provoquen la substitució abans que s'avaluï l'ordre per a generar el llistat de pàgines.
Provar si la variable està definida o no
| =- | la variable de text està definida (no és buida), p.ex. (:pagelist $:Var=- :) |
| =-?* | la variable de text no està definida (és buida), i.e. cap caràcter seguit de 0 o més caràcters, p.ex. (:pagelist $:Var=-?* :) |
| =* | mostra totes les pàgines, sense importar la variable de text (lent) |
| =-* | no mostres cap pàgina, sense importar la variable de text (lent) |
Consell : (:if ! equal "{$:PTV}" "":) comprovarà si PTV és buida/no-definida o no.
Exemple: Pàgines que no tenen definit un resum (summary)
(:pagelist group=PmWikiCa $:Summary=-?* count=6 fmt=#singleline:)
|
|
Ús de les variables de text a les plantilles
Mostra les pàgines per la variable de text Audience.
Exemple:
>>comment<<
[[#byaudience]]
(:if ! equal '{=$:Audience}' '{<$:Audience}':)
-<'''{=$:Audience}''':
(:ifend:)
[[{=$Name}]]
[[#byaudienceend]]
>><<
(:pagelist group=PmWikiCa count=10 fmt=#byaudience order=-$:Audience:)
|
|
Les variables de text d'una pàgina s'assignaran/avaluaran abans que s'avalui cap sentència condicional. Això vol dir que no es pot declarar un variable de text a dintre d'una condició if...else; i també que una variable tindrà un valor tot i haver estat definida dintre d'una sentència condicional (:if false:)....(:if:).
Ús - des de dintre de codi (només per a desenvolupadors)
La funció estàndard PageVar($pagename,$varname) pot tornar variables de text d'una pàgina, però recordeu incloure els dos punts i el símbol de dolar així:
Funciona llegint totes les variables (de text) que troba a una pàgina (a $PCache) i tornant la que s'ha demanat.
Traducció de PmWiki.PageTextVariables -
Pàgina original a PmWikiCa.PageTextVariables -
Backlinks