Boucles et Balises SPIP 2.0.6

Slides:



Advertisements
Présentations similaires
Créer un site web en équipe
Advertisements

1 Georgeta Bădău CRÉATION ET GESTION DUN BLOG AVEC LA PLATE-FORME LEWEBPEDAGOGIQUE.COM Séance no.4.
Support.ebsco.com Liste de résultats EBSCOhost Didacticiel.
Tutoriel SPIP Rédacteur.
Tutorial dutilisation du forum du BDS By Youl. 1- Linscription 2- Parcourir le forum Catégorie Sujet Message 3- Poster un message 4- Utilisation avancée.
La fonction Style Permet de créer des types de texte, par exemple
Quest-ce quun lien ?. Exemple à partir du site du ministère de léducation nationale A la page daccueil, vous y trouvez du texte et … des liens vers dautres.
12 novembre 2012 Grégory Petit
CREATION DE FEUILLE DE STYLE pour structuré le document XML
ONRN V2 Guide de contribution. Organisation des documents Listes de valeurs Ce répertoire contient les listes de valeurs qui sont utilisées pour qualifier.
Rédaction dun article sur le site internet du CRCACK Lien administration :
Le portail des sports des associations de la ville de Nice
API Présentation Comment ajouter des pages. Vous voici dans notre site « laboratoire » pour la démonstration RAJOUTER UNE PAGE.
Les requêtes La Requête est une méthode pour afficher les enregistrements qui répondent à des conditions spécifiques. La requête est donc un filtre.
Mars 2013 Grégory Petit
Vice-rectorat de Mayotte
Créer une animation simple Gif avec ImageReady.
Recherche avancée multi-champs EBSCOhost
Rédacteur 1. Sommaire Connexion Interface SPIP Menu SPIP Rédiger un article Interface de création dun article Fonctionnalités de base Statut de larticle.
Documentation pour webmestre site sud-aerien.org
18/05/ Utiliser le cahier de texte en ligne avec lapplication SPIP Adresse du site du lycée :
OUTILS PRÉPARATION DE RENTRÉE La récupération de la liste des élèves présents dans lapplication SCONET.
Les instructions PHP pour l'accès à une base de données MySql
28 novembre 2012 Grégory Petit
Le menu « Actualités » © Michel DURIEUX – Février 2007.
Maîtriser le langage HTML Les Formulaires. Dans cette section on verra comment diviser un formulaire en plusieurs blocs principaux avec un titre pour.
Manipulation de formulaires en Javascript
Les Fonctions. Définir une fonction Sections de code indépendantes que lon peut appeler à nimporte quel moment et dans nimporte quel ordre. Bout de code.
Introduction à la programmation I Fonctions Structures de contrôle Structures de données (arrays simples et indexés) Variables locales et globales.
François Daniel Giezendanner, SEM (Service Ecoles et Medias) - DIP - Genève, 4-5 Théodore-de-Bèze, 1205 CH-Genève Tél: / ,
Boucles et Balises SPIP 1.7.2
Le fonctionnement du cache Diverses manières de présenter En 5 Versions François Daniel Giezendanner, SEM (Service Ecoles et Medias) - DIP - Genève, 5.
Les Boucles et Balises SPIP 2.0.6
Les Boucles et Balises SPIP Prendre en compte les éléments et relations : Maîtriser la syntaxe et exploiter les générateurs de boucles et balises.
François Daniel Giezendanner, SEM (Service Ecoles et Medias) - DIP - Genève, 4-5 Théodore-de-Bèze, 1205 CH-Genève Tél: / ,
LAssistant Dreamweaver pour SPIP « Ce fichier PowerPoint est téléchargeable à ladresse : »
Feuilles de Styles en Cascade
Veolia Consommateurs Contenu
Passer au CSS et autres... Quelle différence entre ces deux pages ? Si vous regardez uniquement le contenu, aucune. Tout se joue sur la mise en forme.
Création et présentation d’un tableau avec Word 2007
Regroupement du 20 janvier 2014 Syntaxe Wiki
Le site-en-kit pour les locales 2. Créer des pages.
Un site sous SPIP Un nouveau système de publication sur le net Collège Charles Rieu A.T.I. Pélofi Stéphane.
Manuel Kervarker.org : l'accueil
Initiation aux bases de données
LES INFOS de Philippe et Patrick Journal d'informations en ligne Infospp.free.fr Mai 2006.
1 Utiliser un blog “écrire un billet ou un commentaire et le publier” Quelques données techniques: Un blog est une suite d’articles appelés billets, publiés.
Créer et Faire Vivre un Site Web Pédagogique Stage 09A013.
Xi HUA Wenyun DAI Morgane GIRONA
POWERPOINT.
1 Tutoriel SPIP Rédacteur. 2 Sommaire Connexion Interface SPIP Menu SPIP Rédiger un article Interface de création d’un article Fonctionnalités de base.
Bienvenue dans le cours sur l’édition de texte sur un site web
Vous voici dans notre site « laboratoire » pour la démonstration AJOUTER UNE PAGE Cliquez sur ENTREZ ICI pour accéder à la partie administration.
GUIDE D’UTILISATION SITE STE BATHILDE. Sommaire 1.Connexion - La page d’accueil 2.Gérer les articles: - Création - Modification - Suppression 3.Gérer.
Scénario Les scénarios permettent de modifier la position, taille … des calques au cours du temps. Son fonctionnement est très proche de celui de Macromedia.
1 Présentation de DREAMWEAVER (1) Gaël TREMEAU GI05 Printemps 2006.
Présentation de Dreamveawer
Exposé DREAMWEAVER 2 Guillaume DUBREUIL Adrien HADOUX.
Dreamweaver le retour Avec Les Formulaires Les Calques
Plan de la présentation Le langage HTML Dreamweaver MX Les premiers outils pour créer une page web :  Propriétés d’une page  Création de cadres  Création.
FORMULAIRES FOMULAIRE Permet à l’utilisateur d’entrer des renseignements le concernant. Utilisation –Inscription sur un site –Mise à jour d’une base.
On va découvrir la magie de ....
Formation.
Introduction au HTML Qu’est ce que le HTML ?
CRÉER UN MUR VIRTUEL Pierre BINET Collège Jean Fernel CLERMONT.
1 er séance SI28 A2004 YIN Lei Emmanuel Eugene. Plan de l’exposé  Introduction au HTML  Le HTML dans le bloc-notes (notepad)  Présentation de Dreamweaver.
TP ISN-Terminale S Notion de code HTML. I) Visualisation du code source d’une page web Se mettre sur une page web quelconque : clic droit, Afficher la.
Mise à jour en février 2013 Ecrire un commentaire Accéder au tableau de bord Changer son mot de passe Écrire un nouvel article Importer une image Publier.
KOSMOS 1 Les activités de l’enseignant Module 6 1.Le cahier de textes des classes 2.Le travail à faire et les corrections 3.Le classeur pédagogique 4.Les.
Utilisation des squelettes Association Rhizomes – 11 août 2006.
Transcription de la présentation:

