Utilisation des squelettes Association Rhizomes – 11 août 2006
Principe général de SPIP Fichier «.php3 » Fichier «.html » <?php $fond = "article"; $delais = 24 * 3600; include ("inc-public.php3"); ?> <?php $fond = "article"; $delais = 24 * 3600; include ("inc-public.php3"); ?> Exemple pour article.php3 Appel du squelette « article.html » Délai de recréation de la page (système de cache) Par exemple article.html Fichier du squelette : partie à modifier ➢ (X)HTML ➢ Boucles propres à SPIP Les modèles dans /dist/ peuvent être modifiés directement dans le dossier mais déconseillé !!!! Copier les fichiers «.html » dans /dist/ à la racine du site avant de les modifier ou dans le dossier /squelettes/. Accueil : sommaire.html Articles : article.html Brèves : breve.html... URL :
Les boucles Princi pe Dans la base de données, par exemple pour la table des articles : Extraire dans la base de données le contenu de l'article (ou brève...) d'intérêt. Mais aussi, une liste des articles contenu dans une rubrique. Exem ple Il y a n articles dans la rubrique d'intérêt : Titre de l'article 1 Contenu de l'article 1 Titre de l'article 2 Contenu de l'article 2 Titre de l'article 3 Contenu de l'article Titre de l'article n Contenu de l'article n 1 seul code source quelque soit le nombre et le contenu des articles (brèves ou rubriques...)
Les boucles Syntaxe de base... Code (X)HTML et balises SPIP Code (X)HTML et balises SPIP... Avec : n : nom de la boucle (unique) TYPE : le type de boucle (ARTICLES, BREVES...) {critère1} : critères de sélection (requête) Par exemple, sélection des 3 premiers articles de la rubrique #3 classés par date :... Contenu de la boucle Contenu de la boucle...
Les boucles Code HTML optionnel Code optionnel avant la boucle... Code (X)HTML et balises SPIP Code optionnel après Code alternatif Code optionnel avant la boucle... Code (X)HTML et balises SPIP Code optionnel après Code alternatif Avec : n : nom de la boucle (unique) TYPE : le type de boucle {critère1} : critères de sélection (requête) Par exemple, sélection des 3 premiers articles de la rubrique #3 classés par date : Les 3 derniers articles de la rubrique : Contenu de la boucle Il n'y a pas d'article :-( Les 3 derniers articles de la rubrique : Contenu de la boucle Il n'y a pas d'article :-( Il est possible d'insérer des éléments conditionnels : ➢ Si la requète ne retourne rien ➢ Du code HTML avant et après la boucle
Les balises SPIP Principe de base Exemple : Les 3 derniers articles de la rubrique : [(#LOGO) ]#TITRE par #AUTEUR le #DATE Il n'y a pas d'article :-( Les 3 derniers articles de la rubrique : [(#LOGO) ]#TITRE par #AUTEUR le #DATE Il n'y a pas d'article :-( Toutes les balises SPIP commencent par # (dièse) Balises optionnelles La balise #LOGO est une balise optionnelle. Ce qu'il y a entre crochets n'apparaîtra que si l'auteur a défini un logo. Dans notre exemple, on ne passe une ligne que s'il y a une image.
Les balises SPIP Boucles imbriquées Exemple pour faire apparaître la liste des rubriques avec le titre des 3 premiers articles : #TITRE #TITRE (faisant parti de la rubrique #_mes_rubriques:TITRE) #TITRE #TITRE (faisant parti de la rubrique #_mes_rubriques:TITRE) Il est possible d'imbriquer des balises entre elles. Appliquer des filtres Pour mettre le titre en majuscule et le justifier le contenu : [(#TITRE|majuscules)] [(#TEXTE|justifier)] [(#TITRE|majuscules)] [(#TEXTE|justifier)]
Caractéristiques des boucles La boucle ARTICLES Critères de sélection {id_rubrique} Sélectionne les articles contenus dans la rubrique où se trouve l'article sélectionné. Utile pour lister les « articles dans la même rubrique » {id_auteur} Sélectionne les articles de l'auteur de l'article. {recherche} Sélectionne les articles correspondant aux mots indiqués dans le formulaire de recherche Balis es {statut=...} Sélectionne les articles suivant leur statuts : proposés, en preparation, publies (par défaut), refuses, à la poubelle #SURTITRE #TITRE #SOUSTITRE #SURTITRE #TITRE #SOUSTITRE Sur-titre, titre et sous-titre #DESCRIPTIF #CHAPO #DESCRIPTIF #CHAPO Descriptif, chapeau #TEXTE Contenu de l'article #NOTES Notes en bas de page #LESAUTEURS Liste des auteurs #LOGO_ARTICLE #LOGO_ARTICLE_NORMAL #LOGO_ARTIClE_SURVOL #LOGO_ARTICLE #LOGO_ARTICLE_NORMAL #LOGO_ARTIClE_SURVOL Le logo de l'article #INTRODUCTION Descriptif s'il existe, sinon, les 600 premiers caractères
Caractéristiques des boucles La boucle RUBRIQUES Critères de sélection {meme_parent} Retourne la liste des rubriques dépendant de la même rubrique que la rubrique en cours. Permet d’afficher les rubriques « sœurs » qui se trouvent au même niveau dans la hiérarchie. {exclus} Ne retourne pas la rubrique dans laquelle on se trouve déjà. Balis es #TITRE Titre #DESCRIPTIF Descriptif #TEXTE Texte de la rubrique #LOGO_RUBRIQUE #LOGO_RUBRIQUE_NORMAL #LOGO_RUBRIQUE_SURVOL #LOGO_RUBRIQUE #LOGO_RUBRIQUE_NORMAL #LOGO_RUBRIQUE_SURVOL Le logo de la rubrique
Caractéristiques des boucles La boucle BREVE Critères de sélection {id_rubrique} Retourne la liste des brèves dans la même rubrique Balis es #TITRE Titre #NOM_SITE #URL_SITE #NOM_SITE #URL_SITE Nom et adresse du site en référence #TEXTE Texte de la brève #LOGO_BREVE Le logo de la brève #INTRODUCTION Les 600 premiers caractères du texte
Caractéristiques des boucles Critères communs à toutes les boucles Classem ent {par quelque_chose} Ordre de présentation du résultat de la requête. Ex. : date, date_redac, titre, hasard... Opérations logiques {inverse} Inverse l'ordre de classement {critère = valeur} {critère != valeur} {critère < valeur} {critère > valeur}... {critère = valeur} {critère != valeur} {critère < valeur} {critère > valeur}... Par exemple, sélection des articles n'étant pas dans la rubrique 15 : Affichage entre les résultats Pour, par exemple, afficher la liste des auteurs de l'article : #NOM #NOM Donne la même chose que la balise #LESAUTEURS
Le site de Rhizomes Sommaire.h tml #TITRE ([(#DATE|affdate_court)]) </fieldset #TITRE ([(#DATE|affdate_court)]) </fieldset Les dernières brèves
Le site de Rhizomes Sommaire.h tml Les derniers articles : les dépêches 0}{inverse}{0,6}> #TITRE [(#LOGO_ARTICLE|left|#URL_ARTICLE|reduire_image{150})] #INTRODUCTION Le [(#DATE|nom_jour)] [(#DATE|affdate)] #NOM 0}{inverse}{0,6}> #TITRE [(#LOGO_ARTICLE|left|#URL_ARTICLE|reduire_image{150})] #INTRODUCTION Le [(#DATE|nom_jour)] [(#DATE|affdate)] #NOM
Le site de Rhizomes Sommaire.h tml Les prochaines manifestations Retrouvez-nous lors de nos prochaines manifestations : [(#DATE_REDAC|affdate)] : #TITRE Retrouvez-nous lors de nos prochaines manifestations : [(#DATE_REDAC|affdate)] : #TITRE
À vous de jouer !