PmWikiCa

Variables de text d'una pàgina

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.

Exemple
{*$:Ciutat}

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.

Les referències especials també es poden aplicar a les variables de pàgina? i les plantilles per a llistats de 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:)

Ús de variables de text amb ConditionalMarkup

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í:

$var=PageVar($pagename,'$:City')

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