Boucles et Balises SPIP 2.0.6 TRAVAUX PRATIQUES Fichier HTML Règles CSS Boîtes imbriquées Arborescence des balises HTML </BOUCLEn> <BOUCLEn(TYPE){critère1}...{critèrex}> Code HTML + Balises SPIP Boucles et Balises SPIP Prendre en compte les éléments Maîtriser la syntaxe et Exploiter les générateurs de Boucles et Balises et relations François Daniel Giezendanner, SEM (Service Ecoles et Medias) - DIP - Genève, 5 rue des Gazomètres, 1205 CH-Genève Tél: +41 22 / 388-33-14, francois-daniel.giezendanner@edu.ge.ch -http://icp.ge.ch/sem/cms-spip/ Cours « Squelettes SPIP » - Mardi 21 avril et Mardi 5 mai 2009, 8h00-18h00

Plan de travail proposé Dans le temps imparti pour les Travaux Pratiques (TP) vous choisirez en fonction de vos objectifs et ambitions, l’un des trois axes d’activité suivants (ordre croissant de difficulté) : 1. Procéder selon le tutoriel SPIP original tel qu’il est proposé sur le site spip.net et reproduit-complété dans ce document pour la présentation, en y apportant vos touches personnelles 2. Reprendre l’un des 10 fichiers types du squelette SPIP et procéder à diverses modifications/compléments des boucles et balises SPIP 3. Utiliser l’un des trois templates présentés dans « CSS : Quelques exemples de mise en page fluide en n colonnes » (http://icp.ge.ch/sem/cms-spip/article.php3?id_article=166) et y « insérer » l’un des 10 fichiers types du squelette SPIP, puis procéder à diverses modifications des « Boucles & Balises SPIP »

Rappel (1/1) <B_nom> Code HTML optionnel avant <BOUCLE_nom(TYPE){critère1}{critère2}...{critèrex}> Code HTML [ texte optionnel avant (#BALISE|filtre|filtre...) texte optionnel après ] <BOUCLE_recursive(BOUCLE_nom)> </BOUCLE_recursive> </BOUCLE_nom> Code HTML optionnel après </B_nom> Code HTML alternatif <//B_nom>

En début de chaque squelette (1/1) En début de chaque squelette placez systématiquement la balise : #CACHE{0} Ainsi la page sera systématiquement recalculée Une fois le squelette terminé, une valeur courante est : #CACHE{24*3600}

Mon premier squelette (1/4) Afficher le Titre de l’article 1 Dans le répertoire squelettes, déposez un fichier « tutoriel.html », qui contient ce qui suit : <BOUCLE_article(ARTICLES){id_article=1}> #TITRE </BOUCLE_article> Fichier « tutoriel.html » Le critère id_article est utilisé pour sélectionner un article, en l'occurrence ici l’article 1. Maintenant rechargez la page http://localhost/mon-site/spip.php?page=tutoriel Cette fois SPIP cherche le titre (balise #TITRE) de l’article n°1 de la base, et l’inscrit à la place de #TITRE.

Mon premier squelette (2/4) Afficher le Titre, le Chapo et le Texte de l’article 1 Ajoutez du HTML et d’autres appels de « champs » SPIP au fichier tutoriel.html, en l'occurrence le chapeau (#CHAPO) et le texte principal (#TEXTE) : <BOUCLE_article(ARTICLES){id_article=1}> <h1>#TITRE</h1> <strong>#CHAPO</strong> <div align="justify">#TEXTE</div> </BOUCLE_article> En principe il faudrait faire appel aux CSS mais cela risque de freiner la démarche, car ici, dans cette partie pratique, on ne vise que la maîtrise des Boucles & Balises SPIP. Le design est traité ailleurs. Rechargez la page http://localhost/mon-site/spip.php?page=tutoriel, ce qui donne l'essentiel de l'article n° 1. Ajoutez ensuite les champs manquants pour parfaire l’affichage de l’article : #SURTITRE, #LESAUTEURS, #SOUSTITRE, #NOTES, #PS, etc. Rechargez la page http://localhost/mon-site/spip.php?page=tutoriel, vous obtenez alors toutes les composantes de l'article n° 1. Remarque : Pour afficher l'article 5, il suffit de modifier la ligne qui définit la boucle article : <BOUCLE_article(ARTICLES){id_article=5}>

Mon premier squelette (3/4) Les balises calculées #NOTES #INTRODUCTION #LESAUTEURS #PETITION #URL_ARTICLE #FORMULAIRE_FORUM #FORMULAIRE_SIGNATURE #PARAMETRES_FORUM Toutes les balises d'un article sont récupérables dans un squelette : Les balises #ID_ARTICLE #SURTITRE #TITRE #SOUSTITRE #DESCRIPTIF #CHAPO #TEXTE #PS Les balises #DATE #DATE_REDAC #DATE_MODIF #ID_RUBRIQUE #ID_SECTEUR #NOM_SITE #URL_SITE #VISITES #POPULARITE #LANG Les logos #LOGO_ARTICLE #LOGO_ARTICLE_RUBRIQUE #LOGO_RUBRIQUE #LOGO_ARTICLE_NORMAL #LOGO_ARTICLE_SURVOL

Mon premier squelette (4/4) <BOUCLE_article(ARTICLES) {id_article=5} <html> <head> <titre>#TITRE</titre> </head> <body> [(#LOGO_ARTICLE||image_reduire{200,200})] <h2>#SURTITRE></h2> <h1>#TITRE></h1> <h2>#SOUSTITRE></h2> <strong>#CHAPO</strong> <div align="justify">#TEXTE</div> [<h2>Notes :</h2>(#NOTES)] <p><small> [(#DATE|nom_jour) ][(#DATE|affdate)] [, Auteurs : (#LESAUTEURS)]</small></p> <blockquote>Post-scriptum : #PS </blockquote> </body> </html> </BOUCLE_article> Exemple Afficher : Surtitre Titre Soustitre Chapo Texte Notes Date Auteurs PS de l’article 5

Un squelette, plusieurs articles (1/2) Afficher des éléments en fonction du contexte Comme vous le voyez, on remplace simplement {id_article=1} par {id_article} tout court. Voilà : en rechargeant la page avec l'URL http://localhost/mon-site/spip.php?page=tutoriel&id_article=2 vous obtenez maintenant l’article 2. <BOUCLE_article(ARTICLES){id_article}> Modifions dans le squelette « tutoriel html » la ligne qui définit la « boucle article » : Afficher n’importe quel article : <BOUCLE_article(ARTICLES){id_article=1}> <h1>#TITRE</h1> <strong>#CHAPO</strong> <div align="justify">#TEXTE</div> </BOUCLE_article> Pour cela nous allons appeler notre page Web avec le paramètre id_article=2 pour appeler l'article 2 : http://localhost/mon-site/spip.php?page=tutoriel&id_article=2 Echec : c'est toujours l’article 1 (et pas le 2) qui s'affiche.

Un squelette, plusieurs articles (2/2) <BOUCLE_article(ARTICLES){id_article}> <h1>#TITRE</h1> <strong>#CHAPO</strong> <div align="justify">#TEXTE</div> </BOUCLE_article> La BOUCLE_article s’exécute dans un «contexte» où id_article est égal à 2 (c’est la valeur qui est passée dans l’URL). Si on lui précise {id_article=1} elle va chercher l’article n° 1; mais si on lui demande juste {id_article}, elle va chercher l’article dont le numéro est indiqué par le contexte (ici l’URL). http://localhost/mon-site/spip.php?page=tutoriel&id_article=1 http://localhost/mon-site/spip.php?page=tutoriel&id_article=2 et http://localhost/mon-site/spip.php?page=tutoriel Voyez-vous la différence ? Les deux premières pages vous donnent les articles n°1 et 2, la troisième n’a pas d’id_article dans son contexte, et génère une erreur. Bravo ! Votre squelette est maintenant « contextuel ». Tapez maintenant :

Une rubrique: les articles du site (1/4) Un contexte qui varie au fur et à mesure des BOUCLES rencontrées. Tous les articles du site Modifions notre squelette « tutoriel.html » de la manière suivante : <BOUCLE_article(ARTICLES)> #TITRE<BR> </BOUCLE_article> Là, on supprime carrément la condition {id_article}, la boucle va donc « courir » sur tous les articles. Attention : cette BOUCLE peut générer une page énorme si la base de données contient déjà de nombreux d’articles, ce qui est le cas de celle du site « CMS-SPIP » qui est chargée pour votre SPIP...

Une rubrique: 10 prem. articles du site (2/4) Un contexte qui varie au fur et à mesure des BOUCLES rencontrées. Les dix premiers articles du site ...mieux vaut prendre vos précautions et ajouter tout de suite par exemple le critère de limitation {0,10} pour limiter aux 10 premiers articles : <BOUCLE_article(ARTICLES) {0,10}> #TITRE<BR> </BOUCLE_article> Résultat : en appelant simplement http://localhost/mon-site/spip.php?page=tutoriel (plus besoin d’id_article désormais, puisque cette condition a été supprimée) les titres des 10 premiers articles publiés s’affichent (sous la forme de liens hypertextes), séparés chacun par un saut de ligne.

Une rubrique: ses 10 premier articles (3/4) Sommaire d’une rubrique En ajoutant le critère de sélection id_rubrique, on produit le sommaire d’une rubrique : <BOUCLE_article(ARTICLES){id_rubrique}> <a href="#URL_ARTICLE">#TITRE</a><br> </BOUCLE_article> <BOUCLE_article(ARTICLES){id_rubrique}{par date}{inverse}{0,10}> <a href="#URL_ARTICLE">#TITRE</a><br> </BOUCLE_article> Afficher les 10 articles les plus récents d’une rubrique Ajoutons les critère de classement {par date} et {inverse} ainsi que le critère de limitation au 10 premiers articles {0,10}, on obtient ainsi les liens hypertextes avec le titre des 10 derniers articles publiés (classement anti-chronologique) :

Une rubrique (4/4) Prenons dans l’ordre : id_rubrique : ne prend que les articles appartenant à la rubrique id_rubrique (cf. ci-dessous pour que cette variable soit définie dans le contexte de notre BOUCLE_article). {par date}{inverse} : trie par date dans l’ordre décroissant. {0,10} : ... et prend les 10 premiers résultats. Enfin, <a href="#URL_ARTICLE">#TITRE</a> va afficher non seulement le titre de l’article mais en plus créer un lien vers cet article. Reste à invoquer le squelette, en lui passant le contexte id_rubrique=1 : http://localhost/mon-site/spip.php?page=tutoriel&id_rubrique=1 La magie de SPIP tient dans la combinaison de ce type de fonctionnalités. Si vous êtes arrivé jusqu’ici, c’est gagné !

Les articles du site: anti-chronologique (1/2) On veut afficher les derniers articles publiés, sur le modèle : <html> <body> <h2>"#TITRE" du dernier article publié</h2> <h2>"#TITRE" de l'avant-dernier article publié</h2> ……. </body> Pour dire à SPIP d'afficher ces articles, il faut : Une boucle ARTICLES Un critère pour récupérer tous les articles publiés Un critère pour classer par ordre inverse de date de publication

Les articles du site: anti-chronologique (2/2) Donc, créez le fichier "sommaire1.html » : <html> <body> <BOUCLE_sommaire(ARTICLE) {tout} {par date} {inverse}> <h2>#TITRE</h2> <a href="#URL_ARTICLE">Lire l'article</a> </BOUCLE_sommaire> … </body> Critères de sélection pour afficher les articles par ordre anti-chronologique : {tout} : tous les articles {par date} : trier par ordre chronologique {inverse} : inverse l'ordre de tri, afin d'aller du plus récent au plus ancien La boucle est affichée autant de fois qu'il y a d'articles (d'où le terme de "boucle")

Sommaire : les dix derniers articles (1/2) Créez le fichier "sommaire2.html » : <html> <body> <BOUCLE_sommaire(ARTICLE) {tout} {par date} {inverse}{0,10}> <h2>#TITRE</h2> <a href="#URL_ARTICLE">Lire l'article</a> </BOUCLE_sommaire> … </body> Limiter le nombre de résultats avec le critère {début, nombre} début : résultat à partir duquel commence l’affichage (la numérotation commence à 0) nombre : nombre de résultats à afficher Exemple : {0, 10} affiche dix articles à partir du premier (qui porte le numéro zéro) {3, 5} : affiche cinq articles à partir du quatrième (qui porte le numéro 3) Limiter le nombre de résultats avec le critère {a/b} a/b représente la portion à afficher. Par exemple, 1/3 demande l’affichage du 1er tiers des résultats, alors que 3/4 demande l’affichage du 3ème quart des résultats.

Sommaire : les dix derniers articles (2/2) Exploiter la syntaxe complète des boucles et les listes <html> <body> <B_sommaire> <h3>Les dix derniers articles publiés sur le site sont :</h3> <ul> <BOUCLE_sommaire(ARTICLE) {tout} {par date} {inverse}{0,10}> <li> <h2>#TITRE</h2> <a href="#URL_ARTICLE">Lire l'article</a> </li> </BOUCLE_sommaire> </ul> <h3>Fin de la liste des articles</h3> </B_sommaire> <h3>Désolé, ce site ne contient pas d'articles !</h3> <//B_sommaire> </body>

Boucles en boucles : auteurs d’articles (1/3) Boucles imbriquées pour afficher les auteurs de chaque article : utiliser une boucle "AUTEURS" à l'intérieur d’une boucle "ARTICLES". <html> <body> <BOUCLE_sommaire(ARTICLE) {tout} {par date} {inverse}> <h2>#TITRE</h2> <a href="#URL_ARTICLE">Lire l'article</a> <p>Article écrit par : <BOUCLE_auteurs(AUTEURS)> #NOM </BOUCLE_auteurs> </p> </BOUCLE_sommaire> … </body> Problème : sans critère de sélection, la boucle auteur affiche tous les auteurs du site

Boucles en boucles : auteurs d’articles (2/3) Boucles imbriquées pour afficher les auteurs de chaque article : utiliser une boucle "AUTEURS" à l'intérieur d’une boucle "ARTICLES". <html> <body> <BOUCLE_sommaire(ARTICLE) {tout} {par date} {inverse}> <h2>#TITRE</h2> <a href="#URL_ARTICLE">Lire l'article</a> <p>Article écrit par : <BOUCLE_auteurs(AUTEURS) {id_article} > #NOM </BOUCLE_auteurs> </p> </BOUCLE_sommaire> … </body> En ajoutant le critère {id_article} à la boucle AUTEURS, on n'affiche que les auteurs de l'article.

Boucles en boucles : auteurs d’articles (3/3) Toutes les balises d'un auteur sont récupérables dans un squelette : Les balises #ID_AUTEUR #NOM #BIO #EMAIL #NOM_SITE #URL_SITE #PGP #LANG #FORMULAIRE_ECRIRE_AUTEUR Les balises calculées #NOTES #URL_AUTEUR Les logos #LOGO_AUTEUR

Boucles en boucles : rubrique-articles (1/3) Affichons sur la même page, les éléments de la rubrique elle-même : son titre, son texte de présentation, etc. <BOUCLE_rubrique(RUBRIQUES){id_rubrique}> <h1>#TITRE</h1> <BOUCLE_article(ARTICLES){id_rubrique}{par date}{inverse}{0,10}> <a href="#URL_ARTICLE">#TITRE</a><br> </BOUCLE_article> [(#TEXTE|justifier)] </BOUCLE_rubrique> On appelle la page avec l’URL : http://localhost/mon-site/spip.php?page=tutoriel&id_rubrique=1. La boucle ARTICLES est intégrée dans une boucle RUBRIQUES. Le contexte de la boucle ARTICLES est l’id_rubrique donné par la boucle RUBRIQUES, qui elle même va chercher le contexte donné par l’URL (id_rubrique=1). Donc nous sommes bien, au niveau des ARTICLES, avec l’id_rubrique demandé. De ce point de vue rien ne change.

Boucles en boucles : rubrique-articles (2/3) <BOUCLE_rubrique(RUBRIQUES){id_rubrique}> <h1>#TITRE</h1> <BOUCLE_article(ARTICLES){id_rubrique}{par date}{inverse}{0,10}> <a href="#URL_ARTICLE">#TITRE</a><br> </BOUCLE_article> [(#TEXTE|justifier)] </BOUCLE_rubrique> Dernière remarque : on a introduit le filtre |justifier sur le champ #TEXTE. Ce filtre modifie le contenu du texte avant de l’installer dans la page finale. [(#TEXTE|justifier)] En revanche, la boucle RUBRIQUES a permit à SPIP de sélectionner les valeurs des champs de la rubrique en question : on peut donc afficher le #TITRE et le #TEXTE de cette rubrique. Notez bien que ce #TEXTE serait celui de la rubrique même si on appelait aussi #TEXTE dans la boucle ARTICLES. Le fonctionnement arborescent de SPIP garantit que le #TEXTE d’un article ne déborde pas de la boucle ARTICLES.

Boucles en boucles : rubrique-articles (3/3) Toutes les balises d'une rubrique sont récupérables dans un squelette : Les balises calculées #NOTES #INTRODUCTION #URL_RUBRIQUE #DATE #FORMULAIRE_FORUM #PARAMETRES_FORUM #FORMULAIRE_SITE Les balises #ID_RUBRIQUE #TITRE #DESCRIPTIF #TEXTE #ID_SECTEUR #LANG Les logos #LOGO_RUBRIQUE #LOGO_RUBRIQUE_NORMAL #LOGO_RUBRIQUE_SURVOL

Brèves (1/3) Afficher les dix dernières brèves publiées sur tout le site : <BOUCLE_breves(BREVES) {par date} {inverse} {0,10}> Afficher les dix dernières brèves publiées dans une rubrique particulière : <BOUCLE_breves(BREVES){id_rubrique} {par date} {inverse} {0,10}> Afficher la brève dont l’id_breve = 5 : <BOUCLE_breves(BREVES){id_breve=5}> Afficher la brève dont l’id_breve est défini dans l ’URL : <BOUCLE_breves(BREVES){id_breve}>

Brèves (2/3) Toutes les balises d'une brève sont récupérables dans un squelette : Les balises calculées #NOTES #INTRODUCTION #URL_BREVE #FORMULAIRE_FORUM #PARAMETRES_FORUM Les balises #ID_BREVE #TITRE #DATE #TEXTE #NOM_SITE #URL_SITE #ID_RUBRIQUE #LANG Les logos #LOGO_BREVE #LOGO_BREVE_RUBRIQUE

Un squelette breves.html simple : Brèves (3/3) Un squelette breves.html simple : <BOUCLE_principale(BREVES) {id_breve}> <html> <head><titre>#TITRE</titre></head> <body> [(#LOGO_BREVE||image_reduire{200,200})] <p><small>[(#DATE|nom_jour)][(#DATE|affdate)]</small></p> <h1>#TITRE</h1> <div align="justify">#TEXTE</div> [<div align="right">Voir en ligne : <a href="#URL_SITE">#NOM_SITE</a></div>] [<div class="notes"><h2>Notes: </h2>(#NOTES)</div>] </body> </html> </BOUCLE_principale>

Boucles récursives: rubriques arboresc. (1/2) L’arborescence des rubriques d’une rubrique Les Boucles récursives s'appellent elles mêmes jusqu'à ne plus rencontrer d'occurrence. Elles sont souvent utilisées pour dérouler des structures arborescentes. <BOUCLE_rubrique(RUBRIQUES){id_parent}{par titre}> #TITRE <BOUCLE_ssRubriques(BOUCLE_rubrique)> </BOUCLE_ssRubriques> </BOUCLE_Rubriques>

Boucles récursives : rubriques arboresc. (2/2) ... [(#REM) Si aucun article, affiche un plan de la rubrique ] <B_sous_rubriques> <div class="menu rubriques"> <h2><:sous_rubriques:></h2> <ul> <BOUCLE_sous_rubriques(RUBRIQUES) {id_parent} {par num titre, titre}> <li> <a href="#URL_RUBRIQUE">[(#TITRE)]</a> [(#REM) Une boucle recursive pour le mini plan] <B_miniplan> <BOUCLE_miniplan(RUBRIQUES) {id_parent} {par num titre, titre}> <BOUCLE_m2(BOUCLE_miniplan)></BOUCLE_m2> </li> </BOUCLE_miniplan> </ul> </B_miniplan> </BOUCLE_sous_rubriques> </div> </B_sous_rubriques> Boucles récursives : rubriques arboresc. (2/2) Extrait du squelette rubrique.html dans le répertoire /squelettes-dist/ de SPIP 2.0.6

Des filtres (1/3) Si les BOUCLES & les BALISES permettent de structurer la page de manière logique, reste à présenter les données de manière esthétique. Question design SPIP ne peut rien pour vous, mais sachez user de ses filtres... les filtres les plus utilisés (ils sont appelés automatiquement) sont |typo et |propre : |typo : correcteur typographique, dont la mission principale est d’ajouter des espaces insécables où il en faut (cf. l’aide en ligne de SPIP) |propre : s’intéresse aux paragraphes, aux raccourcis SPIP (italiques, gras, intertitres, etc.) - il n’est appliqué par défaut qu’aux textes longs (#TEXTE, #CHAPO, etc.)

Des filtres (2/3) d’autres filtres sont très utiles, citons : |majuscules à la fonctionnalité évidente |justifier ou |aligner_droite qui définissent l’alignement du texte par rapport aux bords verticaux |saison qui affiche « été » si la variable est une date comprise entre le 21 juin et le 20 septembre...

Comment utiliser un filtre ? Des filtres (3/3) Comment utiliser un filtre ? Pour utiliser un filtre il faut entourer la variable de parenthèses et de crochets : Pour utiliser un filtre il faut entourer la variable de parenthèses et de crochets : [blah blah (#VARIABLE|filtre) bloh bloh] [blah blah (#VARIABLE|filtre) bloh bloh] On peut enchaîner les filtres les uns à la suite des autres : ainsi : [(#DATE|saison|majuscules)] affichera-t-il « HIVER » [(#DATE|saison|majuscules)] affichera-t-il « HIVER »