Els filtres

Els filtres transformen el contingut de la base de dades en codi HTML presentable.

Si els BUCLES permeten estructurar la pàgina de manera lògica, només resta presentar les dades d’una forma estètica. És una qüestió de disseny i SPIP no pot fer res per vostè, però aprenga a utilitzar els filtres...

Una dada emmagatzemada a la base de dades es presenta com un bloc de text, pot ser es tinga ganes de manipular el seu valor abans d’afegir-la a la pantalla. Els filtres estan fets per açò:

-  els filtres més emprats (són cridats automàticament) són ltypo i lprope; el primer és un corrector tipogràfic, la missió del qual és principalment afegir espais no fraccionables on calga (cf. l’ajuda en línia d’SPIP); el segon es fixa amb els paràgrafs, amb els recordatoris SPIP (itàliques, negreta, intertítols, etc.) - no s’aplica per defecte excepte en els textos llargs (#TEXTE, #CHAPO, etc.)

-  altres filtres són molt útils: citem |majuscules (de funcionalitat evident), |justifier o |aligner_droite (que defineix l’alineació del text per amb relació als bordes verticals), o l’esotèric |saison (estació) (que afegeix "estiu" si la variable és una data compresa entre el 21 de juny i el 20 de setembre)...

Per a emprar un filtre cal rodetjar la variable entre parèntesis i corxets (després es voran les implicacions) : blah blah (#VARIABLE

Es poden encadenar uns filtres amb altres [1]: així [(#DATE|saison|majuscules)] s’afegirà "Hivern".

Exercici referit al conjunt de les lliçons precedents: Ficar en majúscules els títols dels deu articles més recents de la secció passada en context i posar al cap de la pàgina l’estació actual (és a dir l’estació en la qual ha estat publicat l’article més recent de tota la base).

...

Perquè aquests corxets? Suposem que la vostra base conté articles datats i altres que no porten data. La variable #DATE val "2001-07-01 10-53-01" (data amb el format MySQL) al primer cas i "0000-00-00-00" al segon. Per afegir la data dins d’un bonic (?) quadre dins de l’esquelet que escrivim a continuació:

[<table border="1"><tr><td>
(#DATE|affdate)
</td></tr></table>]

Aquí el filtre laffdate afegeix la data en lletres (amb el format "1er de juliol de 2001") [2], però reenvia una cadena buida si la data és desconeguda (igual a "0000..."). Els corxets delimiten allò que cal afegir al voltant de la data si el resultat entre parèntesis no és una cadena buida.

Resultat: solament els articles datats provoquen que s’afegisca una taula que conté la data. Un esquelet ben construït definirà precisament allò que cal afegir o no en funció del contingut... Els filtres serveixen també per a això.

Notes

[1Es pot anomenar també això com a "pipeline" (canonada)...

[2La llengua en que apareix la data és la llengua principal del lloc.

Fem notar que certs filtres de presentació poden ser reemplaçats per fulles d’estil. Així |majuscules és equivalent a l’atribut CSS "text-transform: uppercase" i |justifier a "text-align: justify".

Llegir Spip i les fulles d’estil per més detalls per més informació respecte els estils CSS oferts per SPIP.

Autor laura Publié le : Mis à jour : 21/03/23

Traductions : عربي, català, corsu, Deutsch, English, Español, français, italiano, Nederlands, Português, русский, slovenčina, Türkçe, українська