Vous êtes sur la page 1sur 635

[SPIP] Documentation en franais

SPIP, systme de publication pour linternet Documentation en franais

Documentation en franais
Tlcharger la dernire version SPIP 1.8.3

SPIP est le systme de publication dvelopp par le minirzo pour la gestion du site uZine. Nous le livrons chacun, sous licence de logiciel libre (GPL). Vous pouvez donc lutiliser librement pour votre propre site, quil soit personnel, associatif, institutionnel ou marchand. Le prsent site en constitue la documentation officielle. Par ailleurs, vous trouverez cidessous de nombreux liens vers des sites et des listes de discussion apportant dautres espaces dentraide entre utilisateurs.

Tlcharger SPIP

http://www.spip.net/fr (1 of 8)2006.04.17 0.59.21

[SPIP] Documentation en franais

Rechercher
franais tout le site

Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

Prsentation et premiers pas


Cest quoi SPIP ? Des sites sous SPIP b-kane portfolio Legalbiznext Alma-conseil Club 26 Allan Athl Restaurant les Etangs des Moines Mon Paradis [...] Caractristiques compltes Conditions dutilisation La liste des utilisateurs de SPIP : spip@rezo.net LISTE DE DISCUSSION Cette liste est destine toutes les questions autour de lutilisation de SPIP. Cest la liste sur laquelle vous aurez le plus de chances dobtenir de laide. Il sagit donc de notre liste principale : si vous tes webmestre dun site SPIP, rdacteur dun site SPIP, et que vous voulez discuter de diffrents problmes lis lutilisation de SPIP, cest l quil faut vous rendre... Si vous dbutez avec SPIP, nous vous conseillons vivement de vous abonner cette liste des utilisateurs (tout cela est videmment gratuit). Cette liste est dsormais trs

http://www.spip.net/fr (2 of 8)2006.04.17 0.59.21

[SPIP] Documentation en franais

anime, ractive, et vous y obtiendrez rapidement de nombreux conseils et des rponses toutes sortes de questions.

Cette liste est trs active. Avant de poster, merci de consulter ses archives pour voir si le sujet na pas dj t abord. Merci galement de consulter la prsente documentation (en particulier les FAQ).

Installation

volutions et mises jour

Guide de lutilisateur
Les langues de SPIP Un mmento des raccourcis SPIP FAQ de ladministrateur SPIP Quels sont les lments grs par SPIP ? Laide en ligne
http://www.spip.net/fr (3 of 8)2006.04.17 0.59.21

[SPIP] Documentation en franais

SPIP-Contrib : des outils pour les rdacteurs

Suivre la vie du site (fichiers backend et calendrier ical)

Guide du webmestre et du bidouilleur


Scurit : SPIP et IIS Quest-ce que les fichiers dist ? FAQ webmestre Rapidit du site public Contribuer au dveloppement de SPIP SPIP-Contrib : des outils pour les webmestres Lespace des contributions externes, qui recense lensemble des scripts, filtres, squelettes, documentations imprimer, etc., fournis la communaut par les utilisateurs de SPIP. SPIP-Contrib : mes_fonctions SPIP-Contrib : les squelettes Les articles de documentation de SPIP-Contrib

http://www.spip.net/fr (4 of 8)2006.04.17 0.59.21

[SPIP] Documentation en franais

Mise en page : manuel de rfrence

SPIP pas pas


Pas pas, comment crer un SPIP qui dfie les limites.

Guide des fonctions avances

Initiation : utiliser les feuilles de style avec SPIP


Passer la vitesse suprieure pour vos squelettes.

http://www.spip.net/fr (5 of 8)2006.04.17 0.59.21

[SPIP] Documentation en franais

Trucs et astuces
Quelques exemples de boucles, et autres petits morceaux de squelettes pour apprendre utiliser le langage de SPIP en rsolvant des cas particuliers.

Le dveloppement de SPIP et ses outils


Les diffrents outils de communication utiliss pour dvelopper SPIP.

Tutorial : utilisation avance des boucles et des mots-cls


Ce tutorial vous explique diverses mthodes destines dpasser les limites apparentes de SPIP. Attention : il sadresse des utilisateurs dj expriments.

Questions et rponses

http://www.spip.net/fr (6 of 8)2006.04.17 0.59.21

[SPIP] Documentation en franais

Comment obtenir des rponses


Les espaces dentraide entre utilisateurs de SPIP sont nombreux et trs actifs. Chacun est donc invit faire son possible pour ne pas les surcharger inutilement : les personnes qui interviennent le font titre bnvole et ne rpondront pas des demandes trop pressantes ou dplaces. Avant tout, commencez par bien consulter la prsente documentation, notamment les FAQ qui y figurent ; beaucoup de questions y sont abordes. De nombreux utilisateurs de SPIP tiennent jour le site des contributions externes SPIP-CONTRIB : cest une mine dinformations et de solutions des problmes varis. Une dernire recommandation : ne multipliez pas inutilement les appels laide en postant le mme message en diffrents endroits (listes de discussion, forums...). Cest le meilleur moyen de vous faire mal voir des personnes qui auraient pu vous apporter de laide.

Liste de discussion des utilisateurs de SPIP LISTE DE DISCUSSION : lespace le plus pertinent pour obtenir de laide est la liste de discussion des utilisateurs de SPIP. Vous pouvez vous y abonner et vous dsabonner tout instant. Notez que cette liste dispose darchives publies en ligne et que lon peut interroger grce un moteur de recherche. Il sagit bel et bien de lendroit le plus actif pour la communaut des utilisateurs. SPIP Forums FORUM : le site SPIP Forums vous propose un forum de discussion. Il est recommand pour les utilisateurs occasionnels. Comme sur tout forum, merci de consulter les messages dj posts pour voir si votre
http://www.spip.net/fr (7 of 8)2006.04.17 0.59.21

[SPIP] Documentation en franais

question na pas dj t pose prcdemment et la rponse publie. La FAQ de SPIP-Contrib

FAQ technique

FAQ : Premiers pas

tlcharger le squelette de cette page

http://www.spip.net/fr (8 of 8)2006.04.17 0.59.21

[SPIP] Tlcharger SPIP

SPIP, systme de publication pour linternet Documentation en franais

Tlcharger SPIP
franais Espaol euskara 1 J ; 3 0 @ A catal : 8 italiano eg, Trke Deutsch English occitan Portugus

Tlcharger SPIP

SPIP 1.8.3
(11 mars 2006)

Une fois le fichier zip cicontre tlcharg sur votre ordinateur, vous devrez le dcompresser, puis installer lensemble, par FTP, sur votre site.

Installation automatique

Rcuprez le fichier spip_loader.php3 (ci-contre) et

http://www.spip.net/fr_article2670.html (1 of 3)2006.04.17 1.00.26

[SPIP] Tlcharger SPIP

recopiez-le dans le rpertoire o vous voulez installer SPIP ( la racine de votre site Web, par exemple). Ensuite appelez ce fichier depuis votre navigateur Web, et attendez que le chargement se termine. Si la procdure choue, vous devrez effectuer linstallation manuelle partir du paquet ci-dessus.

Version de dveloppement

Nouveau ! A partir du 21 aot 2005, SPIP est dvelopp sous SVN. La version en cours de dveloppement peut, selon le moment, corriger un bug rcent ou tre totalement inutilisable. Le projet de dveloppement de SPIP bnficie donc maintenant de son propre site web : http://trac.rezo.net/trac/spip. Vous pouvez y consulter :
q q q

les sources les rapports de bug ainsi que les instructions pour tlcharger la dernire version de dveloppement.

Archives

Vous trouverez ici les anciennes versions de SPIP.

http://www.spip.net/fr_article2670.html (2 of 3)2006.04.17 1.00.26

[SPIP] Tlcharger SPIP

Complments

SPIP Contrib est le site de rfrence de la communaut utilisatrice de SPIP. Vous y trouverez tout ce que vous cherchez, astuces, squelettes, etc. Vous pouvez aussi y apporter les vtres !

tlcharger le squelette de cette page

http://www.spip.net/fr_article2670.html (3 of 3)2006.04.17 1.00.26

[SPIP] Prsentation et premiers pas

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas

Prsentation et premiers pas


Cest quoi SPIP ?
Un systme de publication pour lInternet
Rechercher
franais tout le site

Des sites sous SPIP


Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2

b-kane portfolio Legalbiznext Alma-conseil Club 26 Allan Athl Restaurant les Etangs des Moines Mon Paradis

http://www.spip.net/fr_rubrique124.html (1 of 3)2006.04.17 1.01.20

[SPIP] Prsentation et premiers pas

Internationaliser les squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

[...] Caractristiques compltes Conditions dutilisation

La liste des utilisateurs de SPIP : spip@rezo.net LISTE DE DISCUSSION Cette liste est destine toutes les questions autour de lutilisation de SPIP. Cest la liste sur laquelle vous aurez le plus de chances dobtenir de laide. Il sagit donc de notre liste principale : si vous tes webmestre dun site SPIP, rdacteur dun site SPIP, et que vous voulez discuter de diffrents problmes lis lutilisation de SPIP, cest l quil faut vous rendre... Si vous dbutez avec SPIP, nous vous conseillons vivement de vous abonner cette liste des utilisateurs (tout cela est videmment gratuit). Cette liste est dsormais trs anime, ractive, et vous y obtiendrez rapidement de nombreux conseils et des rponses toutes sortes de questions.

Cette liste est trs active. Avant de poster, merci de consulter ses archives pour voir si le sujet na pas dj t abord. Merci galement de consulter la prsente documentation (en particulier les FAQ).

http://www.spip.net/fr_rubrique124.html (2 of 3)2006.04.17 1.01.20

[SPIP] Prsentation et premiers pas

Installation
Installer SPIP Hbergeurs acceptant SPIP Utiliser SPIP en local

volutions et mises jour


SPIP SPIP SPIP SPIP SPIP SPIP SPIP 1.8.3 1.8.2 1.8, 1.8.1 1.7, 1.7.2 1.6 1.5 1.4 [...]

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique124.html (3 of 3)2006.04.17 1.01.20

[SPIP] C'est quoi SPIP ?

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas

Cest quoi SPIP ?


franais (Pyi Dayiti) italiano 1 J ; 3 0 @ A catal : 8 Krol ryon Kryl dansk Deutsch English Espaol galego eg, Ltzebuergesch Nederlands occitan polski Portugus romn Trke Ti ng Vit

Cest quoi SPIP ? Des sites sous SPIP Caractristiques compltes Conditions dutilisation

SPIP, un systme de publication


SPIP est un Systme de Publication pour lInternet. Kesako ? Il sagit dun ensemble de fichiers, installs sur votre compte Web, qui vous permettent de bnficier dun certain nombre dautomatismes : grer un site plusieurs, mettre en page vos articles sans avoir taper de HTML, modifier trs facilement la structure de votre site... Avec le mme logiciel qui sert visiter un site (Netscape, Microsoft Explorer, Mozilla, Opera...), SPIP permet de fabriquer et de tenir un site jour, grce une interface trs simple dutilisation.

http://www.spip.net/fr_article464.html (1 of 5)2006.04.17 1.02.5

[SPIP] C'est quoi SPIP ?

Dautres systmes de publication existent ; chacun prsente ses spcificits. Un des plus connus actuellement est phpNuke ; il impose une structure assez rigide pour le site, sous forme de portail muni de courts articles. SPIP est plus souple, et orient vers la cration dun site structur comme un magazine : cest--dire avec des rubriques, sous-rubriques (et ainsi de suite), dans lesquelles sont insrs des articles et des brves qui peuvent tre complts de forums de discussions.

Pourquoi SPIP ?
SPIP est un logiciel libre distribu sous Licence Publique Gnrale GNU (GNU General Public License ou GPL). Les besoins logiciels et matriels de SPIP sont raisonnables et se trouvent mme chez certains hbergeurs gratuits (voir la Foire Aux Questions et le manuel dinstallation pour plus de dtails - ou, pour rsumer lextrme : PHP+MySQL). SPIP est distribu gratuitement sur ce site. Lintrt de SPIP est de...

http://www.spip.net/fr_article464.html (2 of 5)2006.04.17 1.02.5

[SPIP] C'est quoi SPIP ?

grer un site Web de type magazine, cest--dire compos principalement darticles et de brves insrs dans une arborescence de rubriques imbriques les unes dans les autres. Voir la liste complte des caractristiques de SPIP pour plus de dtails. sparer entirement, et distribuer entre diffrentes personnes, trois types de tches : la composition graphique, la contribution rdactionnelle via proposition darticles et de brves, et la gestion ditoriale du site (tche qui comprend lorganisation des rubriques, la validation des articles proposs...). dispenser le webmestre et tous les participants la vie du site dun certain nombre daspects fastidieux de la publication sur le Web, ainsi que de connaissances techniques trop longues acqurir. Linstallation de SPIP se ralise au moyen dune interface simple et pas pas, au terme de laquelle vous pouvez commencer crer vos rubriques et articles. SPIP a les caractristiques suivantes... Pour le(s) rdacteur(s) et administrateur(s) Une interface Web intuitive rend extrmement simples la proposition darticles et de brves ainsi que la gestion ditoriale du site. De plus, des raccourcis typographiques permettent de mettre en forme un texte sans avoir utiliser le langage HTML, rendant ainsi la contribution rdactionnelle accessible tous, et aussi simple que lcriture dun e-mail. Pour le webmestre Laspect graphique et la navigation sont dfinis par des squelettes HTML (ou formats types ) dfinissant chacun une vue (par exemple : une vue pour la page dindex, une autre montrant une rubrique et un rsum de son contenu, une troisime pour le dtail dun article, une quatrime pour le dtail dune brve). La faon dont est insr le contenu rdactionnel du site dans ces pages est dfini par un certain nombre de pseudo-tags HTML relativement faciles matriser. SPIP ne restreint pas les possibilits graphiques et navigationnelles du site. Les squelettes HTML tant entirement dfinis par le webmestre du site, il est possible de grer certains lments du site avec SPIP et le reste la main ou mme avec dautres systmes de publication ( condition que ces derniers soient aussi tolrants que SPIP, bien sr). Pour les visiteurs Un systme de cache sur la partie publique du site acclre le site en vitant un
http://www.spip.net/fr_article464.html (3 of 5)2006.04.17 1.02.5

[SPIP] C'est quoi SPIP ?

grand nombre de requtes la base de donnes, et joue en outre un rle de gardefou contre les plantages de la dite base (frquents sur des serveurs chargs ) : dans ce cas, le site reste disponible de faon transparente, mme si toute modification des contenus est impossible (y compris la contribution aux forums). Un moteur de recherche et dindexation intgr SPIP, sil est activ par le webmestre, permet deffectuer des recherches sur lensemble du contenu public du site. Des inconvnients Pour linstant, la souplesse de SPIP implique quun peu defforts dapprentissage sont ncessaires au webmestre pour modifier la prsentation par dfaut. Contrairement des systmes trs contraints comme phpNuke o vous pouvez changer les couleurs et le logo en pressant simplement un bouton (mais cest tout ce que vous avez le droit de faire), le webmestre sous SPIP doit apprendre les quelques rudiments dun pseudo-HTML lui permettant ensuite de faire peu prs ce quil veut. SPIP est livr avec un format dinterface de navigation complet ; ds que vous aurez commenc crer le contenu de votre site, il pourra tre immdiatement visit, et adoptera linterface graphique fournie par dfaut. Le webmestre du site peut bien entendu fabriquer sa propre interface graphique sil le dsire. A lavenir, il est prvu que plusieurs prsentations soient fournies avec SPIP, permettant la majorit des webmestres den rutiliser une qui leur convienne pour minimiser leffort de personnalisation. Exemples Lexemple historique de lutilisation de SPIP est le webzine uZine2 (cest le code, au dpart spcifique, de ce site, qui a t repris pour raliser le SPIP gnrique). Parmi dautres sites fonctionnant sous SPIP, citons Le Monde diplomatique et Vacarme. Poursuivre... Pour aller plus loin, et vous lancer sous SPIP, il vous sera utile de lire la documentation, les exemples et les premiers pas proposs dans cette rubrique. Des listes de diffusion sont galement votre disposition pour changer questions, trucs et astuces. A bientt !

http://www.spip.net/fr_article464.html (4 of 5)2006.04.17 1.02.5

[SPIP] Des sites sous SPIP

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas

Des sites sous SPIP


franais 1 J ; 3 0 @ A catal : 8 dansk English Esperanto Espaol galego italiano Ltzebuergesch Nederlands occitan polski Portugus Deutsch eg, Trke N-e

Cest quoi SPIP ? Des sites sous SPIP Caractristiques compltes Conditions dutilisation

La page ci-aprs recense quelques sites fonctionnant sous SPIP. Si vous tes webmestre dun site fonctionnant sous SPIP, merci de remplir le formulaire ci-joint (uniquement des sites rellement en fonctionnement, SVP). Indiquez galement si vous publiez vos squelettes ou si vous acceptez de les fournir ceux qui vous en feraient la demande. [1] [51] [101] [151] [201] [251] [301] [351] [401] [451] [501] [551] [601] [651] [701] [751] [801] [851] [901] [951] [1001] [1051] [1101] [1151] [1201] [1251] [1301] [1351] [1401] [1451] [1501] [1551] [1601] [1651] [1701] [1751] [1801] [1851] [1901] [1951] [2001] [2051] [2101] [2151] [2201] [2251] [2301] [2351] [2401] [2451] [2501] [2551] [2601] [2651] [2701] [2751] [2801] [2851] [2901] [2951] [3001] [3051] [3101] [3151] [3201] [3251] [3301] [3351] [3401] [3451] [3501] [3551]

Identifiants personnels Votre nom ou pseudo Votre adresse email

Lien hypertexte

http://www.spip.net/fr_article884.html (1 of 5)2006.04.17 1.02.42

[SPIP] Des sites sous SPIP

(optionnel) Nom de votre site Web Adresse de votre site


http://
Un message, un commentaire ? Texte de votre message :

b-kane Garfield, 15 avril 2006


Site ralis par des passionns de moto. Vous y trouverez des itinraires de balades, des reportages photos, et des astuces pour raliser vous mme lentretien de votre moto. Un forum et une newsletter sont disposition pour rendre le site plus vivant.

AdmiNet Rfrencement adminet, 8 avril 2006


Prestations de rfrencement, positionnement et optimisation technique de site web. Conseil et ralisation.

Robins des Villes Robins des Villes, 8 avril 2006

portfolio neogge, 14 avril 2006 Legalbiznext chris, 14 avril 2006 Alma-conseil patrick, 14 avril 2006

Valider

Actus et Analyses en droit des TIC et de la proprit intellectuelle.

Club 26 Allan Athl kiki, 13 avril 2006

Intgration de solutions opensource Conseils et dveloppements internet - logiciels libres - prestataire SPIP - Toulouse

teampark.asso.fr rbotrel, 7 avril 2006

Site de lassociation lyonnaise Robins des Villes. Les Robins des Villes ont pour objectif dameliorer le cadre de vie urbain, quil touche lurbanisme ou lenvironnement, larchitecture ou au patrimoine. Il sagit de proposer un autre regard sur la ville , sensibiliser les habitants leur espace de vie, et les inciter avoir une demarche participative.

Restaurant les Etangs des Moines jdelbecque, 13 avril 2006

Site web du club 26 Allan (Drme) : Vie du club, conseils dentrainement, rsultats, albums photos, etc..

Mon Paradis babbibel, 12 avril 2006

Le restaurant gastronomique les Etangs des Moines situ Fourmies au Nord de la France dans un cadre chaleureux, la chemine accueillante et une vranda spacieuse qui souvre sur les Etangs des Moines sera vous faire dcouvrir une cuisine de lAvesnois.

Team F1 Gp.com Team F1 Gp, 7 avril 2006

Dcouvrez une quipe de comptition karting qui participe au Championnat de France dendurance karting. En plus de suivre lvolution du Team dans le championnat avec les communiqus et les photos de courses, le site propose de nombreuses informations et diffrents liens sur la pratique du karting. Des liens galements vers des professionnels ainsi que tous les circuits de comptition de France, sans oublier des images insolites.

Lyce LE PARACLET (Picardie / Somme) Jrme Ferron, 12 avril 2006

2 squelettes : album photos atypik et spip.blog cohabitent. Lgres modifications des deux. De jolies photos et des commentaires de lactualit antillaise...

Ecole de danse Arabesque Modjo.inc, 7 avril 2006

Retrouvez sur Team F1 Gp.com : toutes les News de la F1 ainsi que des centaines de photos des Grands Prix F1, des vnements la F1, des nouvelles voitures 2006 ; Retrouvez aussi tous les circuits 2006 dtaills (plans) et le Calendrier des Grands Prix, les classements pilotes et constructeurs 2006 et les archives des prcdentes saisons

imis angers Thierry Capelle, 12 avril 2006

SPIP ? Simplicit dutilisation pour le webmaster et lutilisateur.

Pays de Chteaubriant : portail internet denis, 6 avril 2006

Ralis daprs bones dotspip, layout entirement revu pour coller limage dune cole de danse tourne vers les cultures dOrient et dailleurs...

Formations universitaires dans le domaine de la maintenance immobilire et de la scurit du patrimoine

Un site non officiel sur le pays de Chteaubriant pour rpertorier les diffrents sites du territoire et promouvoir les actions culturelles

http://www.spip.net/fr_article884.html (2 of 5)2006.04.17 1.02.42

[SPIP] Des sites sous SPIP

Alliance Armor Dupleix Inde kco, 11 avril 2006


LAssociation AADI ( ou origine, premier en sanscrit) a t cre dans le but initial de nouer et approfondir des liens entre lInde et la rgion de Morlaix.

la vote nubienne david sillou, 6 avril 2006


Un site associatif concernant la construction cologique/conomique au Sahel.

locales

SVToLOG Pat, 11 avril 2006

Lyce La Tour des Dames Pat, 11 avril 2006 Montagne Pour Tous Association de Valsenestre Nico, 11 avril 2006

Site des Webmatres associs. Aide lutilisation des logiciels ddis aux Sciences de la vie et de la Terre.

jussieu mobilis jussieu, 5 avril 2006 Hands Paris Matt, 5 avril 2006

Le Jardin dIdoumou Alain, 5 avril 2006

Hands Paris - costume et chemise sur mesures. service dhabillement pour vos tenues de ville, casual, sport ou encore pour vos Crmonies.

Lyce le Paraclet Antoine, 11 avril 2006

Et oui, un modeste et gnial site dune petite association dEducation Populaire qui fait dcouvrir le milieu montagnard travers : la location en gestion-libre de ses btisses, lorganisation de camps pour les jeunes et la rnovation du patrimoine traditionnel. O a se passe ? Dans les Alpes de lIsre et surtout dans un petit coin qui rsite la folie urbaine et touristique : le hameau de Valsenestre.

Groupe JCB Viviboss, 4 avril 2006

La Mauritanie, vous connaissez ? Nous avons t sduits par ce pays, la beaut de ces paysages qui changent chaque dtour de piste mais surtout par ces hommes au sens profond de laccueil qui ont des convictions et qui les respectent.

Gerard CHic SharEd Flava gerardchic, 11 avril 2006

Le site Web du lyce Le Paraclet Quimper. Merci la caummunaut spipienne.

Courcelles Design Natacha Courcelles, 4 avril 2006

Site concernant la dfiscalisation et la gestion de patrimoine, investissement immobilier et lois de finance (loi de Robien, etc)

CEMEA Languedoc-Roussillon Lu CEMEA, 11 avril 2006


Association dEducation Populaire et Mouvement dEducation Nouvelle, les CEMEA interviennent dans la formation des personnes qui dsirent tre des acteurs de lanimation, de lducation et du mdico-social. Situe Montpellier, notre association a une volont dintervention sur lensemble de la rgion Languedoc-Roussillon

Gerards clichs, shop finder & sound selection.

Pomms : Portail et magazine de mdiation scientifique Guillaume Peyronnet, 4 avril 2006 Randos MJC de Fresnes mb, 4 avril 2006
Pomms est un portail de mdiation scientifique collaboratif.

Cration, refonte et hbergement de sites Internet - Prestataire SPIP Toulouse

ethnographiques.org Yann Morel, 4 avril 2006

Site prsentant les randonnes organises par la MJC : calendrier, photos, plans, anecdotes culturelles

Crateur dambiance - Peintre dcorateur Emmanuel, 10 avril 2006

Crateur dambiance - Peintre dcorateur Crateur dambiances et Spcialiste de produits naturels. Patine de soie - Enduit largile Chaux arienne -Stucco - Marmorino - Tadelakt - Sgrafitto - Staff. Yannick
http://www.spip.net/fr_article884.html (3 of 5)2006.04.17 1.02.42

Revue en ligne gratuite de sciences humaines et sociales, ethnographiques.org publie des travaux rflexifs (de jeunes chercheurs et de chercheurs confirms) sur les pratiques de terrain en anthropologie, sociologie, gographie, etc. Le recours un comit de lecture garantit la scientificit des publications, tandis quethnographiques.org et ses

[SPIP] Des sites sous SPIP

Ecole Europenne dIntelligence Economique JMC, 10 avril 2006

Dcors vous propose de dcouvrir toute une gamme deffets dcoratifs.

LDLFI Mitch, 10 avril 2006

spcialise dans la cration demploi par lintelligence conomique, lcole propose une formation thorique et pratique aux utilisations de lIE en entreprise.

Chteau de la Charmeraie erational, 4 avril 2006

auteurs innovent en publiant en ligne des documents audio et vido, et des images fixes illustratives ou commentes.

Chambres dhtes de prestige dans les monts du lyonnais. site bilingue. refonte en spip dun site flash existant.

The Anarchic Teapot sQuonk, 10 avril 2006


Site perso bilingue sur tout ce qui mintresse, agace, amuse, bref, que je vodrais partager.

Guitares du monde

Tout-Troyes, Portail, Agenda zebinar, 3 avril 2006


Tout-Troyes, Portail et annuaire sur la ville de Troyes et de sa rgion (Aube - 10) calendrier des vnements, agenda, articles, petites annonces, offres demploi, infos pratiques. Bref, Tout sur Troyes...

La Pyramide - Htel Restaurant Axome.com, 10 avril 2006

Situe sur laxe Nord / Sud, au sud de Lyon, la Pyramide est le chemin invitable pour retrouver ou quitter la grande bleue. Loin de lagitation du centre ville, dans les quartiers sud de Vienne o il y rgne une quitude de petit quartier. La "Pyramide" possde tout les atouts pour vous sduire et faire de vous un famillier des lieux.

2devs.com melanie, 3 avril 2006

Portfolio des photographies de Rmy SALAN Rmy SALAN, 3 avril 2006


Ce portfolio ne repose sur aucune contribution de type galerie. Cest un Spip "fait-main" au fonctionnement simple : une image = un article. Je tiens disposition le squelette et son css quiconque serait intress :) Merci !

ralisation et dveloppement multimdias

Peinturlure Viviboss, 9 avril 2006


Un site haut en couleur, montrant les crations originales de Vronique Meunier dans sa boutique sur Lyon. De la vaisselle peintes, des enduits pour les murs, des meubles peints, ainsi quune grande passion pour son mtier de dcoratrice : cest lunivers de Peinturlure !!!

CREDIMPEX FRANCE melanie, 3 avril 2006

E.C.L.A.T. Formations Linguistiques Toulouse Hadrien, 2 avril 2006

Association Franaise des spcialistes du Commerce International

Ecole Saint Pierre dAscq Webmaster, 9 avril 2006

Massilia (In)formationS

Site de lcole. Prsentation, vie de lcole et de ses acteurs : enfants, associations, enseignants. Nous avons opt pour un site contributif et vivant, repre pour les acteurs de lcole, mais galement ouvert tous les Internautes !

Paroisse Saint Sbastien Paroisse Saint Sbastien, 1er avril 2006


Site de la Paroisse Saint Sbastien, sur Crpy-en-Valois, Auger-SaintVincent et Vaumoise (glise catholique de lOise - diocse de Beauvais)

European Center for Learning And Training Toulouse.

altNetVision altNetVision, 1er avril 2006

Association dhbergement de sites

http://www.spip.net/fr_article884.html (4 of 5)2006.04.17 1.02.42

[SPIP] Des sites sous SPIP

Allaitement karim belkacem, 9 avril 2006


Les Marraines de MIA Sont des femmes ayant lexperience de lallaitement maternel. Sont des femmes desirant soutenir les allaitements maternels. Sont formees a laccueil et lecoute telephonique ainsi qua laspect general des allaitements maternels. Ne se subtituent aux professionnels de la sante. Sengagent a promouvoir les allaitements maternels pour quils deviennent un acte culturel. Sont des membres actifs de M.I.A et sengagent a respecter la charte deontolgique.

Reseau Dumac dumac, 1er avril 2006

web sur des solutions 100 % Open Source et de dveloppement dapplications web conformes aux normes W3 (XHTML, CSS, WAI)

stopcpe-jussieu.info Jussieu Mobilis, 1er avril 2006

Site des anciens lves de la formation multimdia (D.U) de luniversit de Nantes (44)

Commune de BAURECH aprodisc, 8 avril 2006


Site officiel de BAURECH, commune rurale proche de Bordeaux.

tlcharger le squelette de cette page

http://www.spip.net/fr_article884.html (5 of 5)2006.04.17 1.02.42

[SPIP] Caractristiques compltes

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas

Caractristiques compltes
franais Cest quoi SPIP ? Des sites sous SPIP Caractristiques compltes Conditions dutilisation italiano catal Krol ryon Nederlands occitan Deutsch English polski Portugus Espaol Trke

Installation Linstallation de SPIP est particulirement simplifie par rapport dautres systmes : Aucune connaissance technique particulire nest ncessaire (ni PHP, ni MySQL) pour procder son installation. La configuration se fait directement en ligne, au travers dune interface graphique trs simple (il nest pas ncessaire, en particulier, daller modifier un fichier de configuration avec des codes abscons). Nous distribuons une version unique de SPIP ; celle-ci peut voluer au cours du temps en fonction des amliorations, mais nous faisons trs attention ne pas compliquer en dveloppant des patches quil faudrait aller chercher droite ou gauche (pour adapter SPIP tel hbergeur par exemple). Site public

http://www.spip.net/fr_article890.html (1 of 7)2006.04.17 1.03.51

[SPIP] Caractristiques compltes

Le site public fabriqu partir de SPIP offre les caractristiques suivantes : Interface entirement adaptable par le webmestre sans connaissances de PHP ni de MySQL ; linterface de SPIP se programme en HTML, auquel nous avons ajout un langage relativement simple ; SPIP nimpose donc pas une mise en page rigide ( la manire des trois colonnes si caractristiques de phpNuke).

Linterface en HTML classique nest pas la seule forme de navigation que lon peut prsenter aux visiteurs du site. Les mmes informations (le mme contenu) peuvent tre prsentes dans des formats trs diffrents. On peut par exemple fournir, en plus de la navigation Web classique : des fils de syndication au format XML/RSS, un calendrier au format iCalendar, une navigation Wap (au format WML), une navigation Macromedia Flash (pas dexemple en format libre, malheureusement)... et tout autre format que lon se donnera le mal de matriser (cHTML pour iMode, XPressTags, XML pour Indesign...). SPIP intgre un systme de cache pour chaque page individuelle : les pages sont calcules ( partir des informations de la base de donnes) individuellement, et stockes dans un fichier de cache ; ainsi le serveur nest pas ralenti par un trop grand nombre dappels MySQL, et le site est toujours accessible mme en cas de panne du serveur de bases de donnes. SPIP intgre un petit moteur de recherche bas sur un systme dindexation par mots. La structure du site La structure dun site sous SPIP est construite sur une hirarchie de rubriques. Il ny a virtuellement pas de limite au nombre de rubriques : une rubrique peut contenir autant de sous-rubriques que ncessaires, qui elles-mmes contiennent des sous-rubriques, etc. On construit ainsi la structure de son site en imbriquant des rubriques et des sous-rubriques. Les articles Lobjet principal permettant de publier des informations sous SPIP est larticle. On peut placer autant darticles que ncessaire, dans nimporte quelle rubrique.

http://www.spip.net/fr_article890.html (2 of 7)2006.04.17 1.03.51

[SPIP] Caractristiques compltes

La rdaction des articles est trs simple, elle se droule via une interface graphique sur le Web. Un article est constitu de plusieurs lments qui permettent de le structurer : titre, surtitre, soustitre, descriptif, chapeau, texte principal, post-scriptum. Les rgles de base de la typographie franaise sont appliques automatiquement (espaces inscables avant les points dinterrogation, dexclamation, etc.). Des raccourcis mnmotechniques facilitent lenrichissement typographique, la cration de liens hypertexte, de notes de bas de page... mettre en page un article sous SPIP est aussi facile que dcrire un email. Linterface graphique permet dinclure simplement des images dans les articles, et chaque article peut tre signal par son propre logo. On peut indiquer, pour chaque article, un ou plusieurs mots-cls. La date de mise en ligne se gre automatiquement (on peut cependant la modifier si ncessaire) ; une seconde date peut tre associe un article, par exemple pour indiquer une date de publication originale (par exemple, un article publi antrieurement dans un magazine papier). Redirections (articles fantmes ) : SPIP permet de fabriquer des articlesfantmes, intgrs dans la structure du site et affichs dans le contenu des rubriques, mais qui en ralit renvoient vers une page dont ladresse est spcifie par le rdacteur (sur le mme site, ou mme sur un autre site). Cette fonction facilite le passage dun site dj existant vers SPIP, par lintgration de contenus statiques prexistants. Les brves En complment des articles, SPIP intgre un systme de brves, qui facilite la publication de courtes notes dinformation, telles des revues de presse (ou des revues de Web). Afin de faciliter la structuration et le positionnement des brves, on ne peut installer des brves que dans les principales rubriques du site (les rubriques places la racine du site). La structure des brves est simplifie : un titre et le texte de la brve ; chaque brve peut tre complte trs simplement dun lien hypertexte. La gestion de la publication dune brve est simplifie (deux boutons : publier ou refuser).
http://www.spip.net/fr_article890.html (3 of 7)2006.04.17 1.03.51

[SPIP] Caractristiques compltes

Chaque brve peut tre signale par son propre logo. Ladministrateur du site peut dcider de dsactiver lusage des brves sur lensemble du site. Les forums SPIP intgre un systme de forums. Les forums peuvent tre associs aux articles (un forum par article), aux rubriques ou aux brves. Le webmestre pourra programmer son interface pour que chaque article dispose de son propre forum, ou pour que plusieurs articles dune mme rubrique partagent le mme forum, etc. SPIP permet de choisir entre plusieurs types de forums : les forums libres (modrs postriori, les contributions apparaissent immdiatement, les administrateurs peuvent ventuellement supprimer ensuite un message indsirable) ; les forums modrs priori (les contributions napparaissent quaprs avoir t valides par un administrateur du site) ; les forums sur abonnement (chaque intervenant doit, pour pouvoir poster, dabord indiquer son adresse email pour recevoir un mot de passe lui permettant de poster ses contributions). SPIP intgre galement un systme de forums privs, consacr la discussion entre les diffrents rdacteurs du site, et cela dans lespace priv. Les ptitions Un article peut tre transform en ptition en ligne en quelques clics. Les ptitions de SPIP sont valides par email automatiquement : un signataire reoit un message de confirmation qui permet de vrifier la validit des signatures. On peut configurer trs simplement le type de ptition : ainsi imposer une seule signature par adresse email, imposer quun site Web soit indiqu dans la ptition (dans ce cas, la validit de lURL est vrifie automatiquement), accepter ou non des messages accompagnant les signatures. Les statistiques SPIP intgre un systme trs simplifi de statistiques, permettant dvaluer la popularit des articles et des rubriques.

http://www.spip.net/fr_article890.html (4 of 7)2006.04.17 1.03.51

[SPIP] Caractristiques compltes

Les rdacteurs/administrateurs Un site sous SPIP peut tre gr par une seule personne, ou tre ralis par un groupe de rdacteurs. SPIP propose deux niveaux daccs : les administrateurs, qui grent notamment la structure du site et la validation des articles, et les rdacteurs, qui proposent des articles. Le nombre de rdacteurs et dadministrateurs est illimit. On peut dcider doffrir aux utilisateurs du site public de sinscrire pour devenir rdacteur (la procdure dinscription est alors gre automatiquement par SPIP). Chaque auteur peut se voir associer un logo personnel tlchargeable depuis linterface (par exemple une photo didentit). Syndication Les sites raliss sous SPIP, phpNuke, ou dautres systmes, fournissent un fichier dynamique indiquant leurs dernires publications. SPIP peut analyser de tels fichiers et ainsi indiquer les nouveauts dautres sites : on peut ajouter autant de sites syndiqus que lon veut ; les sites syndiqus sont associs aux rubriques de son propre site ; ainsi, on peut associer une rubrique thmatique les liens vers des sites traitant du thme prcis de la rubrique. Interface graphique du site public Linterface graphique du site public est trs souple. Grce un langage trs simple (mais propre SPIP), on peut raliser peu prs nimporte quelle interface graphique. Il nest en particulier pas ncessaire de connatre PHP et MySQL pour raliser une interface graphique originale sous SPIP. Cependant, le systme de cache est totalement compatible avec PHP : le webmestre peut, sil le dsire, intgrer des fonctions PHP dans ses formats-types (squelettes), ou des passerelles CGI. On peut donc enrichir SPIP avec des scripts spcialiss pour complter ou remplacer des fonctions manquantes (par exemple : compteur, moteur de recherche plus puissant, etc.). Interface du site priv La partie prive qui permet de grer le site dispose dune interface graphique
http://www.spip.net/fr_article890.html (5 of 7)2006.04.17 1.03.51

[SPIP] Caractristiques compltes

complte, trs simple dutilisation. Cette interface sadapte en fonction des activits de chaque rdacteur ou administrateur, et en fonction de lactivit du site. Ainsi chaque auteur a-t-il accs rapidement ses propres articles, et les articles proposs la publication sont signals tous les utilisateurs. De mme linterface est diffrente selon que lon est rdacteur ou administrateur. Chaque utilisateur peut personnaliser son interface. Il peut choisir entre une interface simplifie, qui noffre que les fonctions principales, et une interface complte. Il peut galement modifier quelque peu lhabillage graphique de linterface. Lorsquun site accueille plusieurs rdacteurs, SPIP devient un outil de travail coopratif : dbats autour des articles, systme de validation, travail plusieurs sur un mme article... Paramtrage du site Si linterface graphique du site public et la gestion du contenu sont, dans SPIP, strictement spares (par exemple, on ne fixe pas la couleur du fond dcran du site public dans lespace priv), il est cependant possible de configurer certains comportements du site dans lespace priv : accepter ou refuser certains lments du contenu des articles : ainsi on peut dcider dinterdire lutilisation des surtitre, soustitre, descriptif, chapeau ou postscriptum, ou la date de publication antrieure et les mots-cls ; configurer (ou dsactiver) les forums publics ; indiquer si lon publie les articles avant la date de publication quon leur a fix (cette option permet par exemple de partir en vacances, le site publiant des articles pendant cette absence) ; dsactiver le systme de brves (en effet, certains sites nen ont pas lusage ; les dsactiver permet de simplifier linterface pour les rdacteurs) ; activer ou dsactiver les statistiques ; activer ou dsactiver le moteur de recherche. Suivi ditorial Afin de faciliter le suivi ditorial du site, plusieurs options sont offertes : envoi des contributions des forums aux auteurs des articles ; lorsquun visiteur du site poste un message sous un article, lauteur de cet article en est inform par mail, ce qui lui permet de suivre lactivit de son article par mail ; suivi de lactivit ditoriale ; si le site est le fruit dune quipe de rdacteurs, on peut signaler automatiquement les annonces importantes de lactivit ditoriale
http://www.spip.net/fr_article890.html (6 of 7)2006.04.17 1.03.51

[SPIP] Caractristiques compltes

une adresse email (dans lidal, une liste de de diffusion) ; ainsi, lorsquun article est publi ou propos la publication, cette liste en est informe ; annonce des nouveauts ; SPIP peut envoyer automatiquement, selon une frquence fixe par les administrateurs, un courrier lectronique recensant les dernires publications sur le site. Sauvegarde et exportation de la base de donnes Le webmestre du site peut raliser une sauvegarde de sa base de donnes (un fichier est alors cr) ; si le serveur le permet, cette sauvegarde sera ralise dans un fichier compress, facilitant ainsi sa rcupration par FTP. SPIP intgre bien entendu la fonction qui permet dimporter un tel fichier.

tlcharger le squelette de cette page

http://www.spip.net/fr_article890.html (7 of 7)2006.04.17 1.03.51

[SPIP] Conditions d'utilisation

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas

Conditions dutilisation
franais italiano catal Krol ryon Deutsch English Espaol Ltzebuergesch Nederlands occitan polski Portugus Trke

Cest quoi SPIP ? Des sites sous SPIP Caractristiques compltes Conditions dutilisation

Explication de la licence SPIP est un logiciel libre distribu sous licence GPL, aussi appele en franais Licence Publique Gnrale GNU. Cette licence vous garantit les liberts suivantes : la libert dinstaller et dutiliser SPIP pour quelque usage que ce soit ; la libert dtudier le fonctionnement de SPIP et de ladapter vos propres besoins en modifiant le code source, auquel vous avez un accs immdiat puisque SPIP est intgralement programm en PHP ; la libert de distribuer des copies qui que ce soit, tant que vous naltrez ni ne supprimez la licence ; la libert damliorer SPIP et de diffuser vos amliorations au public, de faon ce que lensemble de la communaut puisse en tirer avantage, tant que vous naltrez ni ne supprimez la licence.

http://www.spip.net/fr_article864.html (1 of 3)2006.04.17 1.04.40

[SPIP] Conditions d'utilisation

Il ne faut pas confondre logiciel libre et logiciel en domaine public. Lintrt de la licence GPL (licence du logiciel libre) est de garantir la non-confiscation du logiciel, au contraire dun logiciel du domaine public qui peut se voir transform en logiciel propritaire. Vous bnficiez des liberts ci-dessus dans le respect de la licence GPL ; en particulier, si vous redistribuez ou si vous modifiez SPIP, vous ne pouvez cependant pas y appliquer une licence qui contredirait la licence GPL (par exemple, qui ne donnerait plus le droit autrui de modifier le code source ou de redistribuer le code source modifi). Remarques pratiques SPIP tant fourni et distribu gratuitement par ses auteurs, ces derniers noffrent aucune garantie daucune sorte quant lutilisation que vous en ferez. Vous pouvez utiliser SPIP pour toute activit (y compris personnelle, professionnelle ou commerciale). Vous tes libre de dterminer la rtribution de vos services le cas chant, dajouter contractuellement votre prestation une forme de garantie quant au service fourni ; mais, encore une fois, votre propre contrat ne doit pas interfrer avec la licence GPL attache SPIP (par exemple, vous ne pouvez pas interdire votre client de modifier le logiciel). Le texte de la licence GPL (en anglais) est fourni avec SPIP ; il est consultable depuis le bas de chaque page dans lespace priv.

SPIP, Systme de Publication pour lInternet Copyright 2001-2006, Arnaud Martin, Antoine Pitrou, Philippe Rivire et Emmanuel Saint-James. Ce programme est un logiciel libre ; vous pouvez le redistribuer et/ ou le modifier conformment aux dispositions de la Licence Publique Gnrale GNU, telle que publie par la Free Software Foundation ; version 2 de la licence, ou encore ( votre choix) toute version ultrieure. Ce programme est distribu dans lespoir quil sera utile, mais SANS AUCUNE GARANTIE ; sans mme la garantie implicite de COMMERCIALISATION ou DADAPTATION A UN OBJET PARTICULIER. Pour plus de dtails, voir la Licence Publique Gnrale GNU. Un exemplaire de la Licence Publique Gnrale GNU doit tre fourni avec ce programme ; si ce nest pas le cas, crivez la Free Software Foundation Inc., 675 Mass Ave, Cambridge, MA 02139,
http://www.spip.net/fr_article864.html (2 of 3)2006.04.17 1.04.40

[SPIP] Conditions d'utilisation

Etats-Unis. Ce logiciel est tlchargeable ladresse http://www.spip.net/ ; vous trouverez galement, sur ce site, un mode demploi complet et des informations supplmentaires. En droit franais, SPIP est rgi par les dispositions du code de la proprit intellectuelle (CPI). Le noyau de SPIP est une oeuvre de collaboration entre ses auteurs, dsigns ci-dessus (article L 113-1 du CPI). Lensemble du projet SPIP forme une oeuvre collective au sens des articles L 113-2 et L 113-5 du CPI. Les auteurs mettent luvre disposition de tous selon les droits et obligations dfinis par la licence publique gnrale GNU. Les icones de linterface sont de Diala Aschkar et de Jakub Jimmac Steiner. Les traductions de linterface sont le fruit du travail ralis par une quipe de traducteurs runis sur le site spip.net.

tlcharger le squelette de cette page

http://www.spip.net/fr_article864.html (3 of 3)2006.04.17 1.04.40

[SPIP] Installation

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas Installation

Installation

http://www.spip.net/fr_rubrique151.html (1 of 2)2006.04.17 1.07.44

[SPIP] Installation

Rechercher
franais tout le site

Installer SPIP Hbergeurs acceptant SPIP Utiliser SPIP en local

Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique151.html (2 of 2)2006.04.17 1.07.44

[SPIP] Installer SPIP

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas Installation

Installer SPIP
franais Espaol Installer SPIP Hbergeurs acceptant SPIP Utiliser SPIP en local galego catal italiano Krol ryon dansk Deutsch occitan polski Portugus English Trke

Linstallation de SPIP est trs simple : il ny a pas, en particulier, de fichier modifier la main avec des variables sotriques. La procdure est trs simple (elle est dtaille ci-aprs) : 1. Rcuprez le fichier de SPIP sur notre serveur, et le dcompacter sur votre ordinateur personnel. Vous obtenez un dossier SPIP... contenant lensemble des fichiers du systme SPIP. 2. Installez le contenu de ce dossier sur votre site (par FTP, comme vous le faites habituellement pour installer vos pages sur votre site). 3. Connectez-vous avec votre navigateur sur votre site, dans un dossier intitul ecrire , o SPIP vous proposera une interface graphique vous permettant de configurer le systme. Une fois ces quelques informations de configuration fournies, SPIP sera totalement install et vous pourrez commencer travailler sur votre site.

http://www.spip.net/fr_article402.html (1 of 7)2006.04.17 1.08.20

[SPIP] Installer SPIP

Configuration ncessaire
Vous devez disposer dun hbergement Web avec : un accs FTP pour linstallation des fichiers ; le support de PHP3 ; un accs une base de donnes MySQL. Avant linstallation, vous devez avoir une base mySQL disponible. Sur de trs nombreux hbergements, il faut soit demander lactivation dune base mySQL ladministrateur, soit suivre une procdure automatique en ligne (dans tous les cas, lactivation de la base mySQL na rien voir avec SPIP ; si vous avez des difficults, seul votre hbergeur peut vous fournir les mots de passe ncessaire et vous expliquer comment activer votre compte mySQL). Vous devez connatre les donnes de votre connexion MySQL (fournies par lhbergeur) : ladresse de la base MySQL : par exemple sql.free.fr, ou localhost, ou vide ;
http://www.spip.net/fr_article402.html (2 of 7)2006.04.17 1.08.20

[SPIP] Installer SPIP

votre login MySQL : souvent le mme login que votre compte Web ; votre password MySQL : souvent le mme que le compte Web ; Lors de linstallation, une fois ces informations indiques, il faudra aussi prciser : le nom de la base de donnes : souvent le mme login que votre compte Web - il est possible que le serveur vous offre la possibilit de crer vous mme cette base.

Exemple : si vous disposez dun compte nomm monsite chez Free (adresse http://monsite.free.fr), ladresse de la base mySQL est sql.free.fr , le nom de la base de donnes est monsite , votre login est monsite et le mot de passe est celui de votre compte. Il vous suffit dactiver votre base de donnes pour php Ces lments sont indispensables : si vous ne les connaissez pas, contactez votre hbergeur et demandez-lui de vous les rappeler. Aucune configuration spciale nest ncessaire sur votre ordinateur personnel, SPIP se gre entirement sur le Web. Tout ce dont vous avez besoin, cest dun navigateur Web (nimporte lequel), et dun logiciel de transfert FTP pour installer les fichiers sur votre compte.

Installation automatique ( spip_loader )


Il existe pour SPIP une procdure dinstallation ultra-simplifie : un fichier tlcharger sur votre serveur et a sinstalle. Attention : cette procdure ne fonctionne pas sur tous les serveurs. Si elle ne fonctionne pas (vous vous en rendrez compte immdiatement), passez ltape 1 ci-dessous. Rcuprez le fichier spip_loader.php3 ladresse ci-dessous (si le fichier saffiche dans votre navigateur, faites Enregistrer sous... ) : http://rezo.net/spip-dev/INSTALL et tlchargez-le tel quel sur votre serveur (chez votre hbergeur) par FTP. Visitez cette page avec votre butineur Web habituel ( ladresse du style : http://www.moncompte.com/spip_loader.php3) et suivez la procdure indique. Si la procdure fonctionne, ce petit fichier va rcuprer SPIP sur notre propre
http://www.spip.net/fr_article402.html (3 of 7)2006.04.17 1.08.20

[SPIP] Installer SPIP

serveur et linstaller chez votre hbergeur. Ensuite la procdure de configuration dmarre automatiquement (tape 3 ci-dessous).

1. Rcuprer SPIP
SPIP est disponible en tlchargement par le Web ladresse : http://www.spip.net/spip-dev/DISTRIB Dans ce dossier vous trouverez : un fichier spip.zip : il sagit de la version complte de SPIP, comprenant toutes les traductions existantes ; un sous-dossier o sont dposes les versions monolingues de SPIP (identifies par le code de la langue en deux ou trois lettres) ; celles-ci peuvent tre utiles pour minimiser lespace dhbergement occup et/ou le temps de tlchargement. Choisissez la version qui vous intresse, dcompactez larchive sur votre ordinateur dans un rpertoire de votre choix, puis transfrez le contenu de ce rpertoire chez votre hbergeur via FTP.

2. Installer les fichiers


Installez lensemble des fichiers de SPIP sur votre site, lendroit o vous voulez que le site gr par le systme soit accessible au public : le plus souvent la racine de votre site, mais ce nest pas impratif. titre dinformation, la structure est la suivante :
q

rpertoire racine r squelettes .html r nombreux fichiers .php3 r dossier /CACHE (vide) r dossier /IMG r dossier /NAVPICS r dossier /ecrire (le plus important) s nombreux fichiers .php3 s dossier /AIDE s dossier /img_pack s dossier /data (vide) s dossier /lang

http://www.spip.net/fr_article402.html (4 of 7)2006.04.17 1.08.20

[SPIP] Installer SPIP


s

dossier /upload (vide)

3. Procdure de configuration
Dsormais tout se droule en ligne. Il vous suffit daller visiter votre dossier / ecrire par le Web. Exemple : selon notre exemple prcdent, il sagirait de ladresse http://monsite.free.fr/ecrire.

Lors de la premire connection cette adresse, une procdure dinstallation pas-pas dmarre. Linterface est trs simple, il suffit dentrer les informations demandes (essentiellement les informations concernant la base de donnes mySQL indiques au dbut). Une fois que cest termin, le systme vous demande lidentification que vous avez indique et vous pouvez commencer grer votre site. Par la suite, cest toujours dans ce dossier /ecrire que vous irez travailler, muni de vos codes didentification.

http://www.spip.net/fr_article402.html (5 of 7)2006.04.17 1.08.20

[SPIP] Installer SPIP

chaque tape de la procdure dinstallation, vous trouverez un lien vers laide (comme ceci : ), qui provoque laffichage dune aide en ligne expliquant chaque dtail de lutilisation de SPIP. (La seule opration un peu complexe apparat sur certains serveurs : il vous faudra peut-tre modifier les droits daccs de certains dossiers ; lopration nest pas bien mchante, et laide en ligne vous fournit tous les dtails ncessaires.) Si tout sest bien droul jusquici, la procdure dinstallation est termine, et vous pouvez crer et grer votre site sans aucune autre manipulation sotrique...

En cas de grosse erreur (du genre : vous avez oubli votre propre accs au site - frquent au dbut...), pour relancer cette procdure dinstallation, il faut utiliser votre logiciel FTP et effacer les fichiers suivants : /ecrire/inc-connect.php3 /ecrire/.htaccess (sil existe) La connexion suivante dans le dossier ecrire relancera alors la
http://www.spip.net/fr_article402.html (6 of 7)2006.04.17 1.08.20

[SPIP] Installer SPIP

procdure de configuration (en ralit, cest labsence de fichier inc-connect.php3 qui provoque le lancement de cette procdure).

Votre tmoignage
Afin de nous aider amliorer cette procdure dinstallation, merci de faire part de votre exprience dans le forum installation sur ce site, ou en crivant spip@rezo.net (attention : dans les deux cas vos rponses seront publies sur notre site, soit sur le forum, soit dans les archives de notre liste de discussion). Si vous effectuez linstallation vous-mme, veuillez indiquer : le nom de votre hbergeur (important, a, quon ait une ide des diffrents hbergeurs compatibles, notamment les gratuits) ; les ventuelles difficults rencontres (y compris les difficults dinterface et de comprhension du processus dintallation, histoire quon puisse amliorer linterface ou la documentation) ; mme si votre installation sest droule sans aucune difficult, merci de lindiquer (cest une info intressante).

tlcharger le squelette de cette page

http://www.spip.net/fr_article402.html (7 of 7)2006.04.17 1.08.20

[SPIP] Hbergeurs acceptant SPIP

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas Installation

Hbergeurs acceptant SPIP


franais catal italiano Krol ryon Deutsch occitan polski Trke English Espaol Installer SPIP Hbergeurs acceptant SPIP Utiliser SPIP en local

SPIP-contrib : quel hbergeur ?


Une liste dhbergeurs compatibles ou non avec SPIP est dsormais disponible sur le Spikini de SPIP-contrib. Nhsitez pas contribuer lenrichissement de cette liste, il sagit dun outil apprci par de nombreux utilisateurs dbutants.

Questions / rponses
Mon hbergeur nest pas dans la liste ci-dessus. Comment je fais ?

http://www.spip.net/fr_article885.html (1 of 3)2006.04.17 1.08.35

[SPIP] Hbergeurs acceptant SPIP

Sil propose PHP4 avec MySQL, il y a de grandes chances que a marche. De toute faon, lensemble tlchargement plus essai dinstallation devrait prendre aux plus maladroits quelques dizaines de minutes maximum. Si vous voulez tout de mme vraiment savoir lavance si a va marcher, lisez les questions qui suivent. Quelles sont les extensions de fichiers PHP supportes par mon hbergeur ? Certains hbergements ne reconnaissent pas les extensions .php3, qui sont celles des fichiers de SPIP jusqu la version 1.8 (lorsque vous tenterez dinstaller SPIP, vous verrez le code contenu dans les fichiers au lieu de la procdure dinstallation). Danc ce cas, essayez lune des distributions drives de SPIP que propose la communaut. Avec quelles versions de PHP SPIP est-il compatible ? La version 1.7.2 est compatible avec php3 partir de la version php 3.0.8, ainsi quavec toutes les versions de php4. La version 1.8 est compatible de PHP 4.0.8 PHP 5. Avec quelles versions de MySQL SPIP est-il compatible ? Aucun test na t fait en ce sens, mais normalement toutes les versions rcentes conviennent : notamment, partir de la 3.22. Et avec quels serveurs Web, sous quels systmes dexploitation ? Encore une fois, nous navons pas fait de tests sur le sujet. Bien entendu, le choix recommand, car le plus rpandu, est Apache sous un Unix quelconque (par exemple Linux, FreeBSD, Solaris, MacOS X...). Nanmoins, il est fort probable que SPIP marche sous dautres configurations. Ainsi, il est rgulirement test avec succs sous Windows, avec PHP4 en module Apache. Merci de nous signaler votre exprience avec des configurations logicielles autres que celles cites ci-dessus. O en savoir plus sur linstallation ?
http://www.spip.net/fr_article885.html (2 of 3)2006.04.17 1.08.35

[SPIP] Hbergeurs acceptant SPIP

Le manuel dinstallation ; et, en cas de problme, la FAQ technique.

tlcharger le squelette de cette page

http://www.spip.net/fr_article885.html (3 of 3)2006.04.17 1.08.35

[SPIP] Utiliser SPIP en local

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas Installation

Utiliser SPIP en local


franais catal Krol ryon Espaol italiano eg, occitan English Trke Deutsch polski Deutsch Portugus

Pour publier votre site sur le Web, vous avez certainement besoin dun hbergeur. Mais en attendant, vous voulez peut-tre faire des essais et des rglages sans tre gn par la lenteur de la connexion Internet, et sans laisser vos futurs visiteurs admirer ds maintenant vos premiers pts. La solution est dhberger votre propre petit serveur Web sur votre machine personnelle, pour votre usage priv. Cela sappelle travailler en local .

http://www.spip.net/fr_article1970.html (1 of 2)2006.04.17 1.08.53

[SPIP] Utiliser SPIP en local

Installer SPIP Hbergeurs acceptant SPIP Utiliser SPIP en local

Pour les utilisateurs ayant un PC fonctionnant sous Windows, la solution la plus simple pour tester SPIP consiste installer EasyPHP sur sa propre machine. Le site Ecran de Bureau propose, sur SPIP-Contrib, un fichier PDF expliquant graphiquement la marche suivre. Ce document est destin aux dbutants. Les autres systmes (MacOS, Linux) permettent aussi de monter son petit serveur personnel, parfois automatiquement, parfois au prix dun lger effort de configuration la main. Nous vous conseillons de vous reporter la documentation de votre systme ou aux sites Web dentraide ddis celui-ci.
Soulignons quil sagit essentiellement dune solution pour tester SPIP. Dans le cadre dune utilisation relle pour diffuser de linformation sur linternet, il faudra raliser une installation chez un vritable hbergeur.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1970.html (2 of 2)2006.04.17 1.08.53

[SPIP] volutions et mises jour

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

volutions et mises jour


SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 SPIP 1.0.3, 1.0.4, 1.0.5

Rechercher
franais tout le site

Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au site

http://www.spip.net/fr_rubrique155.html (1 of 2)2006.04.17 1.10.26

[SPIP] volutions et mises jour

La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique155.html (2 of 2)2006.04.17 1.10.26

[SPIP] SPIP 1.8.3

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.8.3
franais SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 catal English Espaol italiano

La version 1.8.3 de SPIP est une version de maintenance, cest--dire quelle corrige plus quelle napporte de nouvelles fonctionalits. Elle fait suite la publication dune alerte scurit sur SPIP. Bien que les failles dtectes restent relatives, il est recommand de migrer les sites en production cette version de Spip. Si lon nest pas en mesure de faire cette migration, une solution alternative est dinstaller cet cran de scurit . Ainsi cette version 1.8.3 introduit, pour lessentiel, des corrections de petits trous de scurit, notament par lintgration de la librairie safehtml afin de scuriser les formulaires publics, ce qui assure aussi, par exemple, que des gras mal ferms ne dbordent de partout. Au menu : la langue tchque fait son entre dans la distribution, apparition de la barre ddition sur safari, les images rduites conservent un fond transparent si loriginal en a un,

http://www.spip.net/fr_article3333.html (1 of 2)2006.04.17 1.10.40

[SPIP] SPIP 1.8.3

SPIP 1.0.3, 1.0.4, 1.0.5

les balises #ENV sont scurises par dfaut, cest dire quon ne leur permet pas de transmettre du code javascript ou php, les variables globales sont mieux contrles, le critre {mode=image} pour les boucles DOCUMENTS est corrig et permet de rcuprer les vignettes, le raccourci [<imgX>->url] est dboggu et les liens sur les images marchent nouveau.

tlcharger le squelette de cette page

http://www.spip.net/fr_article3333.html (2 of 2)2006.04.17 1.10.40

[SPIP] SPIP 1.8.2

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.8.2
franais SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 catal Deutsch English Espaol italiano

Salut tout le monde ! la version 1.8.2 de SPIP est disponible ladresse

www.spip.net/fr_download Il sagit de la dernire version de la srie 1.8, car le dveloppement de SPIP change de systme (nous passons de CVS SVN), et des ruptures importantes seront dcides notamment, le passage des fichiers en extensions .php3 aux extensions .php, la rorganisation des rpertoires, etc. Cette version corrige la majeure partie des bugs (connus) de la version 1.8.1, et devrait tre en gnral plus fiable. Principales nouveauts :

http://www.spip.net/fr_article3173.html (1 of 6)2006.04.17 1.10.58

[SPIP] SPIP 1.8.2

SPIP 1.0.3, 1.0.4, 1.0.5


q

Interface et rendu
De nombreuses amliorations de compatibilit XHTML dans la fonction propre() et au niveau de lintgration des documents dans le texte. Meilleure accessibilit des tableaux. Suivi par RSS des forums internes du site, de la messagerie personnelle, et des articles/brves etc proposs la publication. Options supplmentaires pour la syndication de sites : on peut dpublier automatiquement les liens qui ne figurent plus dans le fichier de syndication du site syndiqu, et/ou les effacer de la base de donnes aprs une certaine priode. Par ailleurs la lecture des fichiers de syndication sait lire plus dlments, et notamment : r les documents distants (podcasting ou enclosure, voir plus bas) ; r les dates de mise jour r les changements de titre ou de contenu La possibilit, dans lespace priv, de rgler de manire plus fine lheure (et non plus seulement le jour) de publication dun article.

Gestion des documents


Documents distants. Dans le bloc qui permet de tlcharger un document associ un article, il est dsormais possible de mentionner lURL dun document distant , qui sera alors intgr dans la base de donnes comme sil sagissait dun document local , mais sans que le fichier lui-mme soit dans le rpertoire IMG/ Ces documents distants sont rfrencs de la mme manire que les documents locaux : on peut modifier leur titre, leur descriptif ; SPIP contrle lexistence de ces fichiers et leur taille, et, dans le cas dimages, en ramne une copie localement pour en fabriquer automatiquement les vignettes rduites. Il est possible de rapatrier systmatiquement ces documents distants, partir dun filtre ajouter dans les squelettes : |copie_locale. Ce filtre procde de la manire suivante : aprs avoir, le cas chant, fait une copie locale du document (ce qui peut tre long, si le document fait plusieurs Mo), il retourne simplement
http://www.spip.net/fr_article3173.html (2 of 6)2006.04.17 1.10.58

[SPIP] SPIP 1.8.2

ladresse locale du document. Enfin, SPIP intgre cette notion de document distant dans la syndication : dune part, il lit les flux de syndication indiquant des documents joints (podcasting), dautre part, le squelette dist/backend.html publie au mme format les documents associs larticle et qui ne figurent pas dans le texte de larticle (autrement dit, lquivalent ce qui apparat, dans lespace priv, dans la partie portfolio / documents joints de larticle). Indexation des documents. Les titres et descriptifs de tous les documents sont indexs, et donc utilisables dans une <BOUCLE(DOCUMENTS){recherche}{par points}{inverse}> Quand cest possible, SPIP essaie aussi dindexer le contenu des documents (notamment pour les documents aux formats HTML, TXT, PDF, RTF et DOC). Cette fonctionnalit est extensible dautres formats en dveloppant des scripts extracteurs (on peut facilement imaginer de tels scripts pour les formats MP3 ou OpenOffice). Zip lupload. Lorsquon tlcharge un document interdit , ou en tous cas pas prvu dans la table spip_types_documents (par exemple un fichier .php), SPIP propose dsormais de zipper le document. (Auparavant il ignorait silencieusement la demande dupload.)

Calendrier dans lespace public


SPIP 1.8.2 permet de visualiser dans lespace public les calendriers de lespace priv, et de construire des agendas bnficiant des outils de mise en page de ces calendriers. Cette possibilit est fournie par un nouveau critre de boucle et trois nouveaux filtres. Pour en savoir plus, lire larticle Le calendrier de SPIP 1.8.2 .

Nouveaux filtres
Nouveau filtre |inserer_attribut{variable, valeur}, qui permet de forcer un attribut dun tag HTML. Exemple dutilisation : [(#LOGO_ARTICLE|#URL_ARTICLE||inserer_attribut{alt,#TITRE})]

http://www.spip.net/fr_article3173.html (3 of 6)2006.04.17 1.10.58

[SPIP] SPIP 1.8.2

Nouveau filtre |alterner, qui permet de faire des alternances de couleurs dans une liste via, par exemple, [(#COMPTEUR_BOUCLE|alterner {1,2,3})] ; le nombre darguments donne la priodicit de lalternance, qui nest donc pas forcment une succession de type pair/impair . Exemples :
q

[(#COMPTEUR_BOUCLE{'yellow','blue'})] peut tre utiliser pour mettre des couleurs diffrentes sur les lignes paires et impaires dun tableau. Cette boucle affiche une table dau maximum 17 articles, sur 5 lignes et 4 colonnes, en compltant dune case vide sur la dernire ligne si ncessaire :

<B_ar> <table border="1"> <BOUCLE_ar(ARTICLES){0,17}{par hasard}> [(#COMPTEUR_BOUCLE|alterner{'<tr>','','',''})] <td>#ID_ARTICLE</td> [(#COMPTEUR_BOUCLE|alterner{'','','','</tr>'})] </BOUCLE_ar> [(#TOTAL_BOUCLE|alterner{'<td colspan="3"></td></ tr>','<td colspan="2"></td></tr>','<td></td></tr>',''})] </table> </B_ar> Remarque : ce filtre tant purement numrique , si on lapplique sur [(#ID_ARTICLE|alterner{1,2})], il affichera 1 pour les articles dont lidentifiant est impair, et 2 pour les identifiants pairs. Filtres dURL absolues . Tous les liens proposs par SPIP ( partir des raccourcis [->article 11] ou des balises du type #URL_ARTICLE) sont des liens relatifs , qui nindiquent pas ladresse complte de la ressource lie. Or, pour certains usages, comme par exemple la syndication, il est utile davoir ladresse absolue. Pour cela deux filtres ont t introduits : |url_absolue qui sapplique aux URL : [(#URL_ARTICLE| url_absolue)] ; |liens_absolus qui sapplique aux textes et transforme ladresse des liens et des images : [(#TEXTE|liens_absolus)]. (Le filtre |abs_url rsume ces deux filtres en un seul, et applique | url_absolue sur les #URL_ARTICLE, et |liens_absolus sur les lments de type #TEXTE.)

http://www.spip.net/fr_article3173.html (4 of 6)2006.04.17 1.10.58

[SPIP] SPIP 1.8.2

Le filtre |reduire_image est dsormais capable de rduire les images lintrieur dun texte, et peut donc tre appliqu la balise #TEXTE. Autre modification de ce filtre : si lon indique la longueur 0 en vertical ou en horizontal, cela signifie que seule lautre dimension doit tre prise en compte pour la rduction. Ainsi [(#LOGO_ARTICLE||reduire_image{60,0})] passera le logo une dimension horizontale de 60 pixels maximum (la dimension verticale tant calcule de faon conserver les proportions).

Amlioration de la syntaxe des squelettes


Les squelettes par dfaut passent au format XHTML 1.0 transitional. Une balise #DOSSIER_SQUELETTE permet de livrer un peu plus facilement des jeux de squelettes faciles installer dans des sous-rpertoires. #FORMULAIRE_FORUM accepte un argument qui indique la page o le visiteur qui poste un forum doit tre renvoy. Par dfaut, en effet, cet endroit tait devenu #URL_FORUM ; mais certains usages peuvent exiger un retour sur la mme page (notation : [(#FORMULAIRE_FORUM{#SELF})]), ou vers une page spcifique ([(#FORMULAIRE_FORUM{merci.php})]). Gnralisation des constructions de la forme [(#BALISE|filtre {[(#AUTRE_BALISE|autre_filtre)]})] un niveau dimbrication quelconque. Cette possibilit stend galement aux critres dans les boucles, les crochets ntant alors pas ncessaires (et mme refuss). Pour des raisons duniformisation de syntaxe, la balise #EXPOSE vient remplacer lancienne balise #EXPOSER. La seule diffrence rside dans le fait quil faut crire [(#EXPOSE{on,off})] et non plus [(#EXPOSER|on,off)] Lorsquune boucle utilise le critre {statut}, le rglage par dfaut du statut des lments lis cette boucle disparat. Autrement dit, si les boucles (ARTICLES) normales continuent ne slectionner que les articles dont le statut est 'publie', une boucle <BOUCLE_a(ARTICLES){statut=prop}> ira slectionner les articles proposs. De mme la boucle <BOUCLE_indy(BREVES){statut IN prop, publie}> slectionnera toutes les brves proposes ou publies ; la balise #STATUT permet dafficher pour chacune le statut correspondant (et par exemple de donner une class css diffrente en fonction du statut).
http://www.spip.net/fr_article3173.html (5 of 6)2006.04.17 1.10.58

[SPIP] SPIP 1.8.2

le critre {par ...} accepte prsent des noms de champs SQL spcifis dynamiquement, notamment par la balise #ENV, et leur absence ne dclenche pas derreur SQL. En outre, ce critre admet prsent la syntaxe {!par ...} pour trier en ordre inverse toutes les colonnes indiques (ceci peut remplacer le critre {inverse}, notamment lorsquon veut faire un tri complexe portant sur plusieurs colonnes). Pour avoir un tri en ordre croissant pour certaines colonnes et dcroissant pour dautres, il suffit dcrire plusieurs critres par. Tout ceci permet dcrire facilement des squelettes de prsentation dune table plusieurs colonnes intgrant des boutons de tri sur chacune des colonnes, comme dans un tableur. Un exemple en est donn ici.

***
Comme lhabitude, ces nouveauts seront progressivement reportes dans la documentation.

tlcharger le squelette de cette page

http://www.spip.net/fr_article3173.html (6 of 6)2006.04.17 1.10.58

[SPIP] SPIP 1.8, 1.8.1

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.8, 1.8.1


franais catal occitan Deutsch Portugus English Trke Espaol italiano SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2,

Vendredi 1er avril 2005 : [SPIP 1.8] est tlchargeable ladresse www.spip.net/ spip-dev/DISTRIB/. Cette nouvelle version de SPIP constitue laboutissement de plus dune anne de travail (la version 1.7 date en effet de janvier 2004), et il est impossible den lister ici toutes les nouveauts de faon exhaustive. Les plus grands efforts ont t faits, malgr des transformations importantes (visibles et invisibles) de tous les composants du programme, pour que la mise jour dun site sous nimporte quelle version ancienne de SPIP se droule sans (trop de) difficults. En cas de problme de mise jour, nhsitez pas toutefois demander de laide sur la liste spip@rezo.net, ou consulter le nouveau site de forums de la communaut SPIP, ladresse http://forum.spip.org/.

http://www.spip.net/fr_article2991.html (1 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

1.2.1 SPIP 1.0.3, 1.0.4, 1.0.5

Lespace priv
La transformation la plus spectaculaire est certainement celle de lespace priv. Ce dernier a bnfici dune refonte graphique et ergonomique complte, permettant de publier plus vite et de naviguer plus aisment.

Un article de la documentation dtaille les volutions ergonomiques introduites dans cette version de SPIP.

Outils daide la publication


Plusieurs outils daide la publication ont fait leur apparition : Le correcteur orthographique

Une fois un article crit, on peut corriger les fautes dorthographe grce un serveur externe de correction.
http://www.spip.net/fr_article2991.html (2 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

Une note ce propos : le correcteur dorthographe ntant pas install en local , les mots vrifier sont envoys (dans le dsordre) des serveurs dorthographe dvelopps par le SPIP Lab et mis votre disposition par divers membres de la communaut des utilisateurs de SPIP. Afin dviter douvrir une brche de confidentialit , il est demand aux webmestres qui le dsirent dactiver expressment cette fonctionnalit sur leur site. La prvisualisation Une fois un article propos la publication, chacun (administrateur ou rdacteur, selon le rglage du site) peut le prvisualiser avec le squelette du site. Ainsi, on peut vrifier le bon affichage final de larticle sans devoir le publier puis le dpublier . Lhistorique des modifications Pour faciliter le suivi ditorial et lcriture collaborative, [SPIP 1.8] introduit lhistorique des modifications (galement dvelopp par SPIP-Lab). On peut ainsi obtenir une liste des derniers articles dits, et voir les modifications faites entre diffrentes versions dun article.

Le portfolio

http://www.spip.net/fr_article2991.html (3 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

[SPIP 1.8] introduit une nouvelle mise en page pour les documents associs un article. Tous les documents associs un article qui ne se trouvent pas dj dans le texte sont affichs dans un portfolio en dessous de larticle. Depuis ce portfolio, on peut facilement diter les titre et description dun document. On peut aussi si les bonnes librairies graphiques sont installes et configures sur le serveur faire tourner les images de 90 ou 180 degrs. Ce portfolio est complt par la possibilit dassocier plusieurs documents un article, en une seule fois. On peut :
q

soit mettre tous les documents associer un article dans un sousrpertoire de ecrire/upload/ ; soit associer une archive zip larticle. On aura alors le choix de la dcompresser et dassocier les documents quelle contient larticle.

Un article de la documentation prcise lutilisation des outils de traitement dimages.

Espace public
Emplacement des fichiers squelettes
http://www.spip.net/fr_article2991.html (4 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

Les squelettes par dfaut (anciennement nomms article-dist.html ) livrs avec [SPIP 1.8] ne sont plus la racine du site, mais dans un sous-rpertoire dist/ ; ceci en accord avec un dbut de rorganisation des fichiers de SPIP, qui permet de placer les squelettes personnaliss dans le rpertoire squelettes/, et plus seulement la racine du site (le rglage ventuel de la variable $dossier_squelettes est toujours accept). Nouveau compilateur de squelettes Innovation moins spectaculaire, mais sans aucun doute aussi importante que tout ce qui prcde, [SPIP 1.8] introduit un compilateur de squelettes . Initialement prsent sur le site SPIP Contrib, ce compilateur a permis, aprs des mois de travail acharn, dobtenir une rcriture complte du systme qui permet SPIP dinterprter le langage de boucles, de balises, de filtres et de critres.

Les avantages directs de cette rcriture ne sont pas forcment vidents au premier abord. Limportant (outre le dpassement de certaines contraintes de programmation qui commenaient peser lourd, et lamlioration gnrale du code) est quelle permet dintroduire relativement facilement de nouvelles <BOUCLES()>, de nouveaux {critres} et de nouvelles #BALISES par simple ajout de fonctions dans le fichier mes_fonctions.php3 linstar des |filtres des versions prcdentes de SPIP. Un bon exemple est la contrib Portrait ou Paysage ? publie sur SPIP Contrib, qui offre trois nouveaux critres de tris des images : {portrait}, {paysage} et {carre}. Ce nouveau modle devrait ouvrir le dveloppement de SPIP une frnsie de contributions, dj bourgeonnante. Si vous ajoutez de votre ct de nouvelles fonctionnalits SPIP, nhsitez pas en faire profiter toute la communaut ! Au passage, notons que lon peut dsormais : intgrer une boucle dans le code optionnel avant dune autre boucle (entre <B_articles> et <BOUCLE_articles(ARTICLES){critres...}>). Les balises peuvent tre imbriques les unes dans les autres, par exemple :
http://www.spip.net/fr_article2991.html (5 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

[ [(#SURTITRE)] (#LOGO_ARTICLE)] De mme, on peut mettre des <INCLURE()> dans les parties optionnelles dune balise : [<INCLURE(debut.php3)>(#SURTITRE) ] On peut accder sans programmation supplmentaire, dans les squelettes, nimporte quel champ dune table travers la balise #NOM_DU_CHAMP la syntaxe #_nom:TEXTE permet daccder la balise #TEXTE de la boucle englobante nomme _nom. On peut ainsi accder des balises de boucles englobantes dont le nom serait ambigu dans le contexte de la boucle actuelle (typiquement, #TITRE et #_rubrique:TITRE). On peut utiliser une balise dans lvaluation dun critre : {titre = #TITRE} En dfinissant de nouvelles boucles, on peut accder des tables situes dans dautres bases de donnes. Un dbogueur accompagne ce compilateur : dune part, le webmestre voit safficher des messages derreur en cas de problme de construction de ses squelettes ; dautre part, en remplaant dans lURl de recalcul de la page le code var_mode=recalcul par var_mode=debug, le webmestre accde un mode de visualisation qui expose prcisment le code PHP et MySQL produit par le compilateur partir des squelettes. Un outil certes difficile de prime abord, mais prcieux pour celles et ceux qui souhaitent comprendre en dtail le fonctionnement de telle ou telle balise et notamment quand il sagit den construire de nouvelles.

http://www.spip.net/fr_article2991.html (6 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

Traductions
[SPIP 1.8] bnficie aussi de limportant travail de sa toujours croissante communaut de traducteurs. Il est dsormais disponible dans les 33 langues suivantes, avec souvent une documentation complte (les nouvelles venues sont signales en gras) : code langue ar bg ca cpf da de en 1 J ; 3 0 @ catal Krol ryon dansk Deutsch English trad. arabe A : 8 bulgare catalan crole runionnais hatien danois allemand anglais

cpf_hat Kreyl ayisyen

http://www.spip.net/fr_article2991.html (7 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

eo es fa fon fr gl hu it ja lb nl pl pt pt_br ro tr vi zh

Esperanto Espaol fongb franais galego magyar italiano eg, Ltzebuergesch Nederlands polski Portugus Portugus do Brasil romn Trke Ti ng Vit N-e

esperanto espagnol farsi fongb franais galicien hongrois italien japonais luxembourgeois nrlandais polonais portugais brsilien roumain turc [SPIP 1.8.1] vietnamien chinois

et toujours les 7 varits doccitan : c auvernhat, c gascon, c lemosin, c lengadocian, c niard (en deux parfums), c provenau, c vivaroaupenc ! Les traducteurs et apprentis-traducteurs sont les bienvenus, pour toutes les langues de la Terre. Il y a de la place pour tout le monde. Faites circuler linformation et nhsitez pas embaucher vos amis ! La page de rfrence des traductions est toujours www.spip.net/rubrique4.html ; contact par email, sur la liste spip-trad@rezo.net

Autres nouveauts
De nouveaux raccourcis Quelques nouveaux raccourcis font leur apparition :
http://www.spip.net/fr_article2991.html (8 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

on peut maintenant insrer du code LaTEX dans un article grce la balise <math>. Ce code sera trait par un serveur externe pour le transformer en une image qui sera intgre au texte. Par exemple, le texte suivant : <math>la valeur de $x$ est $\sqrt {\frac{y^{2}}{z^{2}}}$</math> saffichera sous la forme :

la valeur de

est

le raccourci -- sera remplac par un semi-quadratin . Nouvelles balises, critres et filtres Quelques nouveaux filtres, critres et balises sont lists dans la documentation, accompagns de la mention [SPIP 1.8]. Signalons par exemple, pour les amateurs de prsentation la faon blog , le filtre |unique qui assure quun lment rcurrent (une date par exemple) nest affich quune fois ; ou encore le critre {id_article IN 1,2,3} qui affiche les articles 1,2 puis 3 dans cet ordre.

Compatibilit
PHP 4.0.8, PHP 5. La version minimale supporte est dsormais la 4.0.8 avec la librairie preg installe. [SPIP 1.8] est compatible avec PHP 5. La compatibilit avec PHP 3 est en revanche abandonne.

Note : Pour des raisons historiques , les fichiers de la distribution officielle continuent se nommer xxx.php3 ; ce schma de nommage disparatra dans la prochaine version de SPIP, au profit des xxx.php. Une version php de [SPIP 1.8] est
http://www.spip.net/fr_article2991.html (9 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

toutefois disponible au tlchargement. MySQL 3, 4.1.x Aucun problme de compatibilit na t relev avec MySQL jusquaux versions 4.1.x. Si toutefois vous rencontrez un problme avec MySQL 4.1, merci de le signaler sur la liste de dveloppement, spip-dev@rezo.net Librairies graphiques. [SPIP 1.8] supporte la gnration de vignettes avec NetPBM qui est facilement installable par ftp (voir http://gallery.menalto.com/ modules.... chez les hebergeurs o il nest pas dj prsent), mais aussi GD1, GD2, et Imagick (en module php, ou en ligne de commande sous le nom convert ). W3C. Le moteur de raccourcis fait son possible pour tre conforme aux recommandations du W3C en matire de codage du HTML. Toutefois cela nest pas parfait dans toutes les situations, notamment lorsque les utilisateurs entrent des textes comportant des balises complexes ou du code HTML. Note : Pour parfaire les rsultats [SPIP 1.8.1] introduit un mode tidy , qui permet dassurer que toutes les pages du site sont valides XHTML1.0 ; ce mode fonctionne dj sur www.spip.net, mme sil nest pas totalement stabilis. Pour plus dinformations voir Tidy : validation XHTML 1.0. Sans oublier :
q

Un nouveau module de gestion dURL est intgr : il sagit du mode urls propres , qui permet de passer de ladresse http://monsite/article. php3?id_article=17 quelque chose qui ressemble http:// monsite/titre_de_l_article ; Les forums sont indexs dans le moteur de recherche. Cette indexation nest pas individuelle, mais par fil de discussion (toutes les rponses partir du pied dun thread) ; la variable id_thread et les balises #ID_THREAD et #URL_FORUM font leur apparition. La boucle (HIERARCHIE) est traite de faon plus souple : on peut donc faire {inverse}, {par hasard}, {n-2,1}, {par titre}, etc. le systme de cache gre un quota despace disque occup sur le serveur (rgl par dfaut sur 5 Mo) ; linsertion de documents est maintenant gre par des <div> et des feuilles de style ;

http://www.spip.net/fr_article2991.html (10 of 12)2006.04.17 1.11.29

[SPIP] SPIP 1.8, 1.8.1

le raccourci {{ }} est maintenant transform en <strong> ; la syndication accepte les flux aux formats Atom 0.3, RSS 0.91, RSS 1.0 et RSS 2.0 ; les corrections faites en amont sur le site syndiqu sont reprises par SPIP quand il intgre les flux, et les champs <modified> et <lastBuildDate> modifient dsormais la date des articles syndiqus ; pour sa part, la syndication de flux javascript est abandonne (mais avait-elle jamais t utilise ?) ; les fichiers de localisation peuvent tre placs dans le mme rpertoire que les squelettes ; le fichier ecrire/lang/perso.php3 disparat, il est remplac par les fichiers local_xx.php3 que lon peut placer dans le rpertoire des squelettes. xx spcifie un code de langue, ce fichier aura alors priorit sur les autres modules de localisation de la mme langue. Le fichier local.php3, sil existe, est inclus en dernier lieu et permet tous les hacks imaginables. on peut suivre lactivit de SPIP dans ses fichiers logs : ecrire/data/ spip.log et ecrire/data/mysql.log Laide en ligne nest plus livre en standard, elle fonctionne en client/ serveur, avec tlchargement automatique depuis le site spip.net. Enfin, last but not least, lAgenda de lespace priv a t entirement revu.

*** [SPIP 1.8.1]


Introduite le 15 avril 2005, [SPIP 1.8.1] rgle les quelques soucis dinstallation qui se sont fait jour aprs la sortie de la version 1.8. Elle apporte en plus : le mode tidy (voir ci-dessus) ; un nouveau fichier htaccess.txt pour la gestion des URLs personnalises (voir Utiliser des URLs personnalises) ; une rvision de laide en ligne ; une mise jour du module LDAP

http://www.spip.net/fr_article2991.html (11 of 12)2006.04.17 1.11.30

[SPIP] SPIP 1.8, 1.8.1

Dernier point noter, la balise #PARAMETRES_FORUM a t revue. Il nest en effet plus besoin dsormais de passer ladresse de retour dans les paramtres de forum, car, par dfaut, SPIP redirige dsormais le visiteur qui vient de poster un message vers ladresse #URL_FORUM de ce message. Si le rsultat ne vous convient pas, vous pouvez rcuprer lancien fonctionnement en passant ladresse de retour en argument de la balise, sous la forme [(#PARAMETRES_FORUM{#SELF})] Au passage, ce nouvel argument page de retour quon peut dsormais passer la balise permet de faire des redirections vers une page de votre choix, par exemple [(#PARAMETRES_FORUM{message_recu.php? id_article=#ID_ARTICLE})] si vous souhaitez afficher un texte particulier aprs lenvoi du message. (Ce qui peut tre pertinent pour des forums modrs a priori.) Amusez-vous bien !

Tlchargement
Comme dhabitude le tlchargement de SPIP se fait depuis www.spip.net/spipdev/DISTRIB/. La mise jour seffectue de la manire classique, voir Effectuer une mise jour. Les sites installs laide de spip_loader peuvent tre mis jour automatiquement.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2991.html (12 of 12)2006.04.17 1.11.30

[SPIP] SPIP 1.7, 1.7.2

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.7, 1.7.2


franais catal Nederlands Deutsch English Espaol occitan polski Trke italiano SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2,

[SPIP 1.7.2] introduit de nouveaux critres et balises, et des corrections de bugs, notamment : SPIP en chinois Le chinois vient complter la liste des langues disponibles : arabe, bulgare, crole ryon, danois, allemand, anglais, espranto, espagnol, farsi, franais, galicien, italien, nerlandais, occitan (7 versions), polonais, portugais, vietnamien... et chinois !

http://www.spip.net/fr_article2102.html (1 of 12)2006.04.17 1.11.54

[SPIP] SPIP 1.7, 1.7.2

1.2.1 SPIP 1.0.3, 1.0.4, 1.0.5

Cration automatique de vignettes Plutt que GD, on peut utiliser ImageMagick, si cette librairie est prsente sur le serveur sous la forme du module php imagick , ou de la ligne de commande convert . (NB : si vous utilisez fink (Mac OS X), il faudra prciser le chemin daccs /sw/bin/convert dans le fichier inc_version.php3). ImageMagick donne gnralement de meilleurs rsultats graphiques. Que vous utilisiez la librairie GD ou ImageMagick, les vignettes sont dsormais recres en cas de besoin (on peut donc les effacer si on change de mthode de cration, ou de taille, de vignette). Attention : Il faut vous rendre dans la configuration avance du site pour slectionner votre mthode prfre de fabrication de vignettes. Si plusieurs mthodes sont disponibles, cliquez sur limage ayant le meilleur rendu ; si imagick est prsent, prfrez-le convert : la mthode dappel est plus propre . Critres optionnels Les critres optionnels permettent davoir des boucles plusieurs usages : il suffit dsormais dajouter un point dinterrogation un critre pour que celui-ci ne soit pris en compte que sil est pass dans le contexte. Cela permet par exemple de simplifier normment les boucles de backend-dist.html tout en gardant la possibilit de prciser quon veut le backend restreint aux articles en crole (backend.php3?lang=cpf) ou de la rubrique 7 et de ses sousrubriques (backend.php3?id_rubrique=7). La boucle elle-mme est alors :
<BOUCLE_backend(ARTICLES){lang?} {branche?}{par date}{inverse}{0,10}>

Astuces venant complter larsenal du multilinguisme : le critre {lang_select} sert forcer la slection de la langue pour la boucle (AUTEURS), qui normalement ne le fait pas ( linverse, le critre {lang_select=non} permet de dire aux boucles (ARTICLES), (RUBRIQUES) ou (BREVES) de ne pas slectionner la langue). la variable de personnalisation $forcer_lang indique SPIP quil doit vrifier si le visiteur dispose dun cookie de langue, et si oui le renvoyer vers la page correspondante. Cest ce que fait la page de connexion lespace priv livre en standard avec SPIP.
http://www.spip.net/fr_article2102.html (2 of 12)2006.04.17 1.11.54

[SPIP] SPIP 1.7, 1.7.2

les balises #MENU_LANG (et #MENU_LANG_ECRIRE) affichent un menu de langue qui permet au visiteur de choisir cette page en... . La premire balise affiche la liste des langues du site ; la seconde la liste des langues de lespace priv (elle est utilise sur la page de connexion lespace priv). enfin, les critres optionnels permettent dutiliser une mme boucle (en fait, un mme squelette) pour afficher soit tous les articles du site dans toutes les langues, soit seulement les articles dans la langue passe dans lURL. Ca peut tre utile, par exemple, dans les boucles de recherche :
<BOUCLE_recherche(ARTICLES){lang?} {recherche}{par points}{inverse}{0,10}>

Petites choses SPIP 1.7.1 avait introduit un bug avec la puce, qui ne respectait plus le saut de paragraphe qui la prcdait. dans laffichage des statistiques, on a dsormais une prvision du rsultat la fin de la journe, base sur la moyenne (pour les visites du site) et sur la popularit de larticle (pour les visites dun article). Ca vaut ce que a vaut...

***
SPIP 1.7.1 apportait pour sa part les nouveauts suivantes : Moteur de recherche : Indexation des ptitions et des forums. A noter, les forums sont indexs par thread, et non pas message par message. Amlioration du tri {par points} : les articles contenant les mots prcis demands ont beaucoup plus de points (que ceux qui ne contiennent que des mots commenant par les mots de la requte) ; de mme, si une requte porte sur plusieurs mots, les articles comportant tous ces mots sortiront dsormais en tte de liste. Le moteur de recherche offre donc des rsultats beaucoup plus pertinents. Amlioration du moteur pour les articles en allemand et en vietnamien :
q

en allemand on peut taper ber , ueber ou uber pour trouver le

http://www.spip.net/fr_article2102.html (3 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.7, 1.7.2

premier de ces trois mots ( ber ) ; ueber en est la translittration complexe , et uber la translittration simple. en vietnamien, ce sont les accents qui sont trs riches : ainsi pour retrouver le mot Ngi avec tous ses accents, on peut le taper aussi bien r avec les bons accents r sous la forme nguoi (sans accents) r ngu7 , les accents tant transcods, en interne, avec des chiffres r Note technique : pour permettre des recherches aussi sous la forme ngu+ (cest--dire directement dans la translittration habituelle du vietnamien sur Internet), il faut faire un pr-traitement de la variable $_GET['recherche'] pour y remplacer les '`?~.^+(par le transcodage 123456789 ; videmment SPIP ne peut fournir ce pr-traitement en standard, car il ne concerne que les recherches en langue vietnamienne.

Le surlignement des rsultats de recherche est compatible utf-8 Dans les squelettes : Le critre {tout} dans une boucle (RUBRIQUES) affiche aussi les rubriques vides la balise #EXPOSER pour mettre en valeur le chemin daccs un article dans les listes de rubriques ou darticles. (Voir la documentation). Un nouveau filtre pour les fichiers backend : |texte_backend Suppression systmatique des numro-titres dans les rponses des forums Il est dsormais possible dappeler un squelette avec un paramtre lang=... De mme <INCLURE(...){lang}> ou <INCLURE(...){lang=xx}> fonctionnent enfin et sont capables daller ventuellement chercher un squelette affin par langue (fichier article.xx.html). Ajout des id_auteur dans les boucles (FORUMS) possibilit dutiliser un critre {url==...} dans les boucles (SYNDIC_ARTICLES) Balise #URL_AUTEUR. Le filtre |couper{} est plus smart, notamment pour des longueurs trs courtes ([(#TITRE|couper{5})] donnera bien 5 caractres). Le filtre |reduire_image permet de rduire des images la vole, soit en utilisant la librarie gd (ou gd2) si elle est prsente, soit en prcisant width=... height=.... dans le code HTML produit. Typographie : Ajout dune balise <poesie>...</poesie> qui permet dentrer des vers ou
http://www.spip.net/fr_article2102.html (4 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.7, 1.7.2

des paroles de chanson avec des sauts de lignes adapts. Meilleure gestion typographique (en franais) des exclamations multiples (Whoah !??!!). Dans lespace priv : en interface complte la page ecrire/articles.php3?id_article=x permet une rvision des inscables en les affichant en gris (le rglage est faire dans le fichier ecrire/mes_options.php3). retour des boutons de messagerie dans la liste des auteurs Fonctionnalits exprimentales : Cration de points dentre dans typo() et propre() pour des patches particuliers ajout de loption $cookie_path (pour bidouiller spip avec des scripts externes comme Spikini).

***
SPIP 1.7 (3 janvier 2004) compltait linternationalisation de SPIP en apportant la possibilit, souvent demande, de construire des sites multilingues. Le site officiel, dsormais hberg sur http://www.spip.net, est lui-mme multilingue (les volontaires pour continuer les traductions sont dailleurs les bienvenus : rendez-vous http://www.spip.net/rubrique4.html). Sauvegarder la base de donnes Il est conseill de sauvegarder la base de donnes avant de mettre jour SPIP. Pour cela, allez dans la partie Administration du site de lespace priv, puis Maintenance du site et cliquez sur Sauvegarde de la base de donnes . Une fois la sauvegarde effectue (vous devrez pour cela crer un fichier au nom particulier dans le rpertoire ecrire/data), vous pourrez rcuprer le fichier rsultant (dump.xml ou dump.xml.gz). Aprs cette sauvegarde, vous pourrez mettre SPIP jour comme expliqu plus bas. Si vous avez un problme et quil faut restaurer la sauvegarde effectue ci-dessus : rinstallez dabord la version de SPIP avec laquelle vous avez effectue la sauvegarde (TRS IMPORTANT) !
http://www.spip.net/fr_article2102.html (5 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.7, 1.7.2

Ne cherchez surtout pas restaurer sous la version 1.7 une sauvegarde que vous aurez effectue avec la version 1.6 (par exemple) ! Une fois la bonne version de SPIP rinstalle, vous pourrez restaurer la sauvegarde que vous aviez faite prcdemment. Noubliez pas non plus que pour une sauvegarde complte, il faut galement recopier le contenu du rpertoire IMG/ en lieu sr. Ce rpertoire contient en effet les logos, images, documents que vous aurez uploads depuis linterface de rdaction. Important : cette sauvegarde est une simple prcaution. Ne cherchez pas la restaurer si tout fonctionne correctement. Neffacez pas non plus la base de donnes avant de faire la mise jour, cest inutile et dangereux ! Mettre jour La procdure de mise jour est la mme que dhabitude. Vous avez deux possibilits : Utiliser linstallateur automatique, spip_loader.php3 : ce fichier que vous trouverez ladresse http://www.spip.net/spip-dev/INSTALL, remplacera automatiquement votre version courante de SPIP par la version 1.7. Note : si linstallation automatique nest pas compatible avec votre systme, spip_loader.php3 vous en avertira et vous devrez alors utiliser linstallation manuelle dcrite ci-dessous. Tlcharger manuellement SPIP 1.7 sur votre site. Pour cela, vous devrez : 1. Choisir une des archives du rpertoire http://www.spip.net/spip-dev/ DISTRIB ; vous avez le choix entre la version complte, qui contient toutes les langues, et les versions monolingues qui contiennent chacune une seule langue mais sont plus lgres tlcharger. 2. Tlcharger cette archive sur votre ordinateur personnel, et la dcompacter en utilisant lutilitaire approprie (par exemple Winzip sous Windows). 3. Envoyer les fichiers ainsi dcompacts sur votre site Web, par FTP. Les fichiers doivent bien sr tre envoys au mme endroit que la version prcdente de SPIP.

http://www.spip.net/fr_article2102.html (6 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.7, 1.7.2

Une fois la nouvelle version installe, vous devrez permettre au systme de mettre jour la base de donnes. Pour cela il vous sera demand de crer un fichier dun nom particulier dans le rpertoire ecrire/data. Cette scurit permet dassurer que la personne qui effectue la mise jour est bien autorise le faire. Note : si un problme vous empche par la suite daccder lespace priv de votre site, vous pouvez recrer un accs en effaant simplement du rpertoire ecrire le fichier inc_connect.php3, ce qui relancera le formulaire dinstallation du site. Une fois SPIP mis jour, vous pouvez profiter des nouveauts quoffre la version 1.7. Celles-ci sont dtailles ci-aprs. Bonne chance et publiez bien Lquipe de SPIP.

Sites multilingues
La version 1.6 enrichissait enfin SPIP dun lot de traductions permettant dutiliser lespace priv dans diffrentes langues, et largissant ainsi lusage de SPIP des rdacteurs de diverses langues. La version 1.7 complte dsormais cet ajout en permettant galement au site public dtre multilingue sans aucun effort de mise en place ( part quelques options de configuration modifier). Cette fonctionnalit majeure (qui recouvre divers aspects comme laffichage des dates et formulaires, la slection de la typographie, la gestion des traductions darticles) fait lobjet darticles de documentation spars. Le multilinguisme inclut lapparition de plusieurs outils ddis, dont : Des options de configuration spcifiques Un systme de gestion des traductions entre articles Une page de gestion des traductions par langue Un paquet de chanes pr-traduites en diverses langues pour lespace public

Suite de linternationalisation
La palette des langues disponibles sest enrichie, puisque, ce jour, linterface de rdaction de SPIP est traduite dans les langues suivantes :
http://www.spip.net/fr_article2102.html (7 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.7, 1.7.2

franais anglais nerlandais vietnamien espagnol arabe farsi crole de la Runion allemand danois espranto italien bulgare polonais catalan portugais sept variantes diffrentes doccitan : niard, languedocien, gascon, provenal, auvergnat, limousin et vivaro-alpin ! Votre site public bnficie galement de ces traductions grce un systme de textes pr-traduits livrs avec SPIP. Vous pouvez voir ce systme en action dans les squelettes par dfaut de SPIP 1.7 : changez la langue du site ou dun article, recalculez la page publique correspondante, et les textes communs (navigation, dates, formulaires...) saffichent dans la langue choisie ! La documentation elle-mme commence tre traduite en diverses langues sur notre nouveau site officiel (http://www.spip.net). Tout cela reprsente un travail trs important, et il y a largement de la place pour de nouveaux participants (rendez-vous dans l espace des traducteurs ).

Autres modifications importantes


Espace priv : Une barre graphique de raccourcis fait son apparition au-dessus des champs ddition les plus importants (texte des articles, brves, forums). Elle permet aux dbutants de se familiariser avec les principaux raccourcis typographiques en utilisant dans un premier temps les boutons de la barre plutt que leur quivalent au clavier. Dans lcran de login, on peut choisir de rester identifi quelques jours, ce qui
http://www.spip.net/fr_article2102.html (8 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.7, 1.7.2

vite de retaper trop souvent son mot de passe. Refonte du calendrier personnel (agenda)

Calendrier mensuel Linterface du calendrier diffrencie davantage les lments ditoriaux (publication darticles et de brves) et les rendez-vous (annonces tous les participants et messages personnels).

Affichage dune journe

http://www.spip.net/fr_article2102.html (9 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.7, 1.7.2

La colonne principale affiche lintgralit des rendez-vous. Le code couleur permet de reprer les pense-btes (bleu), les rendez-vous avec dautres participants (verts) et les rendez-vous qui concernent tout le monde (jaune). Dans la colonne de gauche, un bouton permet de revenir aujourdhui, et des calendriers rduits facilitent la navigation dun jour lautre. Dans la colonne de droite (non montre dans cette copie dcran), on trouve laffichage graphique de la journe suivante.

Une page de suivi distance de la vie du site permet de rcuprer ladresse de syndication (RSS) et dinjecter les vnements du site dans un calendrier (format iCal). Nouveau systme de navigation dans lensemble du site.

Le nouveau systme de navigation

Site public : Ajout de la balise #DATE pour la boucle DOCUMENTS.

Corrections et ajouts mineurs


Espace priv : On peut dsormais configurer une adresse mail expditrice des mails du site (si
http://www.spip.net/fr_article2102.html (10 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.7, 1.7.2

elle est laisse vide, ladresse apparente de lmetteur est identique celle du destinataire, comme prcdemment). Lors dune mise jour de la base, SPIP teste dabord si les droits daccs la base de donnes sont suffisants, et affiche un message derreur sinon. Laffichage des referers a t totalement revu. Deux variables de configuration supplmentaires pour mes_options.php3 : on peut dcider que SPIP va ignorer les connexions par REMOTE_USER (.htaccess) et/ou par authentification http. Les mots de passe peuvent dsormais contenir des accents (avec un jeu de caractres 8 bits de type iso-8859-1, pas utf-8...) Site public, squelettes : Quand on poste un message dans un forum public, le nom et lemail utiliss sont mmoriss et pr-remplis automatiquement si lon poste dautres messages durant la mme session. Cela vite davoir retaper systmatiquement son nom quand on participe beaucoup aux forums. Les pages correspondant un article non publi ne sont plus mises en cache Message derreur au lieu dune page blanche lorsque le serveur ne peut pas calculer la page et quelle nest pas dans le cache (MySQL indisponible, sur le moteur de recherche, par exemple). Distinction plus prcise des erreurs MySQL dans les squelettes. Correction dun lger bug sur les forums publics : dans certains cas, la page ntait pas automatiquement recalcule lors de lajout dun commentaire. Correction du bug des doublons avec la boucle hirarchie. Pour les bidouilleurs : possibilit de redfinir la balise #INTRODUCTION, en plaant dans mes_fonctions.php3 une nouvelle fonction introduction(...). On peut se baser, pour dmarrer, sur la fonction calcul_introduction qui se trouve dans inc-calcul.php3 Contenu du site, et autres :

http://www.spip.net/fr_article2102.html (11 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.7, 1.7.2

Ajout dun champ nom_site et url_site aux articles ( activer, sous le nom de lien hypertexte , dans la configuration du site). Les balises #NOM_SITE et #URL_SITE permettent dafficher ces valeurs. Support des jeux de caractres arabes (windows-1256 et iso-8859-6) La configuration de lURL du glossaire externe (pour les raccourcis de type [? terme rechercher] ) accepte maintenant une criture plus souple (sous la forme "url_glossaire_avec_des_%s", o %s sera remplac par le "terme rechercher"). Compatibilit MySQL 4.1.0 Introduction dun mcanisme de gestion de la charge (plutt destin aux hbergeurs) : lorsque SPIP dtecte la prsence, dans ecrire/data/, dun fichier nomm lock, et si ce fichier nest pas trop vieux (moins de 10 minutes), il vite de faire des calculs pas absolument ncessaires : indexation, statistiques, etc. Nouveau raccourci typographique <quote> ... </quote> , pour citer un morceau de texte (utile dans les forums publics). et diverses corrections et amliorations.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2102.html (12 of 12)2006.04.17 1.11.55

[SPIP] SPIP 1.6

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.6
franais SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 italiano

La nouvelle version officielle de SPIP est la 1.6. Vous pouvez tlcharger SPIP-1.6 ladresse habituelle http://rezo.net/spip-dev/ DISTRIB/

MISE JOUR
La mise jour peut se faire depuis nimporte quelle version antrieure de SPIP. Si vous utilisez habituellement linstallation automatique, il vous suffit de lancer le fichier spip_loader.php3 depuis votre navigateur et de suivre les instructions affiches. Si vous utilisez linstallation manuelle partir dune archive tlcharge depuis lURL ci-dessus, il vous faut :
q

Choisir une archive : le format ne dpend que de vous, les fichiers

http://www.spip.net/fr_article1965.html (1 of 8)2006.04.17 1.12.13

[SPIP] SPIP 1.6

SPIP 1.0.3, 1.0.4, 1.0.5

lintrieur sont identiques ; notez que si vous avez une connexion lente, vous pouvez choisir une version monolingue (larchive est alors suffixe du code de la langue : par exemple "-fr" pour le franais).
q

Dcompresser larchive que vous aurez choisie. Envoyer les fichiers par FTP sur votre site (en crasant ventuellement les fichiers prcdents : pensez faire une sauvegarde de vos squelettes auparavant, en cas de fausse manipulation).

Attention : veillez ne pas craser au passage le contenu du rpertoire IMG/. Celui-ci contient en effet toutes les images et les documents attachs de votre site !
q

Vous rendre, avec votre navigateur, dans ecrire/ et suivre les instructions (il vous faudra crer un fichier ou rpertoire particulier dans ecrire/data/ puis laisser SPIP faire la mise niveau de votre base de donnes).

Et cest tout ! Remarques importantes (et habituelles) : Vous pouvez auparavant faire une sauvegarde de votre base de donnes ; sachez toutefois que vous naurez normalement pas besoin de cette sauvegarde, SPIP se chargeant tout seul de la mise niveau de votre base de donnes. Dautre part, cette sauvegarde ne pourra pas tre restaure sans dommage sur une version plus rcente que votre version actuelle ; elle ne doit donc tre utilise quen dernier ressort ! Surtout, NE VIDEZ PAS VOTRE BASE DE DONNES AVANT DE FAIRE LA MISE JOUR. (Lerreur est classique, certains imaginant, tort, quil faut vider la base de donnes pour ensuite restaurer la sauvegarde).

DOCUMENTATION
La documentation a t mise jour ; elle comporte deux nouveaux articles : La gestion des dates Les langues de SPIP

http://www.spip.net/fr_article1965.html (2 of 8)2006.04.17 1.12.13

[SPIP] SPIP 1.6

ESPACE PRIV MULTILINGUE


Cest le plus gros changement dans SPIP depuis la version 1.5 : lespace priv, laide en ligne et une petite partie de lespace public ( savoir les formulaires grs automatiquement par SPIP) sont dsormais disponibles en plusieurs langues. Au moment de linstallation de SPIP, vous pourrez choisir une langue pour laffichage de linterface. Cette langue sera galement adopte comme "langue par dfaut" de votre site. Cest ce rglage qui dterminera :
q

la langue dans laquelle sont affichs les formulaires de lespace public (formulaires de recherche, de commentaires dans les forums, didentification pour lespace priv, etc.) les rgles appliques par le moteur typographique (seuls le franais et lesperanto subissent la correction typographique franaise complte)

Ne vous inquitez pas, vous pouvez modifier ce rglage par la suite, tout moment, dans la configuration du site sous la catgorie "options avances". De plus chaque rdacteur ou administrateur peut, indpendamment du reste, modifier la langue utilise par linterface lorsquil visite lespace priv. Vous pouvez ainsi accueillir des communauts de rdacteurs / administrateurs de langues varies.

PARTICIPER
Dautres langues sont en prparation, et si vous voulez participer leffort de traduction, vous pouvez prendre contact avec la liste spip-trad@rezo.net Si vous souhaitez discuter de SPIP dans une des langues dj intgres, des listes spcifiques ont t mises en place, ainsi que des sites de rfrence : leur adresse est spip-xx@rezo.net et http://www.uzine.net/spip-xx (o xx doit tre remplac par le code de la langue en question). Parfois le "site de rfrence" ne propose que la liste : cest que tout est encore en chantier. REMARQUE IMPORTANTE : il est trs probablement prfrable de commencer, lors dune nouvelle installation, par aller dans la configuration avance pour choisir le jeu de caractres utf-8 plutt que le traditionnel et vieillissant iso-8859-1. Plusieurs jeux de caractres courants sont supports, notamment utf-8, iso-8859http://www.spip.net/fr_article1965.html (3 of 8)2006.04.17 1.12.13

[SPIP] SPIP 1.6

1, iso-8859-15, windows-1251 (cyrillique) ; la syndication est, elle aussi, totalement compatible dun site lautre indpendamment des jeux de caractres choisis.

MOTEUR DE RECHERCHE
Fonctions de translittration multilingue : dans la mesure du possible les caractres accentus ou non-occidentaux sont traduits dans leurs "quivalents" (non-accentus, phontiques...) ; la prcision de la translittration dpend en partie de la configuration de PHP, pour les jeux de caractres non intgrs SPIP. Ainsi un mot en cyrillique sera index sous sa forme translittre en ASCII, (par exemple : "teoreticheskaya"). La recherche donnera des rsultats aussi bien sur la forme originale du mot que sur la forme translittre. Cest en fait une gnralisation du mcanisme qui permettait dj deffectuer des recherches en franais, allemand (etc.) sans avoir taper les accents. Quand la langue du site est vi (vietnamien), la translittration est plus complexe : les accents sont cods par des chiffres, et la recherche peut se faire aussi bien partir de mots taps avec tous les accents qu partir de la translittration classique (a^.) ou spip (a65)... Le tiret bas (underscore) nest plus considr comme un sparateur de mots, mais comme un caractre alphabtique (documentation informatique). On peut maintenant indexer les sigles de deux lettres et plus, y comprenant ceux contenant des chiffres (G8, CNT...). Un sigle est un mot ne comprenant aucune minuscule. En raison de ces amliorations, la mise jour de SPIP dclenche exceptionnellement la rindexation complte de votre site (si le moteur de recherche est activ).

UNE CORRECTION IMPORTANTE


Modification du fonctionnement du $dossier_squelettes, pour le rendre plus souple et compatible avec <INCLURE> : dsormais SPIP recherche, dans lordre, dossier_squelettes/fond=10.html, puis dossier_squelettes/
http://www.spip.net/fr_article1965.html (4 of 8)2006.04.17 1.12.13

[SPIP] SPIP 1.6

fond-8.html (en remontant la hirarchie des rubriques 10, 8, etc. vers la racine), puis dossier_squelettes/fond.html, puis ./fond.html la racine du site, puis ./fond-dist.html Pour les <INCLURE(fichier.php3)>, SPIP regarde si le fichier dossier_squelette/fichier.php3 existe (et linclue le cas chant) ; et sinon il inclue ./fichier.php3 (sans ncessairement vrifier son existence).

VIGNETTES AUTOMATIQUES
La gnration automatique de vignettes (activable dans la configuration du site, dans la catgorie "options avances") est dsormais compatible avec plus de systmes, et les vignettes gnres sont de meilleure qualit (il est conseill dutiliser PHP 4.3 ou suprieur pour avoir des rsultats optimaux).

SYNDICATION
La syndication des sites rfrencs accepte un plus grand nombre de formats de backends , et reconnat plus dinformations lintrieur de ceux-ci (compatibilit avec les formats RSS 0.91, 1.0, 2.0, et rcupration des dates et auteurs selon divers formats) Les fichiers de syndication gnrs par SPIP (backend.php3 pour les articles, backend-breves.php3 pour les brves) sont plus complets, ils contiennent notamment la date exacte de publication des "items" syndiqus.

GESTION DES DATES


La balise #DATE_NOUVEAUTES permet dafficher la date du dernier envoi du mail prsentant les nouveauts. correction du bug des critres {age} et {age_relatif} ; ceux-ci permettent dsormais de distinguer deux articles publis le mme jour (notion de prcdent de suivant ) introduction des critres {jour_relatif}, {mois_relatif} et {annee_relatif}, comme extension de l{age_relatif}, mais arrondi au
http://www.spip.net/fr_article1965.html (5 of 8)2006.04.17 1.12.13

[SPIP] SPIP 1.6

jour, au mois et lanne (ce qui permet de faire dsormais une boucle pour tous les les articles du mois de mars 2003 [spciale ddicace aux amateurs de weblogs]) nettoyage de la date passe dans lURL : 2003, 2003/01, mais aussi, partir de php3.0.12 (utilisation de la fonction strtotime), date=-1year, date=1march1970, etc. #DATE peut sutiliser hors des boucles (contexte ou URL) Au total, et en utilisant habilement les balises <INCLURE()>, toutes les manipulations sur les dates sont maintenant permises. Tous les critres de date permettent dsormais de comparer des date_redac entre elles ou la date passe en URL (ajouter _redac la fin)

ACCESSIBILIT DE LESPACE PRIV


Nous avons ajout une srie de raccourcis clavier dans lespace priv afin de faciliter la navigation pour les systmes non-graphiques. Toutes ces touches sont gres par le navigateur et le systme dexploitation : cest--dire quil faut les utiliser, si votre systme le permet, en combinaison avec Alt , Ctrl ou Pomme ... A vous de tester. Rsum des raccourcis : Les touches 1, 2, ... 9, 0 dclenchent les diffrentes entres des menus de navigation (les deux ranges dicones en haut de lcran). En raison du nombre limit de chiffres disponibles, seules les premires icones de la deuxime range sont accessibles par ce biais ;) (NB : si vous tes sur un clavier azerty, noubliez pas dutiliser en plus la touche shift, ou de passer par le pav numrique) La touche S saute directement la colonne de droite , qui prsente le contenu utile de la page courante (utile avec les systmes synthse vocale pour ne pas numrer tous les choix de navigation de la colonne de gauche et des menus dicones) La touche R saute directement la case recherche (note : noubliez pas que cette case est uniquement disponible en interface complte), ce qui vous permet de chercher rapidement un contenu (tapez Ctrl R, puis le texte chercher, et appuyez sur la touche Entre) Les touches A, B, C, etc. permettent de sauter chacun des blocs daffichage prsents sur la page (un bloc est par exemple une liste darticles, un
http://www.spip.net/fr_article1965.html (6 of 8)2006.04.17 1.12.13

[SPIP] SPIP 1.6

formulaire...). Le nombre de touches ainsi disponible dpend du nombre de blocs.

PETITS AJOUTS ET CORRECTIONS


propre() est un peu plus compatible avec les normes html modernes Une nouvelle variable $ligne_horizontale permet de personnaliser le filet <hr> Attention les intertitres changent par rapport lhistorique : pour retrouver lancien style, il faut personnaliser $debut_intertitre et $fin_intertitre Nouveau filtre |sinon : [(#TEXTE|sinon{"pas de texte"})] affiche le texte ; si celui-ci est vide, affiche pas de texte . Nouveaux tags #LOGO_AUTEUR_NORMAL et #LOGO_AUTEUR_SURVOL Dans le menu ajouter un document depuis le rpertoire upload , les noms de fichiers saffichent par ordre alphabtique ; de plus, les sous-rpertoires ventuellement installs dans upload/ sont pris en compte. le fichier engines-list.ini est dplac dans ecrire/ et renomm en engines-list.txt : si vous lavez modifi, attention reporter vos corrections dans le nouveau fichier : lancien sera supprim. le fichier inc_meta_cache.php3 passe dans ecrire/data/ (permet ventuellement dassurer un fonctionnement normal de SPIP tout en verrouillant le rpertoire ecrire/) Le critre {branche} est officiellement support Ajout de nouveaux types de documents autoriss Changement de stratgie sur les ?var_recherche=toto : ils ne sont plus ajouts dans les URLs quau sein des boucles {recherche} (et pas dans toute la page), et il nest plus ncessaire de les dfinir dans les inc-urls... (si vous avez un inc-urls... personnalis [autre que standard ou html], il est conseill de le rviser en supprimant la partie qui soccupe de var_recherche).

http://www.spip.net/fr_article1965.html (7 of 8)2006.04.17 1.12.13

[SPIP] SPIP 1.6

Bug : on peut dsormais utiliser #POINTS pour les sites rfrencs Bug : suppression des forums attachs quand un site rfrenc est supprim Bug : ne pas accepter les changements de nom/email dans les forums sur abonnement Bug : vignettes non supprimes la suppression dun document Bug : les ptitions avec email unique ne fonctionnaient pas Patch hbergement-discount

***
Pour consulter la liste des nouveauts depuis les versions prcdentes, voyez la rubrique volutions et mises jour.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1965.html (8 of 8)2006.04.17 1.12.13

[SPIP] SPIP 1.5

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.5
franais SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 italiano

SPIP 1.5.2 est la version officielle. Vous pouvez tlcharger SPIP-1.5.2 ladresse habituelle http://rezo.net/spip-dev/DISTRIB/

Mise--jour
La mise jour peut se faire depuis nimporte quelle version antrieure de SPIP. Si vous utilisez habituellement linstallation automatique (spip_loader.php3), il vous suffit de recharger ce fichier et de suivre les instructions. Si vous utilisez linstallation manuelle partir dune archive tlcharge depuis lURL ci-dessus, il vous faut : 1. dcompresser larchive que vous aurez choisie (il y a trois formats : zip, sit et tgz, mais ce sont les mmes fichiers) ;

http://www.spip.net/fr_article1911.html (1 of 7)2006.04.17 1.12.32

[SPIP] SPIP 1.5

SPIP 1.0.3, 1.0.4, 1.0.5

2. envoyer les fichiers par FTP sur votre site (en crasant ventuellement les fichiers prcdents : pensez faire une sauvegarde de vos squelettes auparavant, en cas de fausse manipulation). 3. vous rendre, via votre navigateur, dans ecrire/ et suivre les instructions (il vous faudra crer un fichier ou rpertoire particulier dans ecrire/ data/ puis laisser SPIP faire la mise niveau de votre base de donnes). La mise jour est un peu plus lourde que pour les versions prcdentes, puisquil vous faudra supprimer le fichier ecrire/inc_connect.php3 et entrer de nouveau vos donnes de connexion la base (nota bene : avant deffacer inc_connect.php3, faites-en une copie sur votre disque dur - ce fichier contient les donnes de connexion en question, ce qui pourra vous tre utile si vous les avez oublies). Et cest tout ! Remarques importantes : Vous pouvez auparavant faire une sauvegarde de votre base de donnes ; sachez toutefois que vous naurez normalement pas besoin de cette sauvegarde, SPIP se chargeant tout seul de la mise niveau de votre base de donnes. Dautre part, cette sauvegarde ne pourra pas tre restaure sans dommage sur une version plus rcente que votre version actuelle ; elle ne doit donc tre utilise quen dernier ressort ! Surtout, ne videz pas votre base de donnes avant de faire la mise-jour. (Lerreur est classique, certains imaginant, tort, quil faut vider la base de donnes pour ensuite restaurer la sauvegarde). Comme indiqu dans la documentation, sauvegardez votre base de donnes avant la mise--jour, mais ne la rinstallez pas ! Cette sauvegarde ne sert que pour assurer la scurit en cas de problme lors de la manipulation, mais ne doit surtout pas tre utilise si la mise--jour sest droule correctement.

Documentation
La documentation de SPIP a t mise jour pour la version 1.5, vous la trouverez ladresse http://www.uzine.net/spip ; les nouveauts sont mentionnes par [SPIP 1.5].
http://www.spip.net/fr_article1911.html (2 of 7)2006.04.17 1.12.32

[SPIP] SPIP 1.5

Si vous relevez une erreur, une incohrence, ou un passage incomprhensible, merci de bien vouloir le signaler sur la liste des dveloppeurs, en prcisant bien le nom ou ladresse URL complte de la page. Rappelons par ailleurs que vous pouvez trouver sur ce site une liste de toutes les balises mise jour.

Problmes ventuels
En cas de souci daffichage sur le site public, essayez de vider le cache de votre site pour voir si le problme persiste. Si votre site affiche des messages derreur tranges (erreurs PHP, etc.) vrifiez que tous les fichiers ont t correctement transfrs via FTP, et quaucun des fichiers na une taille zro sur le serveur. Eventuellement, ressayez le transfert en changeant le mode de transfert dans votre logiciel FTP (le mode binaire est normalement prfrable). Si vos problmes persistent, ou pour toute autre question, nhsitez pas, aprs avoir cherch dans la documentation, crire spip@rezo.net. Noubliez pas de mentionner la version de SPIP utilise et de dcrire prcisment le problme (URL de la page incrimine, etc.).

Nouveauts
Entre la version 1.4.2 et la version 1.5 de SPIP de nombreux changements ont t apports, de nombreux bugs ont t corrigs. Tous ne sont pas mentionns ici. Voici toutefois une liste des principales nouveauts de la version 1.5 La nouveaut la plus spectaculaire est lapparition de nouveaux squelettes par dfaut. Les autres modifications sont beaucoup plus discrtes pour lutilisation quotidienne de SPIP, mais renforcent nettement la stabilit et la cohrence du systme. Squelettes par dfaut Nouveaux squelettes par dfaut, peu prs conformes W3C, accessibles, plus jolis et plus propres que les anciens.
http://www.spip.net/fr_article1911.html (3 of 7)2006.04.17 1.12.32

[SPIP] SPIP 1.5

Accessibilit : ajout dune page sommaire-texte.php3, gre depuis le squelette sommaire-texte(-dist).html ; cette page en texte seul prsente les 3 derniers articles et les 5 dernires brves du site. Elle vise founir un dbut de solution ceux qui veulent faciliter la lecture du site aux utilisateurs de terminaux texte, braille, synthse vocale, etc. Notons que les nouveaux squelettes par dfaut sont relativement lisibles en mode texte, bien que plus volus graphiquement dans un navigateur classique. Par convention, cette page est accessible par ladresse oo (deux fois la lettre o minuscule), par exemple http://www.uzine.net/oo. Tous retours sur la commodit des nouveaux squelettes sur navigateurs nongraphiques bienvenus (lespace priv, quant lui, est toujours difficilement praticable en mode texte, malheureusement). Raccourci SPIP Le raccourci [->http://lien_trs_llong......long] voit son texte coup 35 caractres. Cela ne concerne donc que les liens constitus dune URL. Interface de lespace priv Meilleur affichage des auteurs du site (y compris les visiteurs , cest-dire les participants aux forums sur abonnement). Modification des processus didentification lespace priv. De nouveaux mcanismes permettent de simplifier linterface tout en augmentant la souplesse et le la scurit. Linterface simplifie devient plus cohrente, et utilisable en permanence pour des sites pas trop sophistiqus Site public Ajout dun tag #PUCE correspondant la petite puce utilis lintrieur des articles pour marquer les numrations (correspondant la plupart du temps au fichier graphique puce.gif). Dans la boucle ARTICLES, une nouvelle balise #DATE_MODIF (au format date, utiliser, donc, avec des filtres comme |affdate) donne la date de dernire

http://www.spip.net/fr_article1911.html (4 of 7)2006.04.17 1.12.32

[SPIP] SPIP 1.5

modification de larticle : en fait, il sagit, plus prcisment, de la dernire date laquelle on a ouvert larticle en dition, mme si on na ni modifi ni valid larticle. Ce nest pas un bug ;-) Possibilit de mettre tous les squelettes dans un dossier (dont le nom est dfini de manire centralise dans mes_fonctions.php3), ce qui permet dessayer plus facilement plusieurs jeux de squelettes. Voir ce sujet la variable dossier_squelettes de la documentation sur les variables de personnalisation. Boucle (GROUPES_MOTS) avec les balises #TITRE, #ID_GROUPE... pour la gestion des groupes de mots-cls. Possibilit de mettre plusieurs #FORMULAIRE_ECRIRE_AUTEUR dans une mme page. Les mails Quoi de neuf (annonce des nouveauts sur une mailing-list par exemple) sont personnalisables via un squelette nouveautes(-dist).html. Passage de paramtres dans les filters. La syntaxe est
[(#BALISE|filtre{arg1, arg2}|...)]

Le filtre doit tre dfini de la manire suivante dans mes_fonctions.php3 :


function filtre($texte, $arg1='valeur par defaut1', $arg2='valeur par dfaut 2') { ....calculs.... return (une chaine de caractres); }

Cela permet donc aux utilisateurs matrisant PHP de crer des filtres utilisant des fonctions PHP plusieurs variables (jusqu prsent, les filtres pour les squelettes de SPIP taient par dfinition des fonctions PHP une seule variable). Ajout dune balise #EMAIL_WEBMASTER (configurable depuis ecrire/) correspondant ladresse du webmestre principal du site. Ajout de id_syndic_article dans le contexte et gestion dans la boucle (SYNDIC_ARTICLES) du critre {id_syndic_article}

http://www.spip.net/fr_article1911.html (5 of 7)2006.04.17 1.12.32

[SPIP] SPIP 1.5

Nouveau tag #FORMULAIRE_ADMIN pour placer les boutons dadmin (recalculer, modifier cet article, etc.) o lon veut dans la page. Par dfaut, si le tag nest pas utilis, les boutons restent affichs en bas de HTML comme auparavant, ce qui pouvait entraner des bizarreries de rendus dans certains squelettes utilisant du HTML relativement spcifique. Ajout dune balise #CHARSET, qui par dfaut vaut iso-8859-1, mais peut se rgler sur une autre valeur dans la configuration du site / options avances. Les diffrentes fonctions de SPIP marchent correctement en iso-8859-1, et raisonnablement bien en utf-8 ; dautres charsets pourront tre ajouts par la suite. Nouveau tag #URL_LOGOUT, qui fait le pendant de #LOGIN_PUBLIC ; ce tag accepte un seul filtre, lURL de destination post-logout (par dfaut, il tourne sur lu-mme). Autres fonctionnalits Ajout du support LDAP Le support LDAP permet dauthentifier et importer automatiquement de nouveaux auteurs depuis un annuaire extrieur. Le rglage est effectu linstallation si lextension LDAP est prsente dans PHP. Lauthentification dun nouvel auteur depuis LDAP entrane ensuite la cration dune nouvelle entre dans la table auteurs. Les caractristiques propres SPIP (statut, prfrences...) continuent tre gres dans cette table (lannuaire nest pas encombr dinfos supplmentaires). Dautre part, on peut continuer ajouter des auteurs sous SPIP indpendamment de leur prsence ou non dans lannuaire externe. Correction dun bug de lecture des backend (la description dun article pouvait passer comme description du site) Calcul des referers plus solide, et toutes les 30 minutes au lieu dune fois/jour Possibilit davoir un mot de passe MySQL contenant des $ Mise jour obligatoire du fichier ecrire/inc_connect.php3 : soit votre site vous prend par la main et explique quil faut supprimer ce fichier pour rinstaller, soit il affiche subitement une page blanche (ce nest pas le cas en gnral, mais selon le moment o vous avez install, a peut arriver)... tout revient la normale ds que vous avez supprim inc_connect.php3 puis rinstall la connexion la base.
http://www.spip.net/fr_article1911.html (6 of 7)2006.04.17 1.12.32

[SPIP] SPIP 1.5

Introduction dun mcanisme de log. Les vnements importants sont consigns dans le fichier ecrire/data/spip.log. Les anciens fichiers sont automatiquement supprims (pas de risque dexploser lespace disque). La possibilit dajouter des documents joints aux articles et/ou aux rubriques est dsormais configurable. Par dfaut on peut joindre des documents aux articles, mais pas dans les rubriques. Les rdacteurs peuvent mettre eux-mmes un logo sur leurs articles (tant que ceux-ci sont ditables, bien sr). Meilleure gestion en cas derreur dcriture sur le disque : en particulier, on ne traine plus un skel_xxx vide qui pouvait planter le site indfiniment. Compatibilit installation sur les serveurs nexen.
Quelques petites corrections faites depuis la sortie de la version 1.5 - et un gros trou de scurit repr dans la version 1.5.1 - sont rassembles dans cette version 1.5.2, dont les caractristiques principales sont identiques celles mentionnes dans cet article. Pour plus de dtails voir les annonces rcentes.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1911.html (7 of 7)2006.04.17 1.12.32

[SPIP] SPIP 1.4

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.4
franais SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 italiano

Cette version 1.4 de SPIP, aprs six mois de dveloppement, propose des changements trs importants. Certains concernent tous les utilisateurs (notamment les rdacteurs), dautres sont destins faciliter le travail des webmestres qui crent leurs propres squelettes, et certains sont trs techniques (scurit, dveloppement...).

Mise--jour
La mise jour peut se faire depuis nimporte quelle version antrieure de SPIP. Si vous utilisez habituellement linstallation automatique, il vous suffit dappeler le fichier spip_loader.php3 depuis votre navigateur comme pour les versions prcdentes, puis de suivre les instructions affiches pour la mise niveau de la base de donnes. Si vous prfrez linstallation manuelle partir dune archive tlcharge depuis lURL ci-dessus, il vous faut :

http://www.spip.net/fr_article1832.html (1 of 9)2006.04.17 1.12.51

[SPIP] SPIP 1.4

SPIP 1.0.3, 1.0.4, 1.0.5

1. dcompresser larchive que vous aurez choisie (il y a trois formats : zip, sit et tgz, mais ce sont les mmes fichiers) ; 2. envoyer les fichiers par FTP sur votre site (en crasant ventuellement les fichiers prcdents : pensez faire une sauvegarde de vos squelettes auparavant, en cas de fausse manipulation). 3. vous rendre dans ecrire/ et suivre les instructions (il vous faudra crer un fichier ou rpertoire particulier dans ecrire/data/ puis laisser SPIP faire la mise niveau de votre base de donnes). Et cest tout ! Remarques importantes : Vous pouvez auparavant faire une sauvegarde de votre base de donnes ; sachez toutefois que vous naurez normalement pas besoin de cette sauvegarde, SPIP se chargeant tout seul de la mise niveau de votre base de donnes. Dautre part, cette sauvegarde ne pourra pas tre restaure sans dommage sur une version plus rcente que votre version actuelle ; elle ne doit donc tre utilise quen dernier ressort ! Surtout, NE VIDEZ PAS VOTRE BASE DE DONNES AVANT DE FAIRE LA MISE JOUR. (Lerreur est classique, certains imaginant, tort, quil faut vider la base de donnes pour ensuite restaurer la sauvegarde).

Problmes ventuels
En cas de soucis daffichage sur le site public, essayez de vider le cache de votre site pour voir si le problme persiste. Si votre site affiche des messages derreur tranges (erreurs PHP, etc.) vrifiez que tous les fichiers ont t correctement transfrs via FTP, et quaucun des fichiers na une taille zro sur le serveur. Eventuellement, ressayez le transfert en changeant le mode de transfert dans votre logiciel FTP (le mode binaire est normalement prfrable). Si vos problmes persistent, ou pour toute autre question, nhsitez pas, aprs avoir cherch dans la documentation, crire spip@rezo.net. Noubliez pas de mentionner la version de SPIP utilise et de dcrire prcisment le problme
http://www.spip.net/fr_article1832.html (2 of 9)2006.04.17 1.12.51

[SPIP] SPIP 1.4

(URL de la page incrimine, etc.).

Interface

Linterface prive propose une interface graphique radicalement diffrente des versions prcdentes. Elle permet en particulier : de mieux distinguer et hirarchiser les diffrentes fonctionnalits de SPIP ; une intgration facilite des nouvelles fonctionnalits tout en conservant la cohrence de la navigation ; de crer (pour les prochaines versions) des versions non franaises de SPIP. Impossible de dtailler toutes les nouvelles caractristiques de linterface, celle-ci tant entirement nouvelle. Signalons tout de mme : le choix entre une interface normale (logos et textes), une interface rduite naffichant que les icones, et une interface allge entirement en mode texte (pour les connexions lentes) ; une plus grande diffrenciation entre linterface simplifie et linterface complte, facilitant le travail des dbutants ; un mode grand cran pour les utilisateurs disposant dcrans la largeur suprieure ou gale 1024 pixels ; des raccourcis dans linterface proposant les fonctions les plus utilises en fonction de la page o lon se trouve.

Documents joints et documents multimdia


Il sagit sans doute de la fonction la plus attendue de cette nouvelle version : SPIP permet dassocier des documents de formats multimdia (audio, vido, PDF...) des articles ou de les installer dans des rubriques.

http://www.spip.net/fr_article1832.html (3 of 9)2006.04.17 1.12.51

[SPIP] SPIP 1.4

Ces documents peuvent tre prsents en tant que documents joints, ou prsents lintrieur dun article (sous la forme dune vignette dote dun lien hypertexte). Pour cela, SPIP propose un nouveau raccourci : <docxxx|center>. Il est possible galement dinsrer directement certains documents (vido, animations flash...) lintrieur des articles, grce au nouveau raccourci : <embxxx|center>. Il est possible, pour ceux qui dsirent un contrle plus prcis du comportement de ces documents, de complter ce raccourci des paramtres propres ces formats, par exemple :
<embxxx|center|autostart=true|quality=high>

Pour grer les documents qui ne sont pas directement insrs dans le texte des articles, un nouveau format de boucles apparat : (DOCUMENTS). Au passage, grce lintroduction de ces documents, les images profitent de certaines amliorations : possibilit de leur donner un titre et dindiquer un descriptif. Ces informations seront affiches dans les articles grce au raccourci : <docxxx|center>. De plus, on peut dsormais insrer des images dans les brves. Sur certains serveurs, SPIP facilite grandement la cration automatise de portfolio (collections dimages prsentes sous forme de vignettes cliquables), avec cration automatique de vignettes de prvisualisation.

Mots-cls
Le systme de mots-cls volue largement, afin doffrir une plus grande prcision des affichages ; cette nouveaut est en particulier conue pour les webmestres qui grent beaucoup de mots-cls sur leur site. Mots-cls sur les rubriques. Les mots-cls appartiennent forcement un groupe de mots. Chaque groupe peut etre li aux articles, et/ou brves, et/ou rubriques, et/ ou sites syndiqus. De plus, on peut dcider que certains groupes sont rservs aux admins et/ou aux rdacteurs. On peut galement dcider que certains groupes de mots sont accessibles partir des forums publics, et mme avec des
http://www.spip.net/fr_article1832.html (4 of 9)2006.04.17 1.12.51

[SPIP] SPIP 1.4

icones. Possibilit dentrer plusieurs mots-cls dun seul coup dans les cases de formulaire, spars par des virgules ou des points-virgule. partir de 4 mots-cls associs a un article, un bouton retirer tous les mots apparat.

Forums
Prvisualisation des messages des forums publics avant de poster. La modration des forums se dcide dsormais article par article, avec une option par dfaut (qui sapplique galement aux forums de rubrique, de brves, etc.. de maniere indiffrencie pour le coup). Prvisualisation des messages des forums privs avant de poster.

Moteur de recherche
Quand on demande un article depuis une page recherche, coloration des mots de la recherche dans le texte de larticle. La recherche dans lespace priv utilise dsormais, en plus des titres et numros , la recherche en texte intgral si elle est disponible.

Multi-base
Il est possible de grer plusieurs sites sous SPIP dans une mme base MySQL : configuration manuelle dans ecrire/inc_version.php3, tout au dbut (mettre un prfixe diffrent pour chaque installation). Attention : cette fonctionnalit est rserve aux utilisateurs confirms.

Sites syndiqus
Possibilit de passer certains sites syndiqus en modration a priori , de
http://www.spip.net/fr_article1832.html (5 of 9)2006.04.17 1.12.51

[SPIP] SPIP 1.4

manire valider les articles syndiqus un par un. videmment, cela enlve beaucoup de charme la syndication de sites, cense faire vivre votre propre site en labsence du webmaster Possibilit dutilisation dun proxy HTTP pour syndiquer les sites (rserv aux utilisateurs confirms).

Squelettes
Inclusion de squelettes linterieur dun autre squelette. Pour inclure un squelette machin.php3 en lui passant le numro de rubrique, faire par exemple :
<INCLURE(machin.php3){id_rubrique}>

Modification du comportement de #INTRODUCTION des articles : sil y a un descriptif, cest ce descriptif qui est directement utilise (tel quel, avec propre) ; sil ny a pas de descriptif, comportement habituel (resume chapeau + texte). Critre {branche}, qui permet de rcuprer toutes les sous-rubriques dune rubrique (exprimental). Nouvelles balises #LOGO_RUBRIQUE_SURVOL et #LOGO_RUBRIQUE_NORMAL, utile pour une maquette ou le logo de la rubrique courante est toujours affichee en survol. (Principe similaire aux #LOGO_ARTICLE_NORMAL et #LOGO_ARTICLE_SURVOL qui existent dj dans les versions prcdentes.) Nouvelle balise #LOGO_BREVE_RUBRIQUE, qui affiche le logo de la brve ou, dfaut, celui de la rubrique contenant la brve. (Principe similaire #LOGO_ARTICLE_RUBRIQUE.) Nouvelle balise #FORMULAIRE_ECRIRE_AUTEUR qui affiche un formulaire permettant dcrire un auteur, sans jamais faire apparatre son adresse email sur le site public. Gestion des filtres sur LOGO_xxx et sur FORMULAIRE_RECHERCHE, la syntaxe [(#TOTO||filtre)] assure que |filtre est un filtre.

http://www.spip.net/fr_article1832.html (6 of 9)2006.04.17 1.12.51

[SPIP] SPIP 1.4

Aide au debogage des squelettes en cas derreur MySQL Variables de prsentation du type $debut_intertitre... rglables soit de manire globale dans mes_fonctions.php3, soit de manire plus fine dans article.php3, rubrique.php3, etc.

Raccourcis
De nouveaux raccourcis compltent la gestion des listes : Raccourci - (tiret espace) _ (underscore espace) -* , -**... -# , -## ... Fonction puce spip standard <br> saut de ligne sans puce <ul><li>... Listes hirarchiques <ol><li>... Listes numriques

Scurit
Nouveau systme dauthentification des visiteurs (dans lespace priv, mais aussi dans lespace public), base de cookies. Le systme est conu pour assurer un plus grand niveau de scurit, mais aussi pour offrir une plus grande compatibilit avec les diffrents hbergeurs. Lors de la mise a jour de spip, il est conseill de vrifier quon nutilise pas la mthode .htaccess (supprimer le fichier ecrire/.htaccess sil existe). Si on ne veut pas de cookies (ou si le navigateur ne les aime pas), le systme propose de basculer sur une authentification http a lancienne. Le systme propose deux niveaux de scurit : lun est plus adopt aux utilisateurs qui bidouillent avec plusieurs navigateurs en mme temps, ou plus ordinateurs simultanment, et un systme nettement plus strict, qui interdit toutes connexions simultanes et offre un niveau de scurit plus lev. Un bouton Se dconnecter est propos en permanence, son utilisation est notamment conseille aux utilisateurs mobiles (connexion depuis un
http://www.spip.net/fr_article1832.html (7 of 9)2006.04.17 1.12.51

[SPIP] SPIP 1.4

ordinateur quils ne sont pas seuls utiliser). Pour les utilisateurs qui ont oubli leur mot de passe, le systme gre dsormais la possibilit de rcuprer un nouveau mot de passe, grce un change demail. ATTENTION : On ne cre plus les fichiers .htpasswd et .htpasswd-admin sils nexistent pas dj (scurite).

Statistiques
Nouveau systme de statistiques, nettement plus fiable que la version prcdente (la version prcdente tait destine fournir une indication des visites, et non une information prcise). Le systme se compos de deux parties : visites (relativement lger) et referers (plus lourd). La connaissance des referers permet de plus la mise jour quotidienne dun pourcentage de popularit par article. Ainsi larticle le plus populaire est 100%. (Pour plus de dtails lire La popularit des articles.) La nouveaut la plus visible est la prsence de graphiques affichant lvolution des visites jour aprs jour pour lensemble du site et pour chaque article publi.

Divers
Exportation de la base en plusieurs tapes si le serveur interrompt la sauvegarde avant la fin de lexportation complte. Amlioration de la compatibilit avec les diffrentes configurations de PHP : les tags PHP passent en <?php (compatibilit avec loption PHP short_open_tags ). Ajout dune page ecrire/admin_repair.php3 permettant de mettre en uvre le systme dauto-rparation de MySQL suite un plantage (crash disque, etc.) [Versions de MySQL partir de 3.23.14]
Quelques incompatibilits et petits bugs ont t corrigs depuis la sortie de la version 1.4 - aprs les avoir corrigs, nous avons publi une 1.4.2 dont les caractristiques principales sont identiques celles mentionnes dans cet article. Pour plus de dtails voir les annonces rcentes.
http://www.spip.net/fr_article1832.html (8 of 9)2006.04.17 1.12.51

[SPIP] L'histoire minuscule et anecdotique de SPIP

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

Lhistoire minuscule et anecdotique de SPIP


franais SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 SPIP 1.0.3, 1.0.4, 1.0.5 catal English Espaol italiano

Les prmices de SPIP remontent au courant de lanne 1998 : Pierre Lazuly souhaite dvelopper un systme de publication pour faciliter la gestion de son site Les chroniques du Menteur . ARNO* a ralis en Server Side Includes (une technologie trs rudimentaire) un petit outil pour grer les ditos du Scarabe et, de son ct, Erwan a dvelopp un outil pour grer LOrnitho. Erwan est alors le seul savoir grer une base de donnes, Pierre est en train de sinitier PHP, et ARNO* ne connait ni PHP ni les bases de donnes. Mais Pierre passe ses vacances sur un bateau baptis SPIP ; et comme SPIP est lacronyme de Systme de Publication pour lInternet , cela suffit lancer le projet : on a le titre, le reste devrait tre facile... Cependant, malgr quelques essais (un premier systme gre un site base de PHP, mais pas de base de donnes, les informations tant stockes dans des fichiers selon un format spcifique - une sorte de XML qui signorait -, avec un premier systme didentification des rdacteurs), le projet ne progresse gure. Il faudrait en effet : pouvoir raliser nimporte quel type de site avec un mme outil ; grer ce site avec une interface accessible tous.

http://www.spip.net/fr_article918.html (1 of 8)2006.04.17 1.13.12

[SPIP] L'histoire minuscule et anecdotique de SPIP

Lors dune soire, Erwan dessine sur un bout de la nappe en papier du restaurant la structure dune base de donnes qui permettrait de raliser nimporte quelle structure de site. Lesthtique de la chose effraie ses deux compres, et SPIP en reste ce stade de la nappe de restaurant tche de caf. Pierre dfinit lutilisation de touches rarement utilises dans un texte (les accolades notamment) pour crer rapidement de litalique et du gras, ce quil nomme les raccourcis SPIP . Le systme de publication des ditoriaux en Server Side Includes est traduit en PHP, mais pas dutilisation de la base de donnes mySQL.

Linterface prive du Scarabe

Juste avant lt 2000, ARNO* ralise le site des ditions Vuibert, dont le principe est un systme PHP/mySQL, une interface prive o les personnels de lentreprise enrichissent eux-mmes le site, et un systme de droits qui permet certaines personnes (les administrateurs du site) de valider certains lments avant leur mise en ligne. partir des lments fournis par les diteurs, le systme permet en outre de fabriquer des documents de gestion interne partir de fichiers HTML contenant des lments conditionnels, auxquels on peut attribuer des filtres, ce qui deviendra un des principes des squelettes de SPIP.

http://www.spip.net/fr_article918.html (2 of 8)2006.04.17 1.13.12

[SPIP] L'histoire minuscule et anecdotique de SPIP

Linterface de gestion du site Vuibert

Paralllement, avec Fil, il cr un systme de publication simplifi pour grer les Cahiers documentaires du Monde diplomatique pour lesquels, notamment, le systme de raccourcis typographiques est plus dvelopp. La fonction qui gre la typographie franaise et les raccourcis est diffuse partir de la fin mai 2000 sous la forme dun fichier intitul spiplib.inc . Durant lt 2000, le Minirzo dcide de relancer son site uZine, sous la forme dun site dynamique auquel nimporte qui pourrait participer. ARNO* dveloppe un outil base de PHP et de MySQL, dont la particularit est la simplicit de linterface de gestion du site. Lensemble est affreusement mal programm, mais fonctionne... En septembre 2000, le lancement duZine 2 avec ce systme valide lide quon peut utiliser une interface graphique trs simple pour grer un site relativement complexe, afin que nimporte qui puisse y participer sans connaissances techniques. Lobjectif de pouvoir raliser nimporte quel type de site est cart (le systme correspond, la base, aux besoins duZine 2), mais il est dcid que le systme allait servir de base au systme SPIP lui-mme.

http://www.spip.net/fr_article918.html (3 of 8)2006.04.17 1.13.12

[SPIP] L'histoire minuscule et anecdotique de SPIP

Linterface dorigine de SPIP

Cette premire version comprend un correcteur orthographique bas sur le dictionnaire des mots communs de lABU. Ce correcteur sera finalement abandonn : impossible diffuser cause de la taille du dictionnaire (plusieurs mgaoctets, plus de 300 000 mots) et, appliqu un texte trs long, il mettait nimporte quel serveur sur les genoux... On trouve galement une exportation automatique de lintgralit dune rubrique vers un autre site (fonctionnalit elle aussi abandonne, et remplace par un systme de syndication de contenus) ; ainsi, les site Insurgence et Radiophare proposaient-ils des textes tirs de rubriques duZine, rcuprs automatiquement et reformats selon leur propre interface graphique. Antoine participe partir de ce moment au dveloppement de SPIP, Fil soutient le projet, et le dveloppement continue dans loptique doffrir un systme complet sous licence libre. Une procdure dinstallation automatise est intgre, le principe des squelettes permettant de raliser des interfaces graphiques sans utiliser PHP est labor, un systme de cache est install, et surtout des modifications importantes du systme dauthentification des rdacteurs permettent de faire fonctionner SPIP chez un grand nombre dhbergeurs. Quelques semaines avant le lancement officiel de SPIP, les sites uZine, du Monde diplomatique et de Vacarme testent le systme en conditions relles dutilisation,
http://www.spip.net/fr_article918.html (4 of 8)2006.04.17 1.13.12

[SPIP] L'histoire minuscule et anecdotique de SPIP

et permettent de valider le systme de cache, la gestion dune grande quantit dinformation et le principe de linterface de gestion dun site. Le 1er juillet 2001 : SPIP 1.0 est lanc officiellement. Lintervalle de temps important entre louverture duZine 2 (avec une prversion de SPIP) et le lancement de SPIP est d plusieurs lments : dvelopper de nouvelles fonctionnalits, stabiliser le produit (liminer des bugs), nettoyer une partie du code (qui tait particulirement sale), assurer une plus grande compatibilit avec de nombreux hbergeurs ; redessiner une interface graphique pour lespace priv, qui permette dinclure et hirarchiser les 200 000 nouvelles fonctionnalits ajoutes au produit initial ; tester les choix du systme sur plusieurs sites aux contenus et aux frquentations trs diffrents ; rdiger une documentation complte du systme (une vritable plaie !). Octobre 2001 : SPIP 1.2 (il ny a pas eu de version officielle 1.1). Le processus de dveloppement a volu : en effet, depuis le lancement officiel, il y a dautres utilisateurs de SPIP que ses dveloppeurs ! Ainsi, les nouvelles fonctionnalits rpondent beaucoup plus aux besoins rels exprims par les webmestres (et non plus aux besoins duZine), plusieurs informaticiens comptents apportent ponctuellement des solutions pour le dveloppement, et le dbuggage se fait quasiment en temps rel. Janvier 2002 : SPIP 1.3. Le dveloppement continue, avec son lot de nouveauts. Un changement dans le dveloppement : de nombreux utilisateurs sont dsormais trs comptents avec SPIP. De ce fait : les rponses aux questions des utilisateurs dbutants sont largement prises en charge par dautres utilisateurs, ce qui libre normment de temps pour le dveloppement du systme (le lancement officiel de SPIP avait provoqu une charge de travail norme pour les dveloppeurs, dans lexplication de lutilisation du systme) ; ces utilisateurs devenant plus comptents, les nouvelles fonctionnalits de SPIP sont moins spectaculaires, et concernent largement une utilisation pousse du systme.

http://www.spip.net/fr_article918.html (5 of 8)2006.04.17 1.13.12

[SPIP] L'histoire minuscule et anecdotique de SPIP

Linterface de SPIP 1.3

Septembre 2002 : SPIP 1.4. Refonte radicale de linterface de lespace priv ; le nombre de fonctionnalits devenait trop important pour lancienne interface, la nouvelle permet de mieux structurer et hirarchiser les fonctions de SPIP. Fontion trs attendue : SPIP permet dsormais dincorporer des documents joints (notamment multimdia) son site.

http://www.spip.net/fr_article918.html (6 of 8)2006.04.17 1.13.12

[SPIP] L'histoire minuscule et anecdotique de SPIP

Linterface de SPIP 1.4

Dcembre 2002 : SPIP 1.5. Cette version propose de nouveaux squelettes par dfaut, nettement plus compatibles avec la norme xhtml. Les autres modifications sont beaucoup plus discrtes pour lutilisation quotidienne de SPIP, mais renforcent nettement la stabilit et la cohrence du systme. Mai 2003 : SPIP 1.6. Lnorme nouveaut de cette version est la possibilit de changer la langue de lespace priv : on peut dsormais utiliser SPIP anglais, italien, espagnol, danois, allemand, arabe, crole runionais, vietnamien... Un outil spcifique facilitant la traduction de linterface est cr. Les volontaires pour proposer des traductions se regroupent sur la liste spip-trad. Novembre 2003 : journe SPIP au Mdialab. Pascale organise une journe de rencontres entre les dveloppeurs, les traducteurs et les crateurs de sites.

Linterface de SPIP 1.6 en arabe N.B. Linterface graphique est affiche de droite gauche.

Janvier 2004 : SPIP 1.7. La principale nouveaut de cette version est dintroduire le multilinguisme : un site sous SPIP peut contenir des articles dans plusieurs langues, grer des rgles typographiques et des affichages automatiques (dates, formulaires...) dans plusieurs langues, et prsenter les liens entre les diffrentes traductions dun article.

http://www.spip.net/fr_article918.html (7 of 8)2006.04.17 1.13.12

[SPIP] L'histoire minuscule et anecdotique de SPIP

Avril 2005 : SPIP 1.8. Une anne de travaux. Linterface graphique est remanie, lergonomie volue notablement. Sous le capot, un nouveau moteur de compilation des squelettes ouvre des perspectives de dveloppements indites. SPIP introduit de plus des mcanismes client-serveur (certaines fonctions, difficiles livrer installes avec SPIP comme le correcteur dorthographe ou la production de formules mathmatiques , sont effectues par des serveurs, chaque site utilisant ainsi une ressource centralise). Le noyau des dveloppeurs accueille Emmanuel, qui avait publi sur SPIP Contrib le nouveau moteur, ensuite adopt et finalis pour cette version. Le projet de mastre de Diala, graphiste, sert de base la nouvelle interface. On note que les contributions extrieures sont de plus en plus touffues (comprendre : de haut niveau).

tlcharger le squelette de cette page

http://www.spip.net/fr_article918.html (8 of 8)2006.04.17 1.13.12

[SPIP] SPIP 1.3

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.3
franais italiano

La version 1.3 de SPIP contient de trs nombreuses modifications et nouvelles fonctionnalits. Les nouveauts peuvent sembler peu spectaculaires (la version 1.2, notamment, proposait des nouveauts beaucoup plus visibles), mais elles sont trs importantes. La plus visible est sans doute le nouveau systme de rfrencement de sites. Les nouvelles possibilits offertes par le langage de boucles concernent essentiellement les webmestres qui savent crer leur propre interface graphique avec les squelettes de SPIP ; fonctionnalits discrtes, mais qui permettent de raliser des sites la navigation beaucoup plus complte quauparavant. On trouvera le dtail de ces nouvelles modifications dans l Aide en ligne de lespace priv de son site, dans la documentation de SPIP (sur uZine), et dans le nouveau tutorial sur lutilisation avance des boucles.

http://www.spip.net/fr_article1253.html (1 of 6)2006.04.17 1.13.34

[SPIP] SPIP 1.3

SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 SPIP 1.0.3, 1.0.4, 1.0.5

Systme de rfrencement de sites. Le prcdent systme de syndication de sites Web est entirement refondu. Il est dsormais possible de rfrencer nimporte quel site Web ; pour chaque site rfrenc, on peut indiquer de manire optionnelle une syndication de contenu (rcuprer automatiquement la liste des derniers articles publis sur un site). De plus, pour chaque site rfrenc, on peut installer un logo, et lui attribuer des mots-cls. Les sites rfrencs peuvent tre proposs par les administrateurs, les rdacteurs ou les visiteurs du site public (selon rglage dans la Configuration prcise du site). Un forum est attribu chaque site pour discuter dans lespace priv du rfrencement (ou non) dun site ; il est galement possible dattribuer un forum public chaque site rfrenc. Le fonctionnement de la syndication de contenu est affin : les auteurs et le descriptif de larticle sont rcuprs (si le site syndiqu les indique) ; il est possible de bloquer un article syndiqu prcis sans bloquer lintgralit de la syndication. Lorsquun site syndiqu nest plus accessible, ou son fichier backend inutilisable, la syndication est dsactive et les administrateurs se voient signaler le problme (ce qui vite les blocages dune rubrique contenant un site syndiqu dfaillant). Cette nouvelle fonctionnalit est sans doute la modification la plus visible de cette version 1.3. lments dpliables. Dans lespace priv, afin de limiter lencombrement de certaines pages, et de privilgier la prsentation de certaines informations, de nombreux lments apparaissent masqus, mais affichages dun simple clic sur un triangle noir. Cette fonctionnalit nest disponible quavec Mozilla et MSIE (pour les autres butineurs, les lments ne sont pas masqus).

La prsentation des mots-cls se fait dsormais selon plusieurs menus droulants, par groupes de mots-cls.
http://www.spip.net/fr_article1253.html (2 of 6)2006.04.17 1.13.34

[SPIP] SPIP 1.3

Date des brves. Il est dsormais possible de modifier manuellement la date dune brve (auparavant, la date tait fixe automatiquement lors de la validation et il ntait pas possible de la modifier). Dates imprcises. Pour les articles et les brves, il est possible dindiquer une date imprcise. Cest--dire une date sans jour, ou mme sans mois. On peut ainsi indiquer une date du genre 5 mai 2001 ou mai 2001 ou 2001 . Upload dimages par FTP. Pour contourner la limitation imposes par certains hbergeurs qui interdisent linstallation dimages par lintermdiaire dun formulaire Web, il est possible dinstaller les fichiers des images par FTP dans un dossier /ecrire/upload . Ces fichiers seront alors proposs, dans lespace priv, dans un menu droulant remplaant linterface de tlchargement habituelle. Forum interne des administrateurs. En plus de lhabituel forum interne accessible tous les rdacteurs, apparition dun forum interne rserv aux administrateurs. Nouveau raccourci <cadre>. Pour afficher un morceau de code dans un article, un nouveau raccourci : <cadre>...</cadre>. Le texte lintrieur de ces balises sera affich dans une fentre de formulaire, ce qui facilite le copiercoller par le lecteur. Cela donne par exemple :
<html> <head> <title>Le titre</title> </head> <body> <h1>Ma page</h1> Blah blah blah... </body> </html>

Les dplacements de rubriques grent de manire plus cohrente le dplacement des brves qui sy trouvent. Lorsque lon peut supprimer une rubrique (parce que cette rubrique est vide on ne peut pas effacer une rubrique contenant des lments publis, proposs ou

http://www.spip.net/fr_article1253.html (3 of 6)2006.04.17 1.13.34

[SPIP] SPIP 1.3

en cours de rdaction), un bouton Supprimer cette rubrique apparat sur la page de cette rubrique (auparavant, il fallait passer par la page Afficher tout le site ). Une rubrique qui ne contient pas darticles publis, mais seulement des brves ou des sites rfrencs, est dsormais accessible sur le site public (auparavant, il fallait au moins un article publi).

Les modifications qui suivent concernent le site public. Elles concernent donc, pour lessentiel, le systme de boucles qui permet de crer les squelettes de linterface du site public. Modification backend. Le fichier de backend dun site sous SPIP peut dsormais nafficher que les articles dun secteur. backend.php3 affichera les derniers articles de lensemble du site ; backend.php3 ?id_rubrique=3 naffichera que les derniers articles dun secteur (o id_rubrique=3 indique le numro du secteur). Backend pour les brves. On peut dsormais appeler un fichier backend contenant les dernires brves publies sur le site : backend-breves.php3 . Possibilit galement de restreindre laffichage un secteur. Slection dlments selon un mot-cl ou un groupe de mots. Il est dsormais possible de slectionner des articles, des brves ou des sites rfrencs en fonction dun nom de mot-cl, ou dun nom de groupe de mot-cl. Par exemple :
<BOUCLE_importants(ARTICLES) {id_rubrique}{titre_mot=importants}>

slectionne les articles de la rubrique courante, lis au mot-cl importants .


<BOUCLE_importants(ARTICLES) {id_rubrique}{type_mot=note}>

slectionne les articles de la rubrique courante, lis des mots-cls du groupe de mots Note . Limitation : il nest pas possible de slectionner selon plusieurs critres titre_mot dans une mme boucle. Par exemple, on ne peut pas rcuprer en
http://www.spip.net/fr_article1253.html (4 of 6)2006.04.17 1.13.34

[SPIP] SPIP 1.3

une seule boucle les articles associs aux mots importants et rsum . Pour cela, il faut imbriquer deux boucles successives. Date des rubriques. Il est dsormais possible de trier les rubriques {par date}. La date des rubriques est calcule automatiquement : il sagit de la date du dernier article publi dans cette rubrique ou ses sous-rubriques. Cela permet ainsi dafficher les rubriques en fonction des derniers articles publis dans ces rubriques. Nouveau critre dge. Il tait possible dafficher les rubriques en fonction de leur ge par rapport la date actuelle. Par exemple, les articles slectionns selon le critre {age < 30} taient les articles publis depuis moins de 30 jours. Un nouveau critre apparat : age_relatif , qui calcule lge par rapport une date courante (par exemple la date dun article, ou mme une date passe dans lURL de la page. Ce nouveau critre permet par exemple : dafficher les articles publis avant ou aprs un autre article ; de crer des affichages sous forme de calendrier (tous les articles publis en mai 2002, par exemple). Nouveaux squelettes. Les squelettes fournis en standard avec SPIP sont nomms article-dist.html , rubrique-dist.html ... Lorsque lon ralise ses squelettes personnels, on les nomme article.html , rubrique.html ... ; de cette faon, lors dune mise jour de SPIP, les squelettes personnels ne sont pas crass. Squelettes pour une seule rubrique. On peut dsormais crer un squelette qui ne sapplique qu une seule et unique rubrique (et non ses sous-rubriques). Par exemple : article=60.html sapplique la rubrique 60, mais pas ses sousrubriques. Pour rsumer la nouvelle faon de nommer les squelettes : article=60.html sapplique aux articles de la rubrique 60, mais pas aux articles de ses sous-rubriques ; article-60.html sapplique tous les articles de la rubrique 60 et aux sousrubriques de la rubrique 60 ; article.html est le squelette personnalis qui sapplique lintgralit du site (si le fichier article.html existe, article-dist.html nest plus du tout utilis) ; article-dist.html est le squelette fourni par dfaut avec SPIP. Classement numrot. Pour forcer lordre daffichage dlments tels que les
http://www.spip.net/fr_article1253.html (5 of 6)2006.04.17 1.13.34

[SPIP] SPIP 1.3

rubriques ou les articles, il est trs simple de faire prcder leur titre dun numro dordre (par exemple : 1. Mon premier article , 2. Mon deuxime article ...). Pour forcer laffichage selon le numro qui prcde le titre, on peut utiliser le critre {par num titre}. Si lon se contente dutiliser {par titre}, on obtient un classement du type : 1, 10, 11, 2, 3... De plus, pour ne pas afficher ce numro, on utilise le filtre supprimer_numero . Dans les squelettes concerns, il suffit dafficher le titre ainsi :
[(#TITRE|supprimer_numero)]

Une bonne partie de ces nouvelles fonctionnalits concerne les utilisateurs confirms de SPIP, cest--dire les webmestres qui modifient eux-mmes les squelettes de leur site. Afin de montrer comment utiliser ces nouvelles fonctions, mais aussi pour raliser des sites la navigation plus complte (et complexe) que les sites raliss avec les squelettes standards, un nouveau tutorial explique lutilisation avance des boucles et des mots-cls. Ce tutorial exploite notamment plusieurs des nouvelles fonctionnalits de la version 1.3 (par exemple lappel darticles en fonction dun mot-cl).

Enfin il y a une multitude de petites modifications dinterface, souvent trs discrtes, loptimisation de certaines parties du code, et la correction de nombreux bugs.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1253.html (6 of 6)2006.04.17 1.13.34

[SPIP] Effectuer une mise jour

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

Effectuer une mise jour


franais catal English Portugus Espaol italiano occitan SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 SPIP 1.0.3, 1.0.4, 1.0.5

Effectuer une mise--jour de SPIP est trs simple. Cependant, voici une mthode recommande pour viter les erreurs. La procdure, dcrite en dtail ci-aprs, peut sembler complique. En ralit, nous entrons volontairement dans le dtail de chaque opration pour vous viter certaines erreurs ; mais dans la pratique, la mise--jour de SPIP se ralise en quelques minutes et est dune grande simplicit.

1. Sauvegardez votre base de donnes.


Avant toute modification importante dun systme informatique, il est toujours conseill deffectuer une sauvegarde de prcaution. Notez bien : il sagit uniquement dune prcaution. Vous ntes pas oblig de leffectuer, et le fichier de cette sauvegarde ne vous servira certainement rien, puisque la mise jour de SPIP se droulera sans problme !

http://www.spip.net/fr_article1318.html (1 of 6)2006.04.17 1.14.4

[SPIP] Effectuer une mise jour

Cest la mme logique que lorsque vous modifiez le systme dexploitation de votre ordinateur (installer une nouvelle version de Windows, de MacOS ou de Linux...) : vous sauvegardez vos documents importants, mais vous savez trs bien que, si la mise--jour sest bien droule, vous naurez pas besoin de rinstaller ces documents. Ce point est important : sauvegardez votre base de donnes avant la mise--jour, mais ne la rinstallez pas ! En effet, nous avons constat que de nombreux utilisateurs sauvegardaient leur base de donnes, effectuaient la mise-jour, puis rinstallaient leurs documents partir de cette sauvegarde ; cest une erreur, et leurs sites prsentaient alors des dysfonctionnements. La sauvegarde est une simple prcaution en cas de gros problme lors de la mise jour, mais si lopration se droule bien (ce qui est presque toujours le cas !), vous ne devez pas rinstaller cette sauvegarde. (La sauvegarde est ralise avec une structure des donnes correspondant la version prcdente de SPIP ; si vous installez ces donnes aprs la mise jour, vous les rinstallez dans une structure qui a volu, provoquant ainsi lapparition de problmes.)

http://www.spip.net/fr_article1318.html (2 of 6)2006.04.17 1.14.4

[SPIP] Effectuer une mise jour

Pour raliser la sauvegarde de votre base de donnes (cest--dire de lintgralit de vos documents raliss avec SPIP), rendez-vous dans la page Sauvegarde/restauration de la base de lespace priv, et cliquez sur le bouton Sauvegarder la base . La procdure dauthentification par FTP dmarre :

La nouvelle page vous indique un nom recopier, du type admin_xxxxx . Copiez ce nom, et dmarrez votre logiciel-client FTP. Rendez-vous sur votre compte FTP correspondant votre site, et placez-vous dans le dossier /data qui se trouve lintrieur du dossier /ecrire . Dans ce dossier /data , crez un nouveau dossier auquel vous donnez le nom indiqu ci-dessus (votre nouveau dossier aura donc un nom de la forme admin_xxxx ). Une fois ce dossier cr, revenez la page de votre butineur, et cliquez sur le bouton recharger cette page . La sauvegarde est alors effectue. Si vous le dsirez, vous pouvez vrifier dans votre logiciel FTP que le document dump.xml (ou dump.xml.gz ) a t cr : ce document est la sauvegarde de votre site. Vous pouvez la laisser sur votre compte FTP, ou la tlcharger sur votre propre ordinateur.

2. Installez la nouvelle version de SPIP


La vritable procdure de mise--jour commence ici.

http://www.spip.net/fr_article1318.html (3 of 6)2006.04.17 1.14.4

[SPIP] Effectuer une mise jour

Le principe est trs simple : il suffit dinstaller les fichiers de SPIP une nouvelle fois, exactement comme vous laviez fait lors de la premire installation. Soit avec spip_loader qui effectue linstallation automatique des fichiers, soit plus traditionnellement en dcompactant SPIP sur votre propre disque dur et en envoyant tous les fichiers par FTP chez votre hbergeur. Notez bien : il nest pas ncessaire de supprimer les fichiers de la version prcdente. Cela nest ni ncessaire ni conseill : en effet, si vous supprimez les anciens fichiers, vous devrez certainement procder nouveau au paramtrage de SPIP (indiquer les donnes de connexion la base de donnes, etc.), procdure inutile si vous vous contentez dcraser les anciens fichiers avec les nouveaux. En effaant les anciens fichiers, vous risquez mme deffacer les images contenues dans vos articles ! Donc : restez simple : inutile deffacer quoi que ce soit avant dinstaller les nouveaux fichiers ; les nouveaux craseront les anciens automatiquement...

3. Dclenchez la mise--jour de votre site


Une fois tous les fichiers rinstalls (par FTP, ou automatiquement avec spip_loader ), rendez vous dans lespace priv de votre site. Notez bien : attendez que tous les fichiers soient bien installs chez votre hbergeur. Inutile dessayer dintervenir sur votre site pendant le transfert des fichiers, vous obtiendriez des rsultats incohrents... Dans votre espace priv, vous obtenez invariablement le message : Message technique : la procdure de mise jour doit tre lance afin dadapter la base de donnes la nouvelle version de SPIP. Si vous tes administrateur du site, veuillez cliquer sur ce lien. :

En tant quadministrateur, suivez le lien pour pouvoir dclencher la mise--jour


http://www.spip.net/fr_article1318.html (4 of 6)2006.04.17 1.14.4

[SPIP] Effectuer une mise jour

de SPIP. Vous arrivez sur un cran dauthentification par FTP, exactement similaire la procdure dcrite plus haut (pour la sauvegarde de la base) :

Une nouvelle fois, copiez le mot indiqu par cet cran et, avec votre logicielclient FTP, crez un nouveau rpertoire dans ecrire/data , et donnez-lui le nom que vous venez de copier. Cliquez sur recharger cette page , ce qui dclenche la mise jour de la base de donnes de SPIP. Voil, lopration de mise--jour est termine. Rptons ce conseil, car cest une erreur trs classique : ne rinstallez pas la base de donnes partir de la sauvegarde effectue prcdemment. Cette sauvegarde correspond dsormais une ancienne structure des donnes, elle est donc plus ou moins inutilisable. Si lopration sest bien droule, vous pouvez mme dtruire cette ancienne sauvegarde.

En cas de ppin !
certains endroits de lespace priv (et parfois sur le site public), jobtiens des messages derreur du type file not found , file missing , ou dautres messages indiquant un problme de fichier incomplet ou manquant. Il y a peut-tre eu des problmes lors du tlchargement des fichiers par FTP ;
http://www.spip.net/fr_article1318.html (5 of 6)2006.04.17 1.14.4

[SPIP] Effectuer une mise jour

avec votre logiciel-client FTP, vrifiez la taille des fichiers incrimins ; notamment, si un fichier a une taille de 0 ko, rinstallez ce fichier. Jobtiens beaucoup de messages derreur. Rinstallez nouveau lintgralit des fichiers par FTP. On ne sait jamais...

http://www.spip.net/fr_article1318.html (6 of 6)2006.04.17 1.14.4

[SPIP] SPIP 1.2, 1.2.1

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.2, 1.2.1


franais SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 italiano

La version 1.2 de SPIP est disponible. Parmi les nouvelles fonctionnalits, les plus importantes sont : Administrateurs accs restreint Cette fonction trs demande (mais lutilit toute relative...) permet de crer des administrateurs aux responsabilits limites une ou plusieurs rubriques du site et ainsi de dlguer une partie de la gestion, sans pour autant donner tout pouvoir ; pour les rubriques qui ne lui sont pas attribues, cet administrateur a les mmes droits quun rdacteur. Certaines pages rserves aux administrateurs, qui concernent la gestion globale du site (telles que Configuration prcise , ou la gestion des rdacteurs), ne sont pas accessibles aux administrateurs accs restreint. Messagerie interne Un systme de messagerie interne complte les outils destins faciliter le travail coopratif sur un site SPIP. Les rdacteurs peuvent changer des messages ( un

http://www.spip.net/fr_article1310.html (1 of 4)2006.04.17 1.14.19

[SPIP] SPIP 1.2, 1.2.1

SPIP 1.0.3, 1.0.4, 1.0.5

ou plusieurs destinataires), chaque message ouvrant un forum priv entre ses destinataires. Il est galement possible de noter des pense-bte . Un calendrier affiche les rendez-vous importants et rcapitule lactivit ditoriale du site selon une nouvelle prsentation graphique. La messagerie interne (que lon peut activer ou dsactiver pour lensemble du site, mais laquelle chaque rdacteur peut dcider individuellement de ne pas participer) est complte dune liste des rdacteurs connects lespace priv. Chaque rdacteur connect peut tre ainsi contact par lenvoi dun message, simplement en cliquant sur le logo associ son nom. Chaque rdacteur peut dcider, individuellement, de ne pas apparatre dans la liste des rdacteurs connects. Nouveau systme de cache Lespace public (toujours calcul partir des squelettes) bnficie dun nouveau moteur (nom de code : Pantagruel ) et dun nouveau systme de cache. Le systme de cache est dsormais dcompos en deux oprations : lanalyse des squelettes (cration dun fichier PHP pr-interprt), puis lintgration des donnes de la base de donnes pour chaque page et sauvegarde dun fichier cache indpendant pour chaque page. Les gains de vitesse (et de charge sur le serveur) apports par ce nouveau moteur sont trs importants. Flux compress SPIP utilise dsormais, lorsque le serveur lautorise et lorsque le navigateur du visiteur est compatible, la compression des donnes de PHP4 : les donnes changes entre le client et le serveur sont compactes, rduisant ainsi de manire trs importante la bande passante utilise et les temps de chargement. Feuilles de style et variables PHP pour modifier un peu plus les squelettes Certaines informations gnres partir de la base de donnes et des squelettes sont dsormais compltes dindications de feuilles de style. Le webmestre a donc la possibilit, sil le souhaite, de pousser la personnalisation de sa mise en page. Par exemple : des classes CSS diffrentes sont attribues aux liens hypertextes lintrieur du site et vers lextrieur, ce qui permet de les diffrencier graphiquement. Mots-cls sur les brves

http://www.spip.net/fr_article1310.html (2 of 4)2006.04.17 1.14.19

[SPIP] SPIP 1.2, 1.2.1

Des mots-cls peuvent tre associs aux brves. Moteur de recherche interne Un moteur de recherche interne permet deffectuer des recherches sur les titres des articles et des brves. Syndication RSS1.0 La syndication des sites (rcupration de fichiers backend) par SPIP est dsormais compatible avec les fichiers RSS 1.0 (jusque l, seuls les RSS 0.9x taient compatibles). Critres ngatifs dans les boucles des squelettes Il est possible dutiliser des critres dexclusion dans les critres de slection des boucles. Par exemple de choisir les articles dont le surtitre nest pas gal Edito , les rubriques autres que la rubrique 6...

Les utilisateurs trouveront encore une foule de petites modifications graphiques (la plupart discrtes), il y videmment de nombreuses corrections de bugs, et de nombreuses fonctions ont reu des optimisations permettant de gagner plus ou moins de temps (trs variables selon les sites, les textes...).

Une version de SPIP, 1.2.1, est disponible en ligne. Elle corrige un bug apparu chez certains hbergeurs (notamment Altern), pour des sites ayant effectu la mise--jour de la version 1.0.6 la 1.2. Ce bug se manifeste par la disparition des messages des forums lorsque la messagerie interne de SPIP est active. Ce problme ne concerne donc que quelques sites. Si vous avez rencontr ce problme lors dune mise jour de votre site, cette version 1.2.1 corrige le problme. Si linstallation de la version 1.2 na pas provoqu de difficults avec les messages des forums, vous navez pas besoin deffectuer cette mise--jour.

http://www.spip.net/fr_article1310.html (3 of 4)2006.04.17 1.14.19

[SPIP] SPIP 1.0.3, 1.0.4, 1.0.5

SPIP, systme de publication pour linternet Documentation en franais Prsentation et premiers pas volutions et mises jour

SPIP 1.0.3, 1.0.4, 1.0.5


franais SPIP 1.8.3 SPIP 1.8.2 SPIP 1.8, 1.8.1 SPIP 1.7, 1.7.2 SPIP 1.6 SPIP 1.5 SPIP 1.4 Lhistoire minuscule et anecdotique de SPIP SPIP 1.3 Effectuer une mise jour SPIP 1.2, 1.2.1 italiano

1.0.3. Cette version corrige quelques petits bugs dans le moteur typographique, et acclre notablement lusage du cache. 1.0.4. Dans la foule, nous sortons la version 1.0.4, qui corrige un bug de la prcdente, qui ne concernait que certains serveurs. Si vous aviez install la version 1.0.3 et rencontr une erreur du type Parse error on line 394 , installez cette version 1.0.4. 1.0.5. Nouvelle version de SPIP : La gestion des sites syndiqus est amliore. On peut dsormais dsactiver la syndication dans la page de configuration (pour allger linterface). Les brves proposent galement des forums internes, utilisables pour la validation (comme pour les articles). Une nouvelle page permet de suivre/grer les forums publics, selon leurs threads, pour chaque article individuel. Accs via la page de chaque article, et via la page gnrale de suivi des forums.

http://www.spip.net/fr_article1309.html (1 of 2)2006.04.17 1.14.37

[SPIP] SPIP 1.0.3, 1.0.4, 1.0.5

SPIP 1.0.3, 1.0.4, 1.0.5

La fonctionnalit doublons dans les squelettes est amliore. Il y a dsormais des doublons pour les auteurs, les breves, les mots-cles, les articles, les rubriques et les forums. Dans le site public, la rapidit est accrue sur certaines grosses pages affichant beaucoup de titres darticles (notamment plan du site, rubriques, sommaire). En effet, le texte dun article nest plus rcupr que quand il est rellement affich. Lenvoi de mail marche dsormais sur online.fr. Lenvoi automatique des messages de forum aux auteurs des articles marche de nouveau.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1309.html (2 of 2)2006.04.17 1.14.37

[SPIP] Guide de lutilisateur

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur

Guide de lutilisateur
Les langues de SPIP Un mmento des raccourcis SPIP
Rechercher
franais tout le site

FAQ de ladministrateur SPIP


Foire aux Questions

Un fichier PDF qui regroupe sur une seule page les raccourcis de mise en page de SPIP.

Rechercher

Quels sont les lments grs par SPIP ? Laide en ligne

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral <INCLURE> dautres squelettes

SPIP-Contrib : des outils pour les rdacteurs

http://www.spip.net/fr_rubrique136.html (1 of 2)2006.04.17 1.16.27

[SPIP] Guide de lutilisateur

Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

Suivre la vie du site (fichiers backend et calendrier ical)


Suivre la vie du site Indiquer ladresse dune mailing-list Les fichiers backend Labonnement au calendrier

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique136.html (2 of 2)2006.04.17 1.16.27

[SPIP] Les langues de SPIP

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur

Les langues de SPIP


franais English 1 J ; Espaol 3 0 @ A catal : 8 Krol ryon italiano occitan Trke Deutsch Les langues de SPIP Un mmento des raccourcis SPIP FAQ de ladministrateur SPIP Quels sont les lments grs par SPIP ? Laide en ligne

Depuis [SPIP 1.6], lespace priv de SPIP est accessible en plusieurs langues, au bon vouloir de chaque rdacteur. Nous sommes loin davoir expriment toutes les possibilits, et tous les besoins lis au multilinguisme. Voici nanmoins quelques lments qui vous permettront dajuster le fonctionnement de votre site vos besoins et vos projets.

La langue principale du site


Elle se rgle dans la configuration, et dtermine plusieurs caractristiques de votre site. En particulier, ce sera la langue des formulaires proposs dans lespace public de votre site (recherche, crire lauteur, sinscrire, forums, panneau de connexion vers lespace priv, etc.), ainsi que celle utilise dans les emails envoys par SPIP. Cette langue principale dfinit galement les rgles de typographie qui sappliqueront aux textes - en franais et en espranto, SPIP ajoute des espaces inscables avant les doubles ponctuations, etc.

http://www.spip.net/fr_article1972.html (1 of 3)2006.04.17 1.16.43

[SPIP] Les langues de SPIP

Ce sera aussi la langue dans laquelle seront accueillis les nouveaux rdacteurs lors de leur premire entre dans lespace priv : ils pourront ensuite choisir une autre langue, grce au menu ddi. Enfin, pour le vietnamien (une langue qui comprend des mots trs courts et dans laquelle laccentuation joue un rle capital), une rgle de translittration spciale sapplique pour lindexation des articles dans le moteur de recherche. De mme pour lallemand.

Le multilinguisme
SPIP 1.7 introduit une amlioration trs demande : la possibilit de raliser des sites en plusieurs langues de faon naturelle. Toute une batterie doutils est fournie cet effet. Dans lespace priv, on peut notamment changer individuellement la langue des articles et rubriques du site, et grer les traductions des articles. Du ct du site public, diverses sophistications tendent minimiser les efforts ncessaires la ralisation dun site multilingue. Modifier la langue dun lment spcifique (article ou rubrique) a les mmes effets que de modifier la langue du site (comme expliqu plus haut), mais ces effets se limitent llment modifi : sil sagit dune rubrique, la modification sapplique tous les lments contenus dans cette rubrique (y compris les sousrubriques, etc.) ; sil sagit dun article, il est seul affect par la modification de la langue. Ainsi une rubrique en arabe verra ses textes affichs de droite gauche, un article en franais hritera des rgles typographiques du franais, et ainsi de suite. Notons que SPIP na aucun problme afficher plusieurs langues diffrentes sur une mme page. Par exemple, un sommaire pourra afficher des articles en allemand et en espranto, les dates tant affiches dans les langues correspondantes.

Traduire et adapter SPIP


SPIP 1.7 est propos en arabe (ar), catalan (ca), crole de la Runion (cpf), danois (da), chinois(zh) allemand (de), anglais (en), bulgare (bg),espranto (eo), espagnol (es), farsi (fa), franais (fr), galicien (gl), italien (it), nerlandais (nl), sept dialectes doccitan (oc) [1], polonais (pl), portugais (pt), et vietnamien (vi). Cette liste nest pas exhaustive, et dautres traductions sont en prparation
http://www.spip.net/fr_article1972.html (2 of 3)2006.04.17 1.16.43

[SPIP] Les langues de SPIP

(basque, norvgien (norsk bokml)hbreu, langues slovnes, roumain...) ; elles viendront sajouter dans les versions prochaines de SPIP. Si vous dsirez participer aux traductions en cours, aider traduire ou relire la documentation, etc., vous tes les bienvenus sur la liste de discussion spip-trad@rezo.net ; nous disposons doutils permettant de raliser rapidement (et ventuellement plusieurs) les fichiers de traduction - lopration complte peut prendre entre 3 jours et une semaine de travail, en fonction de votre connaissance de SPIP. Nous avons galement besoin de personnes dsirant traduire des articles de la prsente documentation ; nhsitez pas visiter lespace des traducteurs et proposer votre contribution. A bientt !
[1] Voir ce propos larticle Les versions occitanes de SPIP : pourquoi autant de c ?

tlcharger le squelette de cette page

http://www.spip.net/fr_article1972.html (3 of 3)2006.04.17 1.16.43

[SPIP] Un mmento des raccourcis SPIP

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur

Un mmento des raccourcis SPIP


franais 1 J ; 3 0 @ A catal : 8 Trke English Espaol italiano Les langues de SPIP Un mmento des raccourcis SPIP FAQ de ladministrateur SPIP Quels sont les lments grs par SPIP ? Laide en ligne

Philippe Allart a ralis ce mmento des raccourcis de mise en page SPIP.

Mmento des raccourcis SPIP

tlcharger le squelette de cette page

http://www.spip.net/fr_article1578.html2006.04.17 1.17.4

Mmento pour l'enrichissement typographique dans SPIP


Ce tableau rappelle brivement les mthodes utiliser pendant l'criture d'un article pour ajouter des titres, du texte en gras, en italique, etc..., sans avoir connatre HTML. L'utilisation d'HTML reste nanmoins possible, et ncessaire pour les cas plus complexes.

Fonctionnalits
Intertitre Changement de paragraphe Caractres gras Caractres en italique

Mthodes
{{{ le titre }}} Passer une ligne {{texte en gras}} {texte en italiques}

Commentaires
Le texte entre triples accolades est affich comme un titre.

Le texte entre double accolades apparaitra en gras. Le texte entre simples accolades est affich en italique. Astuce: pour avoir du texte en gras et en italique, mettre trois accolades en insrant une espace (pour faire 1+2), et en respectant la symtrie. Ex : { {{ texte en gras et en italique }} }

Liste puces

- premier lment - deuxime lement - etc...

Le petit trait sera automatiquement remplac par une puce, telles qu'elle est dfinie dans la charte graphique.

Trait de sparation Lien hypertexte

---[texte -> URL]

Entrer une ligne contenant quatre petits tirets (au moins). Mettre le texte et l'URL entre crochets, spars par une flche. Le texte devient une zone cliquable, et renverra le lecteur sur la page web indique par URL . Ex : [le site national de l'AITF->http://www.aivf.asso.fr]

Lien hypertexte vers un article

[texte->nd'article]

Pour renvoyer vers un article du site, il suffit de donner le numro de l'article. Par exemple, en supposant que l'article 12 donne la liste des contacts : [nous conctacter->12]

Lien vers une rubrique Lien vers une brve Note de bas de page automatique Note de bas de page numrote Faire un tableau simple

[texte->rubxxx] [texte->brxxx] [[texte de la note]] [[<x>texte de la note]] | aaa | bbb | ccc | | xxx | yyy | zzz |

O xxx est le numro de la rubrique. Ex : [voyez notre agenda->rub3] O xxx est le numro de la brve. Ex : [Annonce de l'AG->br25] Le texte entre doubles crochets droits apparatra en bas de la page, et sera remplac par un numro gnr automatiquement. Le texte entre doubles crochets apparatra en bas de page, et sera remplac par le numro x indiqu entre < > . Pour faire un tableau simple il suffit de sparer les colonnes par la barre verticale. Cette mthode autorise uniquement des cellules d'une seule ligne. Pour faire des tableaux plus complexes, utiliser le langage HTML. L'image doit avoir t prcdemment tlcharge sur le site par la fonction tlcharger une nouvelle image dans la colonne de gauche affiche quand on rdige un article. Le systme indique alors sous quel nom l'image est disponible, et c'est ce nom qui doit tre utilis dans les commandes ci-contre. Trois commandes sont disponibles, selon qu'on veut voir l'image gauche, au centre ou droite.

Pour plus d'informations, dans l'espace d'administration de SPIP, cliquer sur [AIDE], puis es articles , et enfin les raccourcis typographiques .

Insrer une image

<IMG1|left> <CENTER> <IMG1|center> </CENTER> <IMG1|right>

[SPIP] FAQ de l'administrateur SPIP

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur

FAQ de ladministrateur SPIP


franais catal Deutsch English Trke Portugus Espaol italiano Les langues de SPIP Un mmento des raccourcis SPIP FAQ de ladministrateur SPIP Quels sont les lments grs par SPIP ? Laide en ligne

Dbuter
1. Jai limpression que je nai pas accs toutes les fonctionnalits depuis linterface. Pourtant, je suis bien administrateur. Vrifiez que vous tes bien en interface complte. Cest affich dans le tableau de bord en haut de chaque page de lespace priv. En interface simplifie, beaucoup de fonctionnalits sont masques afin de rendre lutilisation plus simple pour les nophytes.

Supprimer des lments


1. Comment supprimer un article ? On ne peut pas supprimer directement un article, mais on peut le mettre la poubelle dans le menu de slection du statut de larticle. Les articles la poubelle sont automatiquement effacs au bout de 24 heures ; cela vous laisse un temps de rpit en cas de mauvaise manipulation.

http://www.spip.net/fr_article1112.html (1 of 3)2006.04.17 1.18.20

[SPIP] FAQ de l'administrateur SPIP

2. Comment supprimer une brve ? De la mme manire que pour les articles (cf. ci-dessus), on ne peut supprimer directement une brve ; mais les brves refuses sont effaces automatiquement au bout du mme dlai (24 heures). 3. Comment supprimer une rubrique ? Pour pouvoir tre supprime, une rubrique doit tre vide (i.e. ne contenir ni article - sauf la poubelle - ni sous-rubrique). Si cette condition est vrifie, la rubrique peut tre supprime dans afficher tout le site , en dpliant larborescence jusqu rendre visible la rubrique, et en cliquant sur le lien supprimer ct de celle-ci.

Les diffrents types de navigation


1. Quel est lintrt des mots-cls ? Dans la plupart des sites, la navigation la plus vidente sera celle impose par les rubriques : on navigue dans le site en se reprant dans la classification arborescente mise en place grce aux rubriques. Les mots-cls permettent davoir un autre niveau de navigation, transversal et indpendant. Chaque article peut se voir associer plusieurs mots-cls. Ainsi dans le site public, on peut afficher la liste des mots-cls associs un article ; puis la liste des autres articles associs chacun de ces mots. La navigation dfinie ne dcrit pas un arbre, elle est beaucoup plus lche, horizontale et permet de se dplacer de proche en proche. Pour rsumer les diffrences fonctionnelles : tout article est dans une rubrique et une seule ; les rubriques peuvent tre imbriques linfini (sous-rubriques, etc.) ; un nombre arbitraire (zro, un, plusieurs) de mots-cls peut tre associ chaque article, et de mme chaque mot-cl peut tre associ un nombre arbitraire (zro, une, plusieurs) darticles ; les mots-cls ne peuvent pas tre imbriqus les uns dans les autres. Pour un exemple oprationnel dutilisation des mots-cls, on pourra consulter le site du Monde diplomatique. Les rubriques y dfinissent la classification rigide du site (dossiers, cahier, cartes, archives classes par date...). Les mots-cls permettent de lier les articles traitant dun mme thme ; ils y sont classs en deux groupes, sujets et pays .
http://www.spip.net/fr_article1112.html (2 of 3)2006.04.17 1.18.20

[SPIP] FAQ de l'administrateur SPIP

2. Je ne comprends pas la diffrence entre mots-cls et moteur de recherche. Est-ce que cest la mme chose ? Les mots-cls et le moteur de recherche sont deux choses fondamentalement diffrentes dans SPIP (dailleurs, on peut dsactiver le moteur de recherche tout en conservant les mots-cls, et vice-versa). Avec les mots-cls, ce sont les administrateurs du site qui dfinissent les relations entre les articles en liant des mots-cls ces articles. Ces mots-cls peuvent ensuite tre affichs explicitement dans le site public, ainsi que la liste des articles associs chacun dentre eux ; sans cet affichage, ils servent trs peu de choses. Cela donne une navigation de proche en proche, indpendante des rubriques, mais toujours fixe par les administrateurs. Le moteur de recherche effectue des recherches la demande du visiteur sur nimporte quel terme ou groupe de termes. Les mots-cls sont certes inclus dans les champs utiliss par la recherche, mais au mme titre que les diffrents champs des articles (chapo, texte, etc.). Le moteur de recherche sert ainsi trouver des informations sans avoir passer par les navigations (rubriques, mots-cls) dfinies par les administrateurs, qui ne sauraient penser tous les termes susceptibles dtre recherchs dans un site. Pour des informations plus techniques sur le moteur de recherche, voir larticle y consacr dans le guide du webmestre SPIP. 3. Les mots-cls peuvent-ils ralentir mon site ? Non. 4. Le moteur de recherche peut-il ralentir mon site ? Cest possible.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1112.html (3 of 3)2006.04.17 1.18.20

[SPIP] Quels sont les lments grs par SPIP ?

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur

Quels sont les lments grs par SPIP ?


franais catal Krol ryon English romn Trke Espaol italiano Les langues de SPIP Un mmento des raccourcis SPIP FAQ de ladministrateur SPIP Quels sont les lments grs par SPIP ? Laide en ligne

Dvelopp, au dpart, pour grer le site uZine 2, SPIP est naturellement destin grer un site de type webzine : la base, une hirarchie de rubriques, et des articles installs dans ces rubriques. Le systme gre galement les forums et des brves (par exemple : revue de presse...). Voyons plus en dtail quels sont ces diffrents lments pris en charge par SPIP, ce qui nous permettra par ailleurs de clarifier le vocabulaire utilis par la suite.

1. La hirarchie des rubriques


Une rubrique est un espace destin accueillir des articles, des brves... Rien de plus simple : on peut aussi dire dossier (comme sur votre ordinateur : vos documents sont rangs dans des dossiers). Les rubriques peuvent tre installes les unes dans les autres, formant ainsi une hirarchie. Une rubrique est soit lintrieur dune autre rubrique, soit elle nest rattache aucune autre et constitue alors un point dentre dans le site (nous parlons alors de tte de rubrique, ou de secteur). Lembotement des rubriques les unes dans les autres constitue lossature de votre site, puisque cest autour de

http://www.spip.net/fr_article497.html (1 of 6)2006.04.17 1.19.4

[SPIP] Quels sont les lments grs par SPIP ?

cette structure que viendront se greffer les diffrents lments de votre site (articles, brves, sites syndiqus...) Ci-dessous, les rubriques 1 et 2 sont des secteurs (logiquement, ces rubriques dfinissent les grands secteurs thmatiques du site).

Rien de plus simple. Ci-dessus, les rubriques 11, 12 et 13 sont dans la rubrique 1. Les rubriques 221 et 222 sont dans la rubrique 22, elle-mme dans la rubrique 2. On nomme hirarchie le chemin logique qui mne une rubrique. Ainsi, la hirarchie de la rubrique 221 est : rubrique 2, puis rubrique 22. La gestion de la structure hirarchique est trs simple : il suffit dindiquer dans quelle rubrique se situe chacune des rubriques (cela se rgle par un simple menu droulant).

Le schma ci-dessus montre comment on dplace une rubrique : lorsquune rubrique est dplace, toutes les sous-rubriques quelle contient la suivent vers son nouvel emplacement. Par exemple, si nous dplaons la rubrique 22 lintrieur de la rubrique 12, les rubriques 221 et 222 la suivent (la rubrique 22 aurait tout aussi bien p tre place comme tte de rubrique, ou lintrieur de la rubrique 23 par exemple. En revanche, linterface graphique vous interdit de placer la rubrique 22 lintrieur de la rubrique 221 : sinon on obtiendrait une boucle que le systme ne saurait pas grer. Signalons ici la premire grosse limitation de SPIP : SPIP ne gre quune seule structure, et cest la structure hirarchique que nous venons de dcrire. En
http://www.spip.net/fr_article497.html (2 of 6)2006.04.17 1.19.4

[SPIP] Quels sont les lments grs par SPIP ?

particulier : il nest pas possible quune rubrique appartienne deux rubriques diffrentes (par exemple, pour un site de cinma, on ne pourrait pas crer une rubrique Orson Welles qui dpendrait la fois dune rubrique Ralisateurs et en mme temps dune rubrique Acteurs ) ; cela interdit galement de raliser plusieurs hirarchies entrecroises ; SPIP ne gre pas les structures en boucle (ou rcursives). Ces limitations ne sont pas dues des difficults techniques : limpratif, ici, a t de conserver la simplicit dutilisation, et notamment la simplicit de linterface (crer une interface pour une telle hirarchie est ais, car cest dun emploi frquent ; en revanche, grer simultanment plusieurs niveaux de hirarchie ou des structures en boucle pose de gros problmes dergonomie). On peut attacher un forum individuel chaque rubrique (voir plus loin). Terminons cette partie sur les rubriques en expliquant le principe des rubriques actives. Il arrive frquemment, lorsquon travaille sur le site, que des rubriques soient vides, ou quelles ne contiennent que des articles qui ne sont pas encore publis (ils sont en prparation et donc pas encore diffuss publiquement). Imaginons par exemple que la rubrique 221 ne contienne aucun article publi ; il est vident que, si un visiteur du site arrivait sur cette rubrique, il serait dans une impasse, une rubrique qui ne lui proposerait rigoureusement aucune information. Cest pourquoi nous parlons de rubriques actives : sur le site visit par le public, seules les rubriques contenant des articles publis (ou des sous-rubriques contenant des articles publis) sont considres comme actives, et donc affiches sur le site public. Cette gestion des rubriques actives/non actives est automatique ; cependant le webmestre doit tre conscient que toutes les rubriques cres dans la partie prive de SPIP napparaissent pas forcment sur le site public.

2. Les articles
Les articles, cest encore plus simple : un article se trouve dans une rubrique. Point. Cela se gre trs simplement par un menu droulant. Notez quune rubrique contenant elle-mme des sous-rubriques peut parfaitement recevoir des articles. La seule subtilit des articles, cest leur statut. Un article peut tre : en cours de rdaction : son (ou ses) auteur(s) sont en train dy travailler, il napparait donc pas sur le site public, et son accs est limit sur le site priv ;
http://www.spip.net/fr_article497.html (3 of 6)2006.04.17 1.19.4

[SPIP] Quels sont les lments grs par SPIP ?

propos la publication : lorsque lauteur dcide que son article est termin, il le propose au comit de rdaction (les administrateurs et les autres rdacteurs) afin de dcider sil doit tre publi ou non. Larticle nest toujours pas visible publiquement, mais tous les participants lespace priv peuvent le voir et son invits le commenter dans un forum li cet article ; publi : larticle est publi sur le site public ; refus : larticle nest pas publi. Cest la seule chose comprendre pour les articles ; pour le reste, cest trs simple, et tout se gre par une interface Web. Limitation : un article ne peut se trouver que dans une seule rubrique la fois (mme problme de conception dinterface que prcdemment). On peut attacher un forum chaque article (voir plus loin).

3. Les brves
La description la plus simple pour les brves, cest langlicisme news. Ce sont des articles de moindre importante que les vritables articles, et ils ne sont pas signs. En revanche, il est trs simple de leur adjoindre un lien vers un article ou un site Web. Les brves sont donc idales pour constituer une revue de presse en ligne (mais rien ninterdit de les dtourner de leur usage). Les brves ont une gestion plus sommaire que les articles : les brves ne peuvent tre attaches qu des secteurs, des ttes de chapitre (dans notre exemple, les brves correspondraient aux rubrique 1 et 2) ; les brves ne sont pas signes, et leur mise en place est trs simple : interface rduite, validation dun clic. On peut attacher un forum chaque brve (ci-dessous).

4. Les forums de discussion


Les forums de discussion sont grs automatiquement par SPIP. Les forums de discussion sont ici directement lis au contenu rdactionnel du site : on peut ouvrir un forum indpendant pour chaque article, pour chaque rubrique et pour chaque brve. Par dfaut, les forums de SPIP sont modrs postriori. Cela signifie que chaque
http://www.spip.net/fr_article497.html (4 of 6)2006.04.17 1.19.4

[SPIP] Quels sont les lments grs par SPIP ?

message envoy par un utilisateur du site est immdiatement publi. En revanche, les administrateurs du site bnficient dune interface qui leur permet de lire les derniers messages posts depuis une semaine et, le cas chant, de les supprimer. Ladministrateur du site pourra dcider de modifier le comportement des forums. Il pourra choisir : labsence totale de forums sur son site ; des forums modrs priori : les contributions napparaissent quune fois valides par un administrateur ; des forums sur abonnement : les participants doivent auparavant sinscrire et recevoir (automatiquement) par mail un code leur permettant de participer. Les messages supprims ne sont pas dtruits de la base : ils sont mis de ct, et affichent ladresse IP de lexpditeur ainsi que la date et lheure de lenvoi. En cas de problme juridique (ou de spammeur fou), cest un recours indispensable. Lorsque les forums sont actifs, il est possible, pour chaque article, dy interdire localement lusage dun forum.

5. Les auteurs
SPIP gre les auteurs du site de deux faons : la fois pour la signature des articles (pseudo, gestion des adresses email, biographie...), et pour la gestion des accs au site priv. Ces deux aspects se grent via la mme interface (rserve aux administrateurs).

6. Les sites syndiqus


Les systmes de publication automatique (SPIP, phpNuke...) fabriquent automatiquement un fichier standardis (en XML) indiquant leurs dernires publications. SPIP permet daller rcuprer de tels fichiers sur le rseau, et de les inclure dans sa propre navigation. On peut ainsi indiquer sur son propre site des listes des dernires publications dautres sites. Lorsque ces sites sont mis jour, les nouveauts apparaissent automatiquement sur votre propre site. Dans SPIP, les sites syndiqus sont indiqus dans les rubriques (de faon afficher, ct de ses propres articles, des articles tirs dautres sites ayant une thmatique similaire).

http://www.spip.net/fr_article497.html (5 of 6)2006.04.17 1.19.4

[SPIP] Quels sont les lments grs par SPIP ?

7. Les ptitions
Il est possible dattacher nimporte quel article une ptition valide par email. Quelques clics permettent de configurer une telle ptition (invitant les utilisateurs signer tel texte). Le processus de signature effectue automatiquement la validation par email (un mail est envoy au signataire, lui indiquant une URL sur laquelle il validera sa signature). Ainsi on obtient des ptitions plus fiables , puisque chaque signature correspond bien une adresse email existante.

8. Les mots-cls
Il est possible de crer des mots-cls lis aux articles. Par exemple, un article pourra tre li aux mots cls France , Politique ... Lusage des mots-cls permet de proposer une navigation entre diffrents articles portant sur les mmes thmes ; en particulier, cela permet de contourner la limitation de SPIP selon laquelle un article ne peut appartenir qu une seule rubrique.

tlcharger le squelette de cette page

http://www.spip.net/fr_article497.html (6 of 6)2006.04.17 1.19.4

[SPIP] L'aide en ligne

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur

Laide en ligne
franais Espaol italiano Les langues de SPIP Un mmento des raccourcis SPIP FAQ de ladministrateur SPIP Quels sont les lments grs par SPIP ? Laide en ligne 1 J ; 3 occitan 0 @ A catal : 8 Portugus Deutsch English romn Trke

SPIP intgre une aide en ligne complte, que vous pouvez retrouver, dans lespace priv, en cliquant sur le point dinterrogation disponible un peu partout. Le bouton principal douverture de laide en ligne se situe dans la barre de navigation du site priv, en haut et droite : il sagit du panneau mauve marqu dun point dinterrogation (vous ne pouvez pas le manquer) :

Nous vous invitons en particulier lire la page Articles/Raccourcis typographiques , qui vous indique comment mettre en page vos articles sous
http://www.spip.net/fr_article891.html (1 of 2)2006.04.17 1.19.55

[SPIP] L'aide en ligne

SPIP. Tout lintrt de cette aide en ligne rside dans les innombrables petits points dinterrogation installs dans linterface de la partie prive : chacun ouvre laide en ligne la rubrique correspondant exactement laction en cours. Nhsitez pas en abuser :

Pour le reste, vous constaterez que linterface de SPIP est trs simple. Et en tant que rdacteur, nhsitez pas exprimenter : vous ne pouvez pas rellement faire de dgts.

tlcharger le squelette de cette page

http://www.spip.net/fr_article891.html (2 of 2)2006.04.17 1.19.55

[SPIP] Suivre la vie du site (fichiers backend et calendrier ical)

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur Suivre la vie du site (fichiers backend et calendrier ical)

Suivre la vie du site (fichiers backend et calendrier ical)


Suivre la vie du site Indiquer ladresse dune mailing-list Les fichiers backend Labonnement au calendrier

Rechercher
franais tout le site

Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral
http://www.spip.net/fr_rubrique286.html (1 of 2)2006.04.17 1.21.30

[SPIP] Suivre la vie du site (fichiers backend et calendrier ical)

<INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique286.html (2 of 2)2006.04.17 1.21.30

[SPIP] Suivre la vie du site

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur Suivre la vie du site (fichiers backend et calendrier ical)

Suivre la vie du site


franais Suivre la vie du site Indiquer ladresse dune mailing-list Les fichiers backend Labonnement au calendrier catal Espaol italiano Trke

SPIP propose aux utilisateurs diffrentes mthodes pour suivre lactivit de votre site. Les utilisateurs sont invits les utiliser en fonction de leurs besoins et/ou des logiciels dont ils ont lhabitude. Le suivi par mail de lactivit ditoriale est facilit dans la version SPIP 1.7 : il est possible dindiquer ladresse dune liste de diffusion (mailing-list) dans la configuration du site, tous les participants tant ainsi automatiquement informs de son existence. Lannonce des dernires nouveauts par syndication XML (fichier backend) est toujours prsente, elle est rappele aux participants du site. En effet, cette fonctionnalit conue initialement pour la syndication entre sites Web peut tre utilise partir de logiciels sur les ordinateurs de bureau (news readers, logiciels de suivis de news). SPIP 1.7 introduit une nouveaut notablement plus efficace : la synchronisation des informations prives et publiques du site dans des logiciels de calendrier. Il sagit dune fonctionnalit nettement plus puissante que les prcdentes, la richesse des informations changes tant sans commune mesure.

http://www.spip.net/fr_article2275.html (1 of 2)2006.04.17 2.20.4

[SPIP] Indiquer l'adresse d'une mailing-list

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur Suivre la vie du site (fichiers backend et calendrier ical)

Indiquer ladresse dune mailing-list


franais Suivre la vie du site Indiquer ladresse dune mailinglist Les fichiers backend Labonnement au calendrier catal Espaol italiano

Le suivi par mail de lactivit ditoriale est facilit dans la version SPIP 1.7 : il est possible dindiquer ladresse dune liste de diffusion (mailing-list) dans la configuration du site, tous les participants tant ainsi automatiquement informs de son existence.

Crer une mailing-list


SPIP ne gre pas lui-mme de liste de diffusion (ou mailing-list) : il nest pas conu pour cela et, par ailleurs, dexcellents logiciels libres grent une telle fonction parfaitement ; de plus, de nombreux sites proposent des mailing-lists faciles utiliser par des dbutants. SPIP est donc conu pour faciliter lutilisation dune liste de diffusion externe : vous devez crer une telle liste de diffusion [1] et indiquer ses coordonnes dans SPIP. Une fois la liste cre, vous obtenez deux informations : ladresse email laquelle il faut envoyer un message pour quil soit expdi tous les abonns de la liste, ladresse (URL) Web de la page dinformation de cette liste, o vos visiteurs pourront sabonner en indiquant leur adresse email personnelle.

http://www.spip.net/fr_article2388.html (1 of 3)2006.04.17 2.20.19

[SPIP] Indiquer l'adresse d'une mailing-list

Indiquer les informations de la mailing-list dans SPIP


Ladresse de cette mailing-list se rgle dans la page de Configuration du site , Interactivit , dans lencadr Envoi de mails automatique :

Dans la partie Suivi de lactivit ditoriale , slectionnez Envoyer les annonces ladresse... et indiquez ladresse email de votre liste de diffusion. De cette faon, chaque vnement du site (article propos, article publi...) sera immdiatement envoy cette adresse et expdi tous les abonns de cette liste de diffusion. Indiquez dans lencadr qui suit ladresse (URL) Web de la page dinformation de cette liste. Cette adresse sera alors signale tous les rdacteurs dans la page
http://www.spip.net/fr_article2388.html (2 of 3)2006.04.17 2.20.19

[SPIP] Indiquer l'adresse d'une mailing-list

Suivre la vie du site comme la page o ils pourront sabonner la liste de diffusion. Si la mailing-list ne propose pas de page Web dinformation, vous pouvez indiquer ladresse email spcifique permettant de sy abonner (souvent dans un format du type : spip@rezo.net?subject=subscribe).
[1] De nombreux hbergeurs de sites proposent de grer de telles listes en mme temps quils hbergent votre site, et de nombreux services - marchands ou non - proposent des systmes de listes de diffusion.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2388.html (3 of 3)2006.04.17 2.20.19

[SPIP] Les fichiers backend

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur Suivre la vie du site (fichiers backend et calendrier ical)

Les fichiers backend


franais Suivre la vie du site Indiquer ladresse dune mailing-list Les fichiers backend Labonnement au calendrier catal Espaol italiano

Le format XML/RSS a t conu pour exporter la liste des derniers articles publis par un site Web. De cette faon, diffrents outils peuvent automatiquement rcuprer et afficher les titres et descriptions des dernires mises jour dun site Web. Lusage premier de ce format est la syndication de contenu : un site Web affiche (automatiquement) les dernires mises jour dun autre site Web. On appelle cet usage la syndication de contenu. SPIP, comme la plupart des outils de gestion de contenu (CMS), permet dafficher facilement les informations publies sur dautres sites (via la fonctionnalit Rfrencer/syndiquer un site Web ). Une utilisation plus rcente de ce format consiste permettre aux usagers de linternet de s abonner un site Web en rcuprant automatiquement et rgulirement la liste des dernires mises jour du site. En utilisant un logiciel adapt (un newsreader), lusager na plus besoin de visiter tous les sites qui lintressent pour voir sil y a des mises jour : le logiciel lui indique directement quelles sont les nouveauts des diffrents sites auxquels il sest abonn . Cet usage est particulirement utile pour suivre lactivit de plusieurs sites en mme temps. SPIP cre automatiquement les diffrents fichiers au format XML/RSS permettant un autre site de syndiquer le contenu de son propre site, et/ou aux visiteurs du site de sy abonner avec un newsreader. Ces fichiers se nomment

http://www.spip.net/fr_article2389.html (1 of 3)2006.04.17 2.20.33

[SPIP] Les fichiers backend

des fichiers backend .

S abonner un site Web


Lutilisateur doit installer sur son ordinateur un logiciel spcifique lui permettant de s abonner des sites Web. Il existe deux types de logiciels de ce type : les extensions sajoutant un client Web (Mozilla ou Microsoft Explorer notamment) ; ainsi les fonctions de newsreader sont directement intgres linterface du client Web habituel, le fonctionnement en est trs simplifi (souvent li la gestion des signets - bookmarks - du navigateur) ; les logiciels indpendants, non lis un navigateur Web. La solution la plus simple consiste installer une extension de son navigateur Web. On trouvera plusieurs extensions de ce type pour lexcellent Mozilla FireFox (habituellement sous la mention News , ou RSS Reader ; voir par exemple RSS Reader Panel).

Exemple de lecteur RSS dans Mozilla FireFox

Habituellement, les newsreaders se prsentent ainsi : en haut gauche, la liste des sites auxquels on sest abonns (on a indiqu le titre du site et ladresse du fichier backend correspondant) ; pour chacun de ces sites (ici en bas gauche), la liste des derniers articles publis, accompagns dun court descriptif ; dans la fentre principale, larticle lui-mme est affich lorsquon clique sur le titre dun des articles rfrencs.

http://www.spip.net/fr_article2389.html (2 of 3)2006.04.17 2.20.33

[SPIP] L'abonnement au calendrier

SPIP, systme de publication pour linternet Documentation en franais Guide de lutilisateur Suivre la vie du site (fichiers backend et calendrier ical)

Labonnement au calendrier
franais Suivre la vie du site Indiquer ladresse dune mailing-list Les fichiers backend Labonnement au calendrier catal Espaol italiano

SPIP 1.7 introduit une nouveaut trs efficace pour suivre la vie dun site Web : la synchronisation des informations prives et publiques du site dans des logiciels de calendrier. SPIP permet lexportation de calendriers au format iCal. Ce format permet des logiciels de calendrier dafficher une liste dvments dats et une liste de tches, en les rcuprant automatiquement et rgulirement sur le Web. Cette fonction est particulirement utile pour suivre lactivit de plusieurs sites sous SPIP. De cette faon, on peut par exemple afficher sur la mme page dun logiciel de calendrier : la liste des derniers articles publis sur son propre site, la liste des activits ditoriales de plusieurs sites SPIP auxquels on participe, les diffrents rendez-vous personnels (par exemple les rendez-vous personnels que lon note sur son site, les annonces de rencontres de lespace priv dune association, etc.), la liste des derniers articles rfrencs par le Portail des Copains, les dates des prochaines vacances scolaires, les horaires des prochains matchs de son quipe de basketball prfre... Les logiciels de calendrier permettant dexploiter de tels fichiers sont actuellement peu nombreux. Sous MacOSX, le logiciel iCal est incontournable et bnficie dune ergonomie trs pousse. Pour les autres plateformes, le principal logiciel

http://www.spip.net/fr_article2390.html (1 of 3)2006.04.17 2.20.51

[SPIP] L'abonnement au calendrier

actuellement disponible est lextension Mozilla Calendar qui sinstalle trs facilement dans Mozilla ou FireFox. Une fois ces logiciels (iCal ou Mozilla Calendar) installs sur votre ordinateur, il suffit de cliquer sur les liens proposant la synchronisation de calendrier pour quun nouveau calendrier saffiche dans le logiciel. La gestion et la navigation de ces calendriers est ensuite trs simple.

Laffichage de plusieurs calendriers sous Mozilla Calendar

La copie dcran ci-dessus (cliquez sur la vignette pour lagrandir) affiche un exemple sous Mozilla Calendar. On trouve : en haut gauche, la liste des calendriers auxquels lutilisateur sest abonn : la fois des calendriers de rendez-vous personnels, lactivit ditoriale de plusieurs sites, les publications publiques dautres sites... Des codes couleur permettent de reprer les rendez-vous de chaque calendrier ; gauche, une liste de tches effectuer : on trouve notamment lannonce du nombre darticles et de brves proposs sur diffrents sites ; droite dans la fentre principale, des rendez-vous prsents dans un calendrier graphique (ici en affichange mensuel) : en gris les derniers articles slectionns par rezo.net, en rose des rendez-vous personnels, en jaune des articles proposs sur un autre site... en double-cliquant sur un rendez-vous, on a obtenu sa fiche (fentre en bas gauche) ; on y trouve le titre, le rappel de la date, ainsi que lintroduction de larticle (ventuellement, le dernier message dune discussion prive ou le texte dun rendez-vous personnel) et, trs utile, ladresse Web (URL) o lon pourra consulter ou modifier cette information.
http://www.spip.net/fr_article2390.html (2 of 3)2006.04.17 2.20.51

[SPIP] L'abonnement au calendrier

N.B. La synchronisation nest pas possible dans les deux sens : on peut rcuprer les informations dun calendrier ralis partir dun site sous SPIP dans son logiciel de calendrier, mis jour rgulirement, on ne peut pas envoyer vers le site SPIP concern des modifications ralises partir du logiciel de calendrier.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2390.html (3 of 3)2006.04.17 2.20.51

[SPIP] Guide du webmestre et du bidouilleur

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur

Guide du webmestre et du bidouilleur


Scurit : SPIP et IIS
Rechercher
franais tout le site

Rechercher

Empcher laccs aux donnes confidentielles de SPIP sous Microsoft IIS Cet article vous concerne si la machine qui vous hberge nutilise pas Apache, le serveur Web le plus rpandu, mais le logiciel Microsoft IIS. Vous avez ...dist ?

Quest-ce que les fichiers dist ?


Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les

FAQ webmestre

Que sont les fichiers se trouvant dans le rpertoire dist ou ayant -dist.html dans leur nom ? en fait ce sont les fichiers de la distribution de SPIP...

http://www.spip.net/fr_rubrique135.html (1 of 6)2006.04.17 2.22.56

[SPIP] Guide du webmestre et du bidouilleur

squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

Rapidit du site public Contribuer au dveloppement de SPIP


Quelques rgles

SPIP-Contrib : des outils pour les webmestres Lespace des contributions externes, qui recense lensemble des scripts, filtres, squelettes, documentations imprimer, etc., fournis la communaut par les utilisateurs de SPIP.

Fichier CSV vers SPIP Etiquetage ICRA automatique Des fils RSS 1.0, RSS 2.0 et Atom 1.0 pour votre site SPIP Un graphique de popularit Galerie SPIP + PHP, simple et prte l'emploi Abandonnons RSS 0.91 ! csv2spip : gestion des utilisateurs de SPIP partir de fichiers CSV

SPIP-Contrib : mes_fonctions

SPIP-Contrib : les squelettes

Les articles de documentation de SPIP-Contrib

http://www.spip.net/fr_rubrique135.html (2 of 6)2006.04.17 2.22.56

[SPIP] Guide du webmestre et du bidouilleur

Mise en page : manuel de rfrence


Comment crer sa propre mise en page pour un site gr sous SPIP. Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES [...]

SPIP pas pas


Pas pas, comment crer un SPIP qui dfie les limites. Mon premier squelette

http://www.spip.net/fr_rubrique135.html (3 of 6)2006.04.17 2.22.56

[SPIP] Guide du webmestre et du bidouilleur

Un squelette, plusieurs articles Une rubrique Boucles en boucles Grer le cache Des filtres

Guide des fonctions avances


Au-del du manuel de rfrence, vous trouverez ici une description dtaille des fonctions plus avances la disposition du webmestre. Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation [...]

Initiation : utiliser les feuilles de style avec


http://www.spip.net/fr_rubrique135.html (4 of 6)2006.04.17 2.22.56

[SPIP] Guide du webmestre et du bidouilleur

SPIP
Pour tirer parti de toute la souplesse de SPIP, il est recommand dutiliser les feuilles de style. Pas de panique, cette petite initiation permettra aux dbutants de raccrocher les wagons... Introduction Des styles qui ont de la class Une typographie personnalise Ils sont beaux, mes formulaires ! Pour en savoir plus

Trucs et astuces
Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau Ne pas afficher les articles publis depuis plus dun an Prsenter les rsultats dune recherche par secteurs [...]

http://www.spip.net/fr_rubrique135.html (5 of 6)2006.04.17 2.22.56

[SPIP] Guide du webmestre et du bidouilleur

Le dveloppement de SPIP et ses outils


Les diffrents outils de communication utiliss pour dvelopper SPIP.

Tutorial : utilisation avance des boucles et des mots-cls

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique135.html (6 of 6)2006.04.17 2.22.56

[SPIP] Scurit : SPIP et IIS

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur

Scurit : SPIP et IIS


franais Scurit : SPIP et IIS Quest-ce que les fichiers dist ? FAQ webmestre Rapidit du site public Contribuer au dveloppement de SPIP catal Espaol italiano

Scurit par dfaut de SPIP


Il existe deux dossiers sensibles dans SPIP, ce sont CACHE et ecrire/data. Le premier comporte tous les fichiers quutilise votre cache pour acclrer laffichage des pages, il est donc moyennement sensible, mais le deuxime stocke les journaux dactivit de spip (les spip.log) et vous permet notamment de crer dump.xml, le fichier de sauvegarde de la base de donnes. Or le fichier dump.xml contient des donnes trs sensibles : en particulier on peut y voir tous les articles, mme sils ne sont pas rendus publics sur le site, sans compter quil liste galement les identifiants et les mots de passe [1] des rdacteurs et administrateurs du site. La scurit de tous ces fichiers est assure traditionnellement par des fichiers de configuration daccs nomms .htaccess. SPIP gnre automatiquement ces fichiers pour empcher laccs aux donnes sensibles stockes sur le serveur : vous pouvez vrifier que CACHE et ecrire/data contiennent chacun un fichier . htaccess. Hlas, ces fichiers fonctionnent sous Apache (le serveur Web libre

http://www.spip.net/fr_article2628.html (1 of 3)2006.04.17 2.23.9

[SPIP] Scurit : SPIP et IIS

faisant tourner la majorit des sites Web de lInternet) mais pas sous IIS (Internet Information Services, le serveur Web de Microsoft).

Protger ses donnes sous IIS : une tape de plus


Si votre site SPIP est install sur un IIS, nimporte qui peut donc voir les dossiers censment scuriss via .htaccess : il faut donc les protger. Pour protger un dossier sur votre site : allez dans le panneau dadministration de votre serveur Web, faites un clic droit sur le dossier concern, cliquez sur proprits , et dans longlet Rpertoire dcochez la case Lire .

Le panneau de proprits du dossier /ecrire/data/ Dcocher la case "Lire" suffit protger le dossier exactement comme le fait Apache avec les fichiers . htaccess

http://www.spip.net/fr_article2628.html (2 of 3)2006.04.17 2.23.9

[SPIP] Scurit : SPIP et IIS

Faites cette opration pour chacun des deux dossiers CACHE et ecrire/data. Si la manipulation est bonne, vous ne devriez plus pouvoir accder aux fichiers de ces dossiers travers le serveur web. Testez votre configuration en essayant dafficher http://www.votresite.com/ecrire/data/spip.log avec votre navigateur. Vous devriez obtenir un message du type Accs refus .
[1] Les mots de passe sont chiffrs par SPIP, mais gardez bien lesprit quaucune protection nest inviolable.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2628.html (3 of 3)2006.04.17 2.23.9

[SPIP] Qu'est-ce que les fichiers dist ?

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur

Quest-ce que les fichiers dist ?


franais 1 J Espaol ; 3 0 @ italiano A catal : 8 occitan Deutsch English Scurit : SPIP et IIS Quest-ce que les fichiers dist ? FAQ webmestre Rapidit du site public Contribuer au dveloppement de SPIP

Comme vous le savez srement dj (sinon, lisez le tutorial ou le manuel de rfrence), le systme de squelettes est bas sur des fichiers .html contenant la prsentation graphique du site. Par exemple, article.html prsente les articles, rubrique.html prsente les rubriques... Or, nous avons remarqu que frquemment, les utilisateurs qui manipulaient leur site public en modifiant ces fichiers .html fournis avec SPIP rencontraient des problmes lors des mises jour, sils navaient pas pris leurs prcautions en sauvegardant les fichiers modifis. En effet, en rinstallant tous les nouveaux fichiers livrs avec SPIP, ils crasaient purement et simplement leurs fichiers modifis (oubliant de faire une copie de sauvegarde de leurs modifications). Depuis [SPIP 1.8], les fichiers .html sont mieux rangs. Un rpertoire dist est destin aux fichiers fournis avec la distribution de spip. Ces fichiers contiennent les informations sur la mise en page par dfaut du site et ne devraient pas tre modifis.

http://www.spip.net/fr_article1591.html (1 of 3)2006.04.17 2.23.19

[SPIP] Qu'est-ce que les fichiers dist ?

Ainsi, un utilisateur qui veut crer sa propre mise en page, dveloppera ses fichiers article.html, rubrique.html, etc. la racine du site, ou mieux, dans le rpertoire squelettes ddi. A la prochaine rinstallation de SPIP, seuls les fichiers dans dist seront crass et le webmestre ne perdra pas ses personnalisations. Remarque : Les fichiers .php3, pendants des fichiers .html dans un squelette SPIP, doivent toujours rester la racine du site [1].

Historique : Depuis [SPIP 1.3] et jusqu [SPIP 1.7.2], les fichiers de squelettes fournis dans la distribution de SPIP taient nomms article-dist.html , rubrique-dist.html , et ainsi de suite. Pour personnaliser ces fichiers, il suffisait de les renommer dabord article.html , rubrique.html , etc. (sans le -dist).

Pour aller plus loin


Depuis [SPIP 1.8], SPIP recherche les fichiers .html des squelettes dabord la racine du site, puis sils ny existent pas, dans le rpertoire squelettes . En dernier recours, SPIP prend les fichiers par dfaut dans le rpertoire dist . Remarque : De plus, si on dfinit une variable de personnalisation $dossier_squelettes comme expliqu dans la documentation correspondante, SPIP cherchera les fichiers de squelette en priorit dans ce sous-dossier, avant tous les prcdents. Voici lordre (par priorit dcroissante) dans lequel sont utiliss les fichiers de squelettes selon leur nom : rubrique=10.html : si ce fichier existe, il ne sapplique qu la rubrique numro 10 ; si ce fichier nexiste pas, SPIP regarde si il ny a pas un fichier rubrique-10. html, si ce fichier existe, la rubrique 10 ainsi que ses sous-rubriques lutilisent, cest donc rcursif ; Note : pour que ces fichiers soient pris en compte il faut que le fichier par dfaut (rubrique.html) se trouve dans le mme
http://www.spip.net/fr_article1591.html (2 of 3)2006.04.17 2.23.19

[SPIP] Qu'est-ce que les fichiers dist ?

rpertoire. si ce fichier nexiste pas, SPIP regarde sil ny a pas un fichier rubrique.html, qui sapplique toutes les rubriques du site qui ne sont pas concernes par les fichiers indiqus ci-dessus ;

Historique : Jusqu [SPIP 1.7.2], si ce fichier nexiste pas, SPIP utilise alors le fichier rubrique-dist.html qui est le fichier fourni par dfaut. Si vous voulez modifier ce fichier, renommez-le en rubrique.html, de faon ne pas craser vos modifications la prochaine mise jour de SPIP.
[1] sauf, ventuellement, ceux quon nutiliserait que dans un appel <INCLURE(squel. php3)>. Dans ce cas, le fichier squel.php3 peut aussi tre dans le dossier squelettes.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1591.html (3 of 3)2006.04.17 2.23.19

[SPIP] FAQ webmestre

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur

FAQ webmestre
franais catal Deutsch Trke English Espaol italiano Scurit : SPIP et IIS Quest-ce que les fichiers dist ? FAQ webmestre Rapidit du site public Contribuer au dveloppement de SPIP

Les bases
1. Comment fais-je pour modifier la mise en page du site public ? La gestion de la mise en page sappuie sur des fichiers lextension .html appels squelettes de mise en page. Leur rle correspond grosso modo ce que dautres logiciels nomment modles gabarits , ou en anglais, templates . Chaque fichier est associ un type de page diffrent : ainsi un squelette pour le sommaire, un pour laffichage des articles, un pour laffichage des rubriques, etc. Un squelette contient du HTML standard dfinissant lhabillage de la page, dans lequel on insre des codes spcifiques SPIP afin de dfinir quelles informations vont venir habiter cet habillage. Le langage des squelettes de SPIP est trs souple et permet de raliser des mises en page trs varies : un simple coup doeil uZine, Vacarme, Hacktivist News Service ainsi que les sites enregistrs par leurs crateurs sur cette page saura vous

http://www.spip.net/fr_article1054.html (1 of 3)2006.04.17 2.23.28

[SPIP] FAQ webmestre

en convaincre. Il est donc dommage de garder la mise en page dorigine, mme si celle-ci est trs utile pour se mettre le pied ltrier. 2. Est-il possible dcrire ces squelettes soi-mme ? Oui, cest un des intrts majeurs de SPIP. Pour cela allez voir : le tutorial, pour comprendre les bases de la programmation des squelettes. le manuel de rfrence, qui liste toutes les possibilits de programmation. 3. Je ne sais pas / ne veux pas apprendre programmer. Peut-on utiliser des mises en pages dj existantes ? Oui. En dehors de la mise en page par dfaut, dautres jeux de squelettes sont disponibles sur le site des contributions SPIP, dans la rubrique Squelettes . Il suffit en gnral de rcuprer larchive voulue (le fichier au format .zip ou .tar. gz, au choix), de la dcompresser chez vous, et de transfrer son contenu par FTP la racine de votre site SPIP. Vous pouvez faire une sauvegarde de vos fichiers . html actuels, au cas o vous voulez revenir en arrire. 4. Il ny a pas beaucoup de jeux de squelettes disponibles. Pourquoi ? Ces jeux de squelettes sont aliments par les webmestres SPIP qui nous fournissent leurs crations. Nous comptons donc sur les webmestres pour complter cette base de squelettes afin dencourager lentraide et la richesse des sites SPIP. (cf. section Partager plus bas dans cette FAQ)

Crer ses squelettes


1. Peut-on utiliser un diteur textuel pour crer et modifier ses squelettes ? Oui, comme on le ferait pour du HTML classique. 2. Peut-on utiliser un diteur graphique (WYSIWYG) pour crer et modifier ses squelettes ? Oui, comme on le ferait pour du HTML classique. Voir cependant la question suivante. 3. Jessaie dutiliser un diteur graphique pour crer mes pages, mais
http://www.spip.net/fr_article1054.html (2 of 3)2006.04.17 2.23.28

[SPIP] FAQ webmestre

il modifie les tags SPIP. Peut-on rsoudre ce problme ? Certains diteurs graphiques corrigent automatiquement les tags quils ne comprennent pas. La plupart ont toutefois une option permettant de dsactiver cette fonctionnalit. Nous avons consacr un article spcifique DreamWeaver, mais la dmarche est quivalente pour les autres diteurs (GoLive...).

Partager vos crations


1. Jai crit des squelettes pour mon site. Comment fais-je pour quils soient disponibles tous ? Nhsitez pas vous inscrire sur le site SPIP-Contrib mentionn plus haut, afin de proposer vos squelettes au tlchargement et que dautres puissent leur tour sen inspirer pour crer leur propre site.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1054.html (3 of 3)2006.04.17 2.23.28

[SPIP] Rapidit du site public

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur

Rapidit du site public


franais catal Espaol italiano

Contrairement la plupart des systmes de publication gratuits, SPIP intgre un systme de cache permettant dacclrer laffichage du site public. Quelques pistes pour comprendre ce qui influe sur la rapidit de votre site...
Scurit : SPIP et IIS Quest-ce que les fichiers dist ? FAQ webmestre Rapidit du site public Contribuer au dveloppement de SPIP

Optimiser un site
Si vous vous inquitez pour la rapidit de votre site, il est bon de vous intresser aux pistes suivantes : Votre hbergement Web offre-t-il des performances de bonne qualit ? Evidemment, cest subjectif. Lexpression mauvaise qualit recouvre coup sr la plupart des hbergeurs gratuits (notamment Free). Bonne qualit inclut forcment une machine ddie (i.e. qui ne sert qu votre site) de fabrication rcente, mais aussi des hbergeurs commerciaux pas trop au rabais. Entre les deux, a devient trs subjectif, en fonction de vos exigences, de la taille de votre site.... Si la qualit de votre hbergement laisse dsirer, vous aurez intrt ne pas

http://www.spip.net/fr_article997.html (1 of 3)2006.04.17 2.23.39

[SPIP] Rapidit du site public

crer de squelettes trop complexes, i.e. qui demandent SPIP dafficher trop dinformations diffrentes. Cela vaut pour tout type dinformations : tout ce qui, dans les squelettes, est susceptible dtre transform par SPIP en donnes affichables. Notez, en particulier, que les squelettes fournis par dfaut dmontrent au maximum les possibilits de SPIP, et par consquent gnrent des pages assez lourdes. Noubliez pas non plus de rgler les dlais dexpiration des diffrents types de pages. Ainsi, si votre site contient un grand nombre darticles en archives, vous avez peut-tre intrt augmenter la dure dexpiration des articles, sinon les articles consults peu souvent ne bnficieraient pas du systme de cache.

Linfluence du cache
La prsence du cache change quelque peu la donne en matire de rapidit. Ce nest pas tant le nombre de visites de votre site qui sera le point critique, que la capacit de votre serveur recalculer les pages dans le temps imparti au script PHP (en effet, sur la plupart des serveurs, une limite de dure dexcution par appel de script est fixe afin dviter les abus et les erreurs de programmation). Par contre, si la page demande est dans le cache et na pas expir, la rponse du serveur devrait tre quasi-instantane (dans le cas contraire, votre serveur est vraiment trs charg). La qualit des performances devient ainsi objectivement mesurable si, lors du recalcul dune page du site, on obtient un timeout , cest--dire que le serveur a dpass le temps maximal dexcution dun script PHP. Alors il faut soit changer dhbergement, soit se rsoudre afficher des pages plus simples : pour cela, modifier les squelettes pour afficher moins dinformations sur une mme page.

Sur une machine ddie


Si vous utilisez votre propre machine, il faut vous assurer quelle pourra tenir la charge. Nimporte quelle machine pas trop vieille (moins de trois ans environ) devrait en tre capable. Par contre, lutilisation de SPIP, par rapport dautres systmes de publication, permet de mutualiser les ressources techniques entre plusieurs sites. En effet, tant que le cache est utilis, la machine est peu sollicite, donc plusieurs sites peuvent cohabiter sans problme (sauf sil y a vraiment un trs grand nombre de visites). Le problme est donc surtout de prvenir quil y ait trop de passagers bord, cest-

http://www.spip.net/fr_article997.html (2 of 3)2006.04.17 2.23.39

[SPIP] Rapidit du site public

-dire quun trop grand nombre de services hbergs (sites Web, botes email...) mette en pril la qualit du service.

tlcharger le squelette de cette page

http://www.spip.net/fr_article997.html (3 of 3)2006.04.17 2.23.39

[SPIP] Contribuer au dveloppement de SPIP

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur

Contribuer au dveloppement de SPIP


franais catal Espaol italiano

Scurit : SPIP et IIS Quest-ce que les fichiers dist ? FAQ webmestre Rapidit du site public Contribuer au dveloppement de SPIP

Si vous voulez contribuer la programmation de SPIP, lide la plus importante retenir est la suivante : vous arrivez sur un projet qui est dj fonctionnel. Ce projet est muni dun ensemble de rgles qui, toutes arbitraires quelles peuvent paratre, assurent sa cohrence. Ces rgles nont pas besoin dtre nonces explicitement pour exister : certaines sont clairement visibles aprs un examen plus ou moins dtaill du code, et les rgles tacites doivent tre respectes au mme titre que les autres. Il est formellement conseill de bien suivre ces rgles. Ce respect na pas tre li ou non vos gots personnels : il permet de garder sa cohrence et son unit au projet, et de le conserver aussi lisible quil ltait auparavant. Noubliez pas que dautres personnes que vous sont amenes lire, comprendre, voire modifier votre code. Par exemple, il est vident que les fonctions SPIP sont crites sous la forme ma_fonction(). Dans le cadre de ce projet, il serait donc parfaitement dplac dajouter des fonctions en les crivant MaFonction() - mme si dans labsolu cette forme nest pas plus critiquable que lautre.

http://www.spip.net/fr_article825.html (1 of 5)2006.04.17 2.23.56

[SPIP] Contribuer au dveloppement de SPIP

Tout ceci nempche pas videmment de critiquer une rgle et den proposer une meilleure, le cas chant. Nhsitez pas le faire ; mais il doit y avoir de vritables raisons cela. Enfin, tout rgle souffre des exceptions. Mais celles-ci doivent avoir une vritable justification, non uniquement la paresse du programmeur ; elles doivent tre le plus rares possible. Notamment, garder lesprit que le provisoire a souvent tendance devenir dfinitif quand personne na envie de le corriger ; or il est logique et juste que tout programmeur soit responsable de la finition de son propre code, mais non de celui des autres.

Rgles de prsentation et dcriture


Les rgles qui suivent sont communes un nombre plus ou moins grand de langages de programmation : au minimum tous les langages prsentant une syntaxe similaire PHP (cest--dire, outre PHP lui-mme, C, C++, Java....). Ces rgles sont communment acceptes, de faon aussi naturelle que les rgles de prsentation et de typographie dun texte en langage naturel ; dailleurs elles sont frquemment similaires. Prsentation Le code doit tre espac et indent de manire mettre en valeur sa structure et la sparation entre les diffrents blocs logiques (fonctions notamment). Lespacement et lindentation doivent tre suffisants pour rendre la structure comprhensible ds le premier regard ; ils ne doivent pas tre excessifs. On doit y apporter le mme soin qu la division en paragraphes dun texte en langage naturel. Lindentation sera faite de prfrence avec le caractre de tabulation. Cela permet de choisir librement la profondeur dindentation dans les options de son diteur de texte, tout en nimposant pas ce choix aux autres dveloppeurs. Tout bloc contenu lintrieur dune paire daccolades sera indent dune et une seule tabulation. De mme, rcursivement, pour les sous-blocs : ajout dune et une seule tabulation supplmentaire chaque entre dans un niveau de profondeur supplmentaire. Cette rgle vaut bien aussi pour la dclaration de fonctions. Le code qui ne fait pas partie dune fonction ne doit pas tre indent. Lutilisation des transitions PHP-HTML (<?php et ?>) doit tre minimise.

http://www.spip.net/fr_article825.html (2 of 5)2006.04.17 2.23.56

[SPIP] Contribuer au dveloppement de SPIP

Lviter lors quil sagit dafficher uniquement de petits morceaux de HTML. Ne pas oublier quun petit morceau de code PHP insr au milieu dun ocan de HTML est invisible sans un examen trs attentionn. Typographie Lors de lutilisation de parenthses ou de crochets, il ne faut pas laisser despace aprs la parenthse ouvrante ni avant la parenthse fermante. Lors de lutilisation doprateurs binaires (+, =, *, AND, ...), il faut laisser un espace de part et dautre de loprateur. Exception manifeste dans cette phrase, o les oprateurs sont mentionns et non utiliss en tant que tels. Les oprateurs unaires (!, ...) doivent tre colls au paramtre auquel ils sappliquent. Par convention, lors dun appel de fonction, il ny a pas despace devant la parenthse ouvrante : f($x) et non f ($x) . A contrario, et pour bien distinguer, on laisse un espace devant la parenthse quand il sagit dune structure de contrle intgre au langage : if (!$x) et non if(!$x) . Les virgules et points-virgules sont suivis mais non prcds dun espace.

Rgles de programmation
Rflchir Avant de programmer une nouvelle fonctionnalit, rflchir... mthodes et algorithmes utiliss pour limplmentation : lgret, performance, robustesse (ne pas hsiter faire quelques calculs grossiers pour valider les choix) ; adquation au projet : portabilit, scurit, souplesse ; implications sur les autres fonctionnalits : modifications et ajouts faire sur les fonctionnalits existantes ; place naturelle pour cette fonctionnalit dans le projet : en matire dinterface, de fichiers... Ne pas ngliger la factorisation ou mise en commun du code (par des fonctions, notamment dans des fichiers inclure). Eviter par contre le plus possible les fichiers inclus contenant du code hors fonctions (sauf lorsque cest naturel et voulu).
http://www.spip.net/fr_article825.html (3 of 5)2006.04.17 2.23.56

[SPIP] Contribuer au dveloppement de SPIP

Nommer Variables et fonctions : Quel que soit le projet, le nommage doit rester homogne pour que le code soit facile lire. Ainsi, sous SPIP, les noms de variables et de fonctions seront en minuscules ; les noms composs, de la forme variable_composee. Dune manire gnrale, les noms seront ni trop brefs, ni trop longs ; ile seront suffisamment explicites. Cette rgle est particulirement importante pour les variables globales, qui peuvent tre partages entre plusieurs fichiers et de nombreuses fonctions. Pour les variables locales (i.e. une fonction), la rgle est plus souple. Notamment, on peut employer des variables dune lettre, par exemple pour obtenir des expressions plus compactes. Remarquer que dans tous les langages de programmation, un certain nombre de lettres sont par tradition associes certains usages (exemples : $i, $j pour des compteurs de boucles, $n pour un dnombrement, $t pour un instant ou une dure en secondes...). Ne pas dtourner ces conventions permet vos lecteurs dtre plus vite dans le bain. Fichiers : Pour des raisons historiques, les fichiers inclure dans lespace public seront appels inc-fichier.php3. Dans lespace priv, ce sera ecrire/inc_fichier.php3 (noter le tiret bas la place du tiret normal). Les fichiers de lespace public appels par redirection HTTP depuis lespace priv sont appels spip_fichier. php3. Tous les autres fichiers ont un nom qui ne commence ni par "inc", ni par "spip". Tester Une fois une modification importante apporte, il est bon de la tester soi-mme, sans attendre que quelquun dautre le fasse sa place. Dans le cadre de SPIP, cela veut dire vrifier que le programme marche de manire correcte sur un certain nombre dhbergeurs (par exemple : Altern, Free...) et de configurations (par exemple : diffrentes versions de PHP, de MySQL, restriction plus ou moins grande des droits daccs aux rpertoires...) ; mais aussi quun certain nombre de situations parmi les plus courantes (dans le cas dune interface graphique notamment) sont traites correctement.

Partager vos modifications


Une fois que vous tes satisfait de votre modification du code, il est grand temps
http://www.spip.net/fr_article825.html (4 of 5)2006.04.17 2.23.56

[SPIP] Contribuer au dveloppement de SPIP

den parler avec les autres dveloppeurs de SPIP, et de voir sil mrite dtre intgr la distribution officielle de SPIP... Rendez-vous sur la liste de diffusion spip-dev. A bientt !

tlcharger le squelette de cette page

http://www.spip.net/fr_article825.html (5 of 5)2006.04.17 2.23.56

[SPIP] Mise en page : manuel de rfrence

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Mise en page : manuel de rfrence


Comment crer sa propre mise en page pour un site gr sous SPIP.

http://www.spip.net/fr_rubrique143.html (1 of 2)2006.04.17 19.09.23

[SPIP] Mise en page : manuel de rfrence

Rechercher
franais tout le site

Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique143.html (2 of 2)2006.04.17 19.09.23

[SPIP] Principe gnral

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Principe gnral
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) catal Deutsch English Espaol italiano

Tout le contenu dun site gr sous SPIP est install dans une base de donnes mySQL. Pour prsenter ces informations aux visiteurs du site, il faut donc raliser lopration qui consiste lire les informations, les organiser et les mettre en page, afin dafficher une page HTML dans le navigateur Web. Cette opration est traditionnellement assez pnible : il faut connatre la programmation PHP et MySQL, et crire des routines relativement complexes ; lintgration de telles routines dans une mise en page HTML labore est assez pnible ; il faut prendre en compte des problmes de performances : le recours systmatique du code mySQL et PHP est gourmand en ressources, ralentit la visite et, dans des cas extrmes, provoque des plantages du serveur Web. SPIP propose une solution complte pour contourner ces difficults : la mise en page du site est effectue au moyen de pages HTML nommes squelettes, contenant des instructions simplifies permettant dindiquer o et comment se placent les informations tires de la base de donnes dans la page ; un systme de cache permet de stocker chaque page et ainsi dviter de

http://www.spip.net/fr_article877.html (1 of 8)2006.04.17 19.09.48

[SPIP] Principe gnral

La boucle DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

provoquer des appels la base de donnes chaque visite. Non seulement la charge sur le serveur est rduite, la vitesse trs largement acclre, de plus un site sous SPIP reste consultable mme lorsque la base mySQL est plante.

Pour chaque type de document, un couple de fichiers


Lintrt (et la limite) dun systme de publication automatis, cest que lon ne va pas redfinir une interface diffrente en HTML pour chaque page isole. Par exemple, toutes les articles bnficieront de la mme interface, simplement le systme placera des informations diffrentes dans ce graphisme (on verra plus loin que SPIP autorise cependant une certaine souplesse). Lavantage de cette manire de procder est vident : on dfinit un format-type (squelette) pour, par exemple, tous les articles, et le systme fabriquera chaque page individuelle en plaant automatiquement le titre, le texte, les liens de navigation... de chaque article. Pour chaque type de document, SPIP vous demande deux fichiers : un fichier . php3 et un fichier .html. Lors de linstallation de SPIP, vous trouverez ainsi les couples : article.php3 / article.html , rubrique.php3 / rubrique.html , etc. Vous pouvez naturellement modifier ces couples, et en crer dautres. Depuis [SPIP 1.8.2], nanmoins, il existe un fichier page.php3 utilisable pour tous les types de documents que lon pourra crer.

Le principe de fonctionnement du cache


Lappel dune page spcifique se fait par lintermdiaire du fichier .php3. Par exemple, pour appeler larticle n5, lURL correspondante est : http://monsite.net/article.php3?id_article=5

http://www.spip.net/fr_article877.html (2 of 8)2006.04.17 19.09.48

[SPIP] Principe gnral

1. Le fichier appel est donc article.php3, avec en paramtre id_article=5. 2. Le fichier article.php3 est un fichier PHP ; sa premire tche consiste vrifier dans le dossier /CACHE sur votre serveur, sil existe dj un fichier correspondant cet article. 2bis. Si un tel fichier existe dans /CACHE, article.php3 vrifie sa date de cration. Si ce fichier est suffisamment rcent, il le retourne directement lutilisateur. Le processus de consultation est alors termin. 3. Sil nexiste pas un tel fichier dans /CACHE (premire visite sur cet article, par exemple), ou si son ge est trop ancien, SPIP dmarre le calcul de cette page. 4. Cest alors la page article.html qui est charge et analyse. Cette page contient la mise en page correspondant ce type de document. Il sagit de HTML complt dindications permettant de placer les lments tirs de la base de donnes. En fonction des lments requis par article.html, SPIP va chercher les informations ncessaires tires de la base de donnes mySQL et les insrer aux endroits prvus. 5. Un fichier est ainsi fabriqu par article.php3, partir de la description contenue dans article.html, avec les lments tirs de la base de donnes. Ce fichier est alors sauvegard dans le dossier /CACHE et renvoy au visiteur.

http://www.spip.net/fr_article877.html (3 of 8)2006.04.17 19.09.48

[SPIP] Principe gnral

Lors dune visite suivante, si le dlai entre les deux visites est suffisamment court, cest donc ce nouveau fichier stock dans /CACHE qui est retourn, sans avoir faire un nouveau calcul partir de la base de donnes. En cas de plantage de la base de donnes, cest forcment le fichier en cache qui est retourn, mme sil est trop g . Remarque. On voit ici que chaque page du site est mise en cache individuellement, et chaque recalcul est provoqu par les visites du site. Il ny a pas, en particulier, un recalcul de toutes les pages du site dun seul coup chance rgulire (ce genre de grosse manoeuvre ayant le bon got de surcharger le serveur et de le faire parfois planter).

Le fichier .PHP3
Le fichier .php3 est trs simple. Par exemple, article.php3 contient uniquement :
<?php $fond = "article"; $delais = 24 * 3600; include ("inc-public.php3"); ?>

Son seul but est donc de fixer deux variables ($fond et $delais) et dappeler le fichier qui dclenche le fonctionnement de SPIP (inc-public.php3). La variable $fond est le nom du fichier qui contient la description de la mise en page (le squelette). Ici, puisque $fond="article", le fichier de description sera contenu dans article.html [1]. Notez bien que, dans la variable $fond, on nindique pas la terminaison .html . Remarque. Lintrt de choisir soi-mme le nom du fichier de squelette (que lon aurait pu dduire automatiquement du nom du fichier .php3) est, si ncessaire, dutiliser un autre nom. Cela pour ne pas craser, ventuellement, des fichiers HTML qui subsisteraient dune ancienne version du site que lon ne souhaite pas supprimer. Sil existe, dune ancienne version du site, un fichier article.html que lon ne souhaite pas effacer, on utilisera par exemple un fichier squelette pour SPIP intitul article-nouveau.html, et on fixera dans article.php3 : $fond="article-nouveau".

http://www.spip.net/fr_article877.html (4 of 8)2006.04.17 19.09.48

[SPIP] Principe gnral

La variable $delais est lge maximum pour lutilisation du fichier stock en / CACHE. Ce dlai est fix en secondes. Un dlai de 3600 correspond donc une heure ; un dlai de 24*3600 est donc de 24 heures. On jouera sur cette valeur en fonction de la frquence des ajouts de contenu du site (nouveaux articles, nouvelles brves...). Un site actualis plusieurs fois par jour pourra adopter un dlai dune heure ; un site publiant quelques articles par semaine pourra adopter un dlai nettement plus long. De mme, le contenu des pages est important : si vous insrez la syndication du contenu de sites frquemment mis jour, vous souhaiterez sans doute adapter votre propre dlais celui des sites rfrencs. Remarque. Certains webmestre succombent la tentation de fixer des dlais drisoires (quelques secondes), pour que le site corresponde trs exactement, chaque instant, aux dernires modifications de la base de donnes. Dans ce cas, vous perdez tous les avantages du systme de cache : les visites sont nettement ralenties et, lextrme, sur des sites trs frquents, vous pouvez provoquer des plantages de la base de donnes (ou vous faire virer par votre hbergeur parce que vous monopolisez la puissance de sa machine...). Remarque. Une autre raison qui semble pousser les webmestres fixer des dlais trs courts est la prsence des forums sur leur site. En effet, pour que les contributions saffichent ds quelles sont postes, ils pensent ncessaire de rduire le dlais de recalcul. Cest inutile : SPIP gre cet aspect automatiquement ; lorsquune contribution un forum est poste, la page correspondante est efface du cache, et recalcule immdiatement, quel que soit le dlai fix pour cette page. Depuis [SPIP 1.8.2], on peut utiliser un mme fichier .php3 pour tous les squelettes. Il sagit du fichier page.php3 qui est la racine du site. Il est un peu plus complexe que celui dcrit ci-dessus, mais il joue le mme rle. Lorsquon lutilise, les variables $fond et $fond peuvent tre passes en paramtres, par exemple :
http://monsite.org/page.php3? fond=monsquelette&id_rubrique=12

Le fichier .HTML
Dans SPIP, nous appelons les fichiers .html les squelettes. Ce sont eux qui dcrivent linterface graphique de vos pages.

http://www.spip.net/fr_article877.html (5 of 8)2006.04.17 19.09.48

[SPIP] Principe gnral

Ces fichiers sont rdigs directement en HTML, auquel on ajoute des instructions permettant dindiquer SPIP o il devra placer les lments tirs de la base de donnes (du genre : placer le titre ici , indiquer cet endroit la liste des articles portant sur le mme thme ...). Les instructions de placement des lments sont rdiges dans un langage spcifique, qui fait lobjet du prsent manuel dutilisation. Ce langage constitue par ailleurs la seule difficult de SPIP. Encore un langage ? H oui, il va vous falloir apprendre un nouveau langage. Il nest cependant pas trs compliqu, et il permet de crer des interfaces complexes trs rapidement. Par rapport au couple PHP/mySQL, vous verrez quil vous fait gagner un temps fou (surtout : il est beaucoup plus simple). Cest un markup language, cest--dire un langage utilisant des balises similaires celles du HTML. Remarque. De la mme faon que lon apprend le HTML en sinspirant du code source des sites que lon visite, vous pouvez vous inspirer des squelettes utiliss sur dautres sites fonctionnant sous SPIP. Il suffit daller chercher le fichier .html correspondant. Par exemple, vous pouvez voir le squelette des articles duZine (visualisez le code source pour obtenir le texte du squelette).

Une interface diffrente dans le mme site


Tout dabord, notez quil est possible de crer des couples de fichiers pour le mme lment logique (articles, rubriques, ...). Par exemple, vous pouvez crer des fichiers pour visiter un mme article avec des interfaces diffrentes : article.php3/html pour le format normal, imprimer.php3/html pour le mme article dans un format adapt limpression, article-texte.php3/ html pour larticle dans un format texte (adapt aux mal-voyants par exemple), article-lourd.php/html avec une interface lourdingue adapte au hautdbit, etc. Une interface diffrente selon les rubriques. Vous pouvez, pour un mme type de document, crer des squelettes diffrents selon les rubriques du site. Il sagit de crer simplement de nouveaux fichiers .html en fonction des rubriques (inutile, ici, de modifier le fichier .php3, on se contente de jouer sur les noms des fichiers squelettes). Il suffit de complter le nom du fichier squelette de -numro (un tiret suivi dun numro de rubrique). Par exemple, si vous crez un fichier : article-60. html, tous articles contenus dans la rubrique n60 utiliseront ce squelette (et non
http://www.spip.net/fr_article877.html (6 of 8)2006.04.17 19.09.48

[SPIP] Principe gnral

plus le squelette par dfaut article.html). Notez bien : le numro indiqu est celui dune rubrique. Si cette rubrique 60 contient des sous-rubriques, les articles contenus dans ces sous-rubriques utiliseront galement le nouveau squelette article-60.html. Remarque. Dans notre exemple, on aura certainement galement intrt crer un rubrique-60.html, voire un breve-60.html, etc. pour accompagner le changement de mise en page de cette rubrique. Une interface pour une seule rubrique. (SPIP 1.3) On peut crer une interface qui sapplique une rubrique, mais pas ses sous-rubriques. Pour cela, il faut crer un fichier : article=60.html, qui sappliquera uniquement aux articles de la rubrique 60, mais pas ses sous-rubriques.

Que peut-on mettre dans un fichier .HTML


Les fichiers .html sont essentiellement des fichiers texte , complts dinstructions de placement des lments de la base de donnes. SPIP analyse uniquement les instructions de placement des lments de la base de donnes (codes selon le langage spcifique de SPIP) ; il se contrefiche de ce qui est plac dans ce fichier et qui ne correspond pas ces instructions. Leur contenu essentiel est donc du HTML. Vous dterminez la mise en page, la version du HTML dsir, etc. Vous pouvez videmment y inclure des feuilles de style (CSS), mais galement du JavaScript, du Flash... en gros : tout ce quon place habituellement dans une page Web. Mais vous pouvez galement (tout cela nest jamais que du texte) crer du XML (par exemple, backend.php3/html gnre du XML). Plus original : toutes les pages retournes au visiteur sont tires du /CACHE par une page crite en PHP. Vous pouvez donc inclure dans vos squelette des instructions en PHP, elles seront excutes lors de la visite. Utilise de manire assez fine, cette possibilit permet une grande souplesse SPIP, que vous pouvez ainsi complter (par exemple ajouter un compteur, etc.), ou mme faire voluer certains lments de mise en page en fonction des informations tires de la base de donnes.
[1] Si article.html nexiste pas, le fichier dist est pris la place. Lire ce propos Quest-ce que les fichiers dist ? .

http://www.spip.net/fr_article877.html (7 of 8)2006.04.17 19.09.48

[SPIP] Des boucles et des balises

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Des boucles et des balises


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

Tout ce qui suit concerne dsormais le langage de description de la mise en page des squelettes dans SPIP ; si vous avez bien compris lexplication prcdente, vous savez que nous travaillons donc dans les fichiers .html . La prsente documentation est volontairement technique (il sagit ici de rfrences techniques) ; vous pouvez prfrer commencer par notre guide Pas pas, plus didactique, et revenir ensuite ici pour une documentation plus prcise.

Des boucles
La notion de base du langage de SPIP est la boucle. La logique de la boucle Une base de donnes, classiquement, cest une liste dlments : ici, une liste des articles, une liste des rubriques, une liste des auteurs, etc. Pour fabriquer le site, on va donc extraire de cette liste certains de ses lments :

http://www.spip.net/fr_article894.html (1 of 4)2006.04.17 19.10.0

[SPIP] Des boucles et des balises

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

la base, on veut extraire un seul lment dune liste ; par exemple, afficher larticle dsir ; mais il est frquent dextraire plusieurs lments dune liste ; par exemple, dans la page dune rubrique, on veut afficher tous les articles contenus dans cette rubrique, ainsi que toutes les sous-rubriques contenues dans cette rubrique ; plus subtil : il arrive frquemment quil ny ait pas dlments satisfaisants tel ou tel endroit ; SPIP doit alors pouvoir grer lventualit de labsence de ces lments ; par exemple, le squelette de laffichage des rubriques demande laffichage de toutes les sous-rubriques contenues dans une rubrique ; que faire, alors, sil ny a pas sous-rubriques dans cette rubrique spcifique ? Ces trois situations sont traites par la notion unique de boucle, qui permet la fois de grer laffichage dun seul lment, de plusieurs lments successifs, ou labsence dlments. Le systme de boucle permet, dans un code unique : dindiquer quel endroit du code HTML on a besoin de quel type dlment ( tel endroit on veut rcuprer la liste des articles, tel endroit on veut inclure la liste des sous-rubriques...) ; de prvoir laffichage dun lment unique ; dindiquer comment est affiche une liste de plusieurs lments ; de dterminer ce quon affiche lorsquil ny a aucun lment correspondant. Analogie avec la programmation en PHP/mySQL Ceux qui ont dj programm des requtes mySQL en PHP savent que le traitement se droule en deux temps : la construction de la syntaxe de la requte (qui consiste dire je veux rcuprer la liste des articles contenus dans telle rubrique... ) ; lanalyse et laffichage des rsultats au travers dune boucle. Ce sont ces deux vnements qui sont grs, dans SPIP, au travers des boucles.

Les balises SPIP


Grce aux boucles, on a donc rcupr des lments uniques ou des listes dlments : par exemple une liste darticles ou une liste de rubriques... Cependant, chaque lment de telles listes est compos de plusieurs lments prcis : par exemple un article se compose dun titre, dun surtitre, dun sous-titre, dun texte dintroduction (chapeau), dun texte principal, dun post-scriptum, etc. Il existe ainsi des balises spcifiques SPIP, permettant dindiquer prcisment quel endroit on affiche des lments : placer le titre ici , placer le texte ici ...

http://www.spip.net/fr_article894.html (2 of 4)2006.04.17 19.10.0

[SPIP] Des boucles et des balises

Les balises lintrieur des boucles


Voici, au travers dun cas classique, le principe de fonctionnement gnral dune boucle accompagne de ses balises (attention, a nest pas du langage SPIP, cest une description logique) : BOUCLE : afficher la liste des articles de cette rubrique
q q q

afficher ici le titre de l'article afficher le sous-titre afficher le texte

Fin de la BOUCLE Cette boucle, analyse par SPIP, peut donner trois rsultats diffrents. Il ny a aucun article dans cette rubrique. Dans ce cas, bien videmment, aucun des lments afficher ici... (titre, soustitre...) nest utilis. En revanche, si on la prvu, on peut afficher un message du genre Il ny a pas darticle . Il y a un seul article dans cette rubrique. Dans ce cas, trs simplement, la page HTML est construite sur le modle de la boucle :
q q q

Titre de l'article Sous-titre Texte de l'article

Il y a plusieurs articles dans cette rubrique. La description de la mise en page ( placer ici... ) va alors tre calcule successivement pour chacun des articles. Ce qui donne simplement :
q q q

Titre de l'article 1 Sous-titre de l'article 1 Texte de l'article 1 Titre de l'article 2 Sous-titre de l'article 2

q q

http://www.spip.net/fr_article894.html (3 of 4)2006.04.17 19.10.0

[SPIP] Des boucles et des balises


q

Texte de l'article 2 ...

q q q

Titre du dernier article Sous-titre du dernier article Texte du dernier article

La suite de ce guide de rfrence se construira donc de la manire suivante : syntaxe gnrale des boucles ; syntaxe gnrale des balises de SPIP ; et, ensuite, une page spcifique chaque type de boucles, indiquant quelles balises on peut y utiliser.

tlcharger le squelette de cette page

http://www.spip.net/fr_article894.html (4 of 4)2006.04.17 19.10.0

[SPIP] La syntaxe des boucles

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La syntaxe des boucles


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

Syntaxe de base
La syntaxe simplifie dune boucle est la suivante : <BOUCLEn(TYPE){critre1}{critre2}...{critrex}> * Code HTML + balises SPIP </BOUCLEn> On a vu, dans lexplication sur les boucles et les balises, que le Code HTML + balises SPIP se rptait autant de fois que la boucle obtenait dlments tirs de la base de donnes (cest--dire une fois, plusieurs fois, ou zro fois). La ligne importante, ici, est : <BOUCLEn(TYPE){critre1}{critre2}...{critrex}> Llment BOUCLE est lordre indiquant quil sagit dune boucle SPIP ; on ne peut donc pas le modifier ; dit autrement, toutes les boucles de SPIP commencent

http://www.spip.net/fr_article898.html (1 of 7)2006.04.17 19.10.12

[SPIP] La syntaxe des boucles

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

par linstruction BOUCLE. Llment n est, au choix, le nom de la boucle, ou le numro de la boucle. Cet lment est choisi par le webmestre, pour chaque boucle quil utilise. On verra plus loin quil est possible (cest mme tout lintrt de la manoeuvre) dutiliser plusieurs boucles dans un mme squelette : leur donner un nom est donc indispensable pour les identifier. Si vous dcidez de numroter vos boucles, la syntaxe devient par exemple (pour la boucle 5) : <BOUCLE5...> ... </BOUCLE5> Si vous dcidez de donner un nom vos boucles (cest gnralement plus pratique, votre code est plus lisible), il faut imprativement faire prcder ce nom par le symbole _ (que lon appelle habituellement underscore). Par exemple : <BOUCLE_sousrubriques...> ... </BOUCLE_sousrubriques> Llment (TYPE). Cet lment est primordial : il indique quel type dlments on veut rcuprer. La syntaxe est importante : le TYPE est indiqu entre parenthses (sans espaces), en majuscules, et ce TYPE doit correspondre obligatoirement lun des types prvus dans SPIP (quon trouvera dans la prsente documentation) : ARTICLES, RUBRIQUES, AUTEURS, BREVES, etc. Pour lexemple prcdent, on aurait donc : <BOUCLE_sousrubriques(RUBRIQUES)...> ... </BOUCLE_sousrubriques> Les critres {critre1}{critre2}... Ils indiquent la fois selon quels critres on veut slectionner les lments de la base de donnes (afficher les sousrubriques incluses dans cette rubrique, afficher les autres rubriques installes au mme niveau hirarchique que la prsente rubrique...), et la faon dont on va classer ou slectionner les lments (classer les articles selon leur date, selon leur titre... afficher uniquement les 3 premiers articles, afficher la moiti des articles...). Comme on peut combiner les critres, on peut trs aisment fabriquer des requtes trs puissantes, du genre afficher la liste des 5 articles les plus rcents crits par cet auteur .

http://www.spip.net/fr_article898.html (2 of 7)2006.04.17 19.10.12

[SPIP] La syntaxe des boucles

<BOUCLE_meme_auteur(ARTICLES){id_auteur}{par date}{inverse} {0,5}> ... </BOUCLE_meme_auteur> Les diffrents critres et leur syntaxe seront explicits dans la suite, pour chaque type de boucle (certains critres fonctionnent pour tous les types de boucles, certains sont spcifiques certaines boucles).

Syntaxe complte
Le syntaxe indique prcdemment peut tre complte par des lments conditionnels. En effet, la boucle prcdente affiche successivement les lments contenus lintrieur de la boucle. SPIP permet de plus dindiquer ce quon affiche avant et aprs la boucle au cas o elle contient un ou plusieurs rsultats, et ce quon affiche sil ny a aucun lment. Cela donne : <Bn> * Code HTML optionnel avant <BOUCLEn(TYPE){critre1}{critre2}...{critrex}> * Code HTML + balises SPIP </BOUCLEn> * Code HTML optionnel aprs </Bn> * Code HTML alternatif <//Bn> Le code optionnel avant (prcd de <Bn>) nest affich que si la boucle contient au moins une rponse. Il est affich avant les rsultats de la boucle. Le code optionnel aprs (termin par </Bn>) nest affich que si la boucle contient au moins une rponse. Il est affich aprs les rsultats de la boucle. Le code alternatif (termin par <//Bn>) est affich la place de la boucle (et donc galement la place des codes optionnels avant et aprs) si la boucle na trouv aucune rponse. Par exemple, le code : <B1> Cette rubrique contient les lments suivants:
http://www.spip.net/fr_article898.html (3 of 7)2006.04.17 19.10.12

[SPIP] La syntaxe des boucles

<ul> <BOUCLE1(ARTICLES){id_rubrique}> <li>#TITRE</li> </BOUCLE1> </ul> </B1> Cette rubrique ne contient pas d'article. <//B1> donne les rsultats suivants : sil y a un seul article : Cette rubrique contient les lments suivants: <ul> <li>Titre de l'article</li> </ul> sil y a plusieurs articles : Cette rubrique <ul> <li>Titre de <li>Titre de ... <li>Titre du </ul> contient les lments suivants: l'article 1</li> l'article 2</li> dernier article</li>

sil ny a aucun article : Cette rubrique ne contient pas d'article.

Historique : Jusqu [SPIP 1.7.2], La manire dont SPIP interprtait les boucles interdisait de mettre une boucle entre <Bn> et <BOUCLEn>. Par contre, il restait possible de mettre des boucles supplmentaires dans les parties optionnelles situes aprs la dfinition <BOUCLEn...>. Si vous deviez vraiment installer une boucle dans la partie optionnelle avant, il fallait passer par une commande <INCLURE()>.

Des critres denvironnement en cascade

http://www.spip.net/fr_article898.html (4 of 7)2006.04.17 19.10.12

[SPIP] La syntaxe des boucles

Chaque boucle effectue la slection des lments tirs de la base de donnes en fonction de critres. Ces critres correspondent lenvironnement dans lequel se trouve la boucle. Par exemple : si on prvoit une boucle du genre Afficher les articles inclus dans cette rubrique , il faut savoir de quelle rubrique il sagit. Cest ce que lon nomme lenvironnement. Lenvironnement fourni par lURL Lorsque lon visite une page dun site SPIP, son adresse contient gnralement une variable. Par exemple : rubrique.php3?id_rubrique=15 Cette variable dfinit donc un premier environnement : la boucle Afficher les articles inclus dans cette rubrique doit alors tre compris comme Afficher les articles de la rubrique 15 . Clairement, avec le mme code de squelette, si on appelle ladresse : rubrique.php3?id_rubrique=7 linterprtation de cette boucle deviendra Afficher les articles de la rubrique 7 . Lenvironnement fourni par les autres boucles lintrieur dune boucle, lenvironnement est modifi par chaque lment de la boucle. En plaant des boucles les unes lintrieur des autres, on hrite ainsi denvironnements imbriqus les uns dans les autres. Ainsi, dans la structure suivante : <BOUCLE_articles: afficher les articles de cette rubrique> Afficher le titre de l'article <BOUCLE_auteurs: afficher les auteurs de cet article> Nom de l'auteur </BOUCLE_auteurs> </BOUCLE_articles> On doit comprendre que : la premire boucle (BOUCLE_articles) affiche les articles en fonction de la rubrique, selon lenvironnement fournit par lURL (id_rubrique=15 par exemple) ; dans cette boucle, on obtient un ou plusieurs articles ; lintrieur de chacun de ces articles, on a un environnement diffrent
http://www.spip.net/fr_article898.html (5 of 7)2006.04.17 19.10.12

[SPIP] La syntaxe des boucles

(celui de larticle, cest--dire, par exemple, id_article=199) ; la seconde boucle (BOUCLE_auteurs), qui est installe lintrieur de la premire boucle, dpend pour chacune de ses excutions successives (elle est excute pour chaque article de la premire boucle) : afficher les auteurs de cet article devient successivement afficher les auteurs du premier article , du deuxime article et ainsi de suite. On voit que, par limbrication de boucles successives, on obtient diffrentes boucles, incluses les unes dans les autres, qui dpendent du rsultat des boucles dans lesquelles elles sont situes. Et finalement, la toute premire boucle (celle qui contient toutes les autres) dpend dun paramtre fix dans ladresse de la page.

Boucles incluses et boucles successives


Si lon peut inclure des boucles les unes lintrieur des autres (chaque boucle incluse dpendant alors du rsultat de la boucle lintrieur de laquelle elle est installe), on peut tout aussi bien installer des boucles les unes la suite des autres ; des boucles successives ninfluent pas les unes sur les autres. Par exemple, la page dune rubrique est typiquement constitue des lments suivants :

<BOUCLE_rubrique(RUBRIQUES){id_rubrique}> <ul>Titre de la rubrique <BOUCLE_articles(ARTICLES){id_rubrique}> <li> Titre de l'article</li> </BOUCLE_articles> <BOUCLE_sous_rubriques(RUBRIQUES){id_rubrique}> <li> Titre de la sous-rubrique </li> </BOUCLE_sous_rubriques> </ul> </BOUCLE_rubrique> <ul>Il n'y a pas de rubrique cette adresse.</ul> <//B_rubrique> La premire boucle (BOUCLE_rubrique) dpend de la variable passe dans lURL de la page (id_rubrique=15 par exemple). Les boucles suivantes (BOUCLE_articles et BOUCLE_sous_rubriques) sont installes lintrieur de la premire boucle. Ainsi, sil nexiste pas de rubrique 15, la premire boucle ne donne aucun rsultat (le code alternatif Il ny a pas de

http://www.spip.net/fr_article898.html (6 of 7)2006.04.17 19.10.12

[SPIP] La syntaxe des boucles

rubrique... est affich), et donc les deux boucles incluses sont totalement ignores. Mais sil existe une rubrique 15, ces deux sous-boucles seront analyses. On constate galement que ces deux boucles se prsentent lune aprs lautre. Ainsi, elles fonctionnent en fonction de la premire boucle, mais indpendamment lune de lautre. Sil ny a pas darticles dans la rubrique 15 (BOUCLE_articles), on affichera tout de mme la liste des sous-rubriques de la rubrique 15 (BOUCLE_sous_rubriques) ; et inversement.

Compteurs
Deux balises permettent de compter les rsultats dans les boucles. #TOTAL_BOUCLE retourne le nombre total de rsultats affichs par la boucle. On peut lutiliser dans la boucle, dans ses parties optionnelles avant et aprs ou mme dans la partie alternative aprs la boucle. Par exemple, pour afficher le nombre de documents associs un article :
<BOUCLE_art(ARTICLES){id_article}> <BOUCLE_doc(DOCUMENTS) {id_article} ></BOUCLE_doc> [il y a (#TOTAL_BOUCLE) document(s).] <//B_doc> </BOUCLE_art>

Attention : si la partie centrale de la boucle ne retourne rien (cest le cas avec la boucle <BOUCLE_doc> ci-dessus, qui ne sert qu compter le nombre de rsultats), le #TOTAL_BOUCLE ne pourra tre affich que dans la partie alternative aprs de la boucle (<// B_doc>). #COMPTEUR_BOUCLE retourne le numro de litration actuelle de la boucle. On peut par exemple lutiliser pour numroter des rsultats :
<BOUCLE_art(ARTICLES) {par date} {inverse} {0,10}> #COMPTEUR_BOUCLE - #TITRE<br> </BOUCLE_art>

tlcharger le squelette de cette page

http://www.spip.net/fr_article898.html (7 of 7)2006.04.17 19.10.12

[SPIP] La syntaxe des balises SPIP

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La syntaxe des balises SPIP


franais catal Deutsch occitan English Espaol italiano Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION)

Chaque type de boucle permet de slectionner des lments de la base de donnes de SPIP : des articles, des rubriques, des brves, etc. Chacun de ces lments est lui-mme constitu dlments prcis : un titre, une date, un texte, etc. A lintrieur dune boucle, il faut donc pouvoir indiquer quel endroit du code HTML on place tel ou tel de ces lments prcis. Pour cela, on va utiliser des balises SPIP.

Fonctionnement simplifi
Une balise SPIP se place lintrieur dune boucle (puisquil faut savoir si lon veut rcuprer un lment dun article, dune rubrique, etc.). Le nom de ces balises est gnralement simple, et nous fournirons, pour chaque type de boucle, la liste complte des balises que lon peut utiliser. Une balise est toujours prcde du signe dise (#).

http://www.spip.net/fr_article899.html (1 of 6)2006.04.17 19.10.24

[SPIP] La syntaxe des balises SPIP

La boucle DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

Par exemple, affichons une liste de noms darticles :


<BOUCLE_articles(ARTICLES){id_rubrique}> <li> #TITRE </BOUCLE_articles>

Lorsque la boucle sera excute, la balise SPIP #TITRE sera chaque fois remplace par le titre de larticle en question :
<li> Titre de l'article 1 <li> Titre de l'article 2 ... <li> Titre du dernier article

Rien de bien compliqu : on se contente dindiquer lintrieur du code HTML le nom de llment dsir, et celui-ci est remplac par le contenu tir de la base de donnes.

Codes optionnels
Dans la pratique, un lment de contenu est souvent accompagn de code HTML qui ne doit safficher que si cet lment existe, faute de quoi la mise en page devient imprcise. Par exemple : il existe une balise SPIP pour indiquer le surtitre dun article. Or de nombreux articles nont pas de surtitre. Compltons lexemple prcdent :
<BOUCLE_articles(ARTICLES){id_rubrique}> <li> #SURTITRE<br> #TITRE </BOUCLE_articles>

qui, classiquement, nous donne une liste darticles, avec dsormais lindication du titre et du surtitre de chaque article. Mais que se passe-t-il si larticle na pas de surtitre ? On obtient le code : <LI><BR> , cest--dire une petite puce suivie dune ligne blanche. Ce que nous devons faire : nafficher le code <BR> que si un surtitre existe pour larticle. La syntaxe de la balise SPIP devient alors :
http://www.spip.net/fr_article899.html (2 of 6)2006.04.17 19.10.24

[SPIP] La syntaxe des balises SPIP

[ texte optionnel avant (#BALISE) texte optionnel aprs ] La balise qui dtermine loption est place entre parenthses, et lensemble du texte conditionnel entre crochets. Le texte optionnel avant et le texte optionnel aprs ne saffichent que sil existe, dans la base de donnes, un lment correspondant cette balise. Notre exemple devient :
<BOUCLE_articles(ARTICLES){id_rubrique}> <li> [(#SURTITRE)<br>] #TITRE </BOUCLE_articles>

On obtient alors le rsultat recherch : sil existe un surtitre pour cet article, il est affich et suivi du <BR> ; sil nexiste pas de surtitre, mme le <BR> est occult. Utilisations avances A partir de [SPIP 1.8] on peut imbriquer des balises tendues les unes dans les autres. Ainsi, si dans notre exemple on voulait nafficher le logo de larticle que si le surtitre est dfini, on pourrait crire :
<BOUCLE_articles(ARTICLES){id_rubrique}> [<li> [(#LOGO_ARTICLE)<br>] (#SURTITRE)] </BOUCLE_articles>

Note :On ne peut jamais mettre une boucle dans le code optionnel dune balise. Mais si on veut faire nafficher une boucle quen fonction dune certaine balise, on peut utiliser <INCLURE()> lintrieur dun code optionnel.

Balises non ambigus


Quand on imbrique des boucles les unes dans les autres, il peut arriver que deux boucles aient des balises homonymes. Par exemple, dans le code suivant :

http://www.spip.net/fr_article899.html (3 of 6)2006.04.17 19.10.24

[SPIP] La syntaxe des balises SPIP

<BOUCLE_rubriques(RUBRIQUES) {id_rubrique}> <BOUCLE_articles(ARTICLES) {id_rubrique}> #TITRE </BOUCLE_articles> </BOUCLE_rubriques> la balise #TITRE dsigne le titre dun article. Ainsi, si on voulait afficher le titre

de la rubrique lintrieur de la boucle _articles, on ne pourrait pas utiliser #TITRE. Depuis [SPIP 1.8], on peut appeler une balise homonyme de lune des boucles englobantes en explicitant le nom de la boucle laquelle la balise appartient. Il faut alors spcifier le nom de la boucle entre le # et le nom de la balise. On crira alors la balise #BALISE de la boucle _boucle [1] de la faon suivante : #_boucle:BALISE. Par exemple :
<BOUCLE_rubriques(RUBRIQUES) {id_rubrique}> <BOUCLE_articles(ARTICLES) {id_rubrique}> #_rubriques:TITRE > #TITRE </BOUCLE_articles> </BOUCLE_rubriques>

affichera le titre de la rubrique, puis le titre de larticle : la balise #TITRE pour la boucle _rubriques devient #_rubriques:TITRE pour ne pas tre confondue avec la balise #TITRE de la boucle _articles.

Filtrer les rsultats


Il est frquent de vouloir modifier un lment tir de la base de donnes, soit pour obtenir un affichage diffrent (par exemple, afficher le titre entirement en majuscules), ou pour rcuprer une valeur dcoulant de cet lment (par exemple, afficher le jour de la semaine correspondant une date). Dans SPIP, on peut directement appliquer des filtres aux lments rcuprs de la base de donnes, en les indiquant dans la syntaxe des balises SPIP, qui devient : [ option avant (#BALISE|filtre1|filtre2|...|filtren) option aprs ] La syntaxe est donc de faire suivre le nom de la balise, entre les parenthses, par les filtres succesifs, spars par une barre verticale (nomme habituellement pipe).

http://www.spip.net/fr_article899.html (4 of 6)2006.04.17 19.10.24

[SPIP] La syntaxe des balises SPIP

Voici quelques filtres fournis par SPIP : majuscules, passe le texte en majuscules (plus puissant que la fonction de PHP correspondante, qui ne fonctionne pas correctement avec les caractres accentus) ; par exemple : [(#TITRE|majuscules)] justifier, affiche le texte en justification totale (cest--dire <P align=justify>) ; par exemple : [(#TEXTE|justifier)] La prsente documentation consacre un article aux diffrents filtres livrs avec SPIP.

Court-circuiter le traitement par SPIP


SPIP applique un traitement typographique tous les textes tirs de la base de donnes. En particulier, il place des espaces inscables avant certains symboles (point-virgule, point dinterrogation, etc.), et analyse des raccourcis de mise en page. Dans certains cas, vous pouvez avoir besoin de court-circuiter ce traitement, afin de rcuprer directement le texte brut tel quil est plac dans la base de donnes. Pour cela, il suffit dajouter une astrisque (*) la suite de la balise SPIP. Ce qui donne : [ option avant (#BALISE*|filtre1|filtre2|...|filtren) option aprs ]

Les paramtres des balises


Depuis [SPIP 1.8], certaines balises [2] acceptent des paramtres. On passera alors une liste de paramtres entre accolade { et } avec des virgules , pour sparer chaque paramtre. Par exemple : #ENV{lang,fr}. Un paramtre peut tre une constante ou une autre balise. Seulement les balises de forme simple peuvent tre passes en paramtres (i.e. pas de code optionnel ou de filtres). On peut mettre les paramtres entre guillemets simples '...' si lon ne veut pas quils soient interprts par SPIP.
http://www.spip.net/fr_article899.html (5 of 6)2006.04.17 19.10.24

[SPIP] La syntaxe des balises SPIP

[1] Prcision : noubliez pas le cas chant, lunderscore _ initial dans le nom de la boucle si celui ci ne commence pas par un numro. [2] #ENV et #EXPOSER

tlcharger le squelette de cette page

http://www.spip.net/fr_article899.html (6 of 6)2006.04.17 19.10.24

[SPIP] La boucle ARTICLES

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle ARTICLES
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

Une boucle darticles se code en plaant ARTICLES (avec un s ) entre parenthses :


<BOUCLEn(ARTICLES){critres...}>

Les lments contenus dans une telle boucle sont des articles.

Les critres de slection


On utilisera lun ou autre des critres suivants pour indiquer comment on slectionne les lments. {tout} les articles sont slectionns dans lintgralit du site (dans toutes les rubriques). Utile notamment pour afficher les articles les plus rcents (dans lintgralit du site) sur la page daccueil. [En ralit, le critre tout nest pas trait de manire informatique : cest un aide-mmoire pour le webmestre ; on obtient le mme rsultat en nindiquant aucun des critres suivants.]

http://www.spip.net/fr_article902.html (1 of 6)2006.04.17 19.10.42

[SPIP] La boucle ARTICLES

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

{id_article} retourne larticle dont lidentifiant est id_article. Comme lidentifiant de chaque article est unique, ce critre ne retourne quune ou zro rponse. {id_rubrique} retourne la liste des articles contenus dans la rubrique id_rubrique. {id_secteur} retourne les articles dans ce secteur (un secteur est une rubrique qui ne dpend daucune autre rubrique, cest--dire situe la racine du site). [SPIP 1.4] {branche} : le critre {branche} retourne lensemble des articles de la rubrique ET de ses sous-rubriques. (Cest une sorte dextension du critre {id_secteur}. Toutefois, linverse de {id_secteur=2}, il nest pas possible dappeler directement une branche en faisant par exemple {branche=2} : techniquement parlant, il faut que la rubrique en question figure dans le contexte courant. Ce critre est utiliser avec parcimonie : si votre site est bien structur, vous ne devriez pas en avoir besoin, sauf dans des cas trs particuliers.) {id_auteur} retourne les articles correspondant cet identifiant dauteur (utile pour indiquer la liste des articles crits par un auteur). {id_mot} retourne les articles correspondant cet identifiant de mot-cl (utile pour indiquer la liste des articles traitant dun sujet donn). [SPIP 1.3] {titre_mot=xxxx}, ou {type_mot=yyyy} retourne les articles lis au mot-cl dont le nom est xxxx , ou lis des mots-cls du groupe de mots-cls yyyy . Attention, on ne peut pas utiliser plusieurs critres {titre_mot=xxxx} ou {type_mot=yyyy} dans une mme boucle. [SPIP 1.4] {id_groupe=zzzz} permet de slectionner les articles lis un groupe de mots-cls ; principe identique au {type_mot} prcdent, mais puisque lon travaille avec un identifiant (numro du groupe), la syntaxe sera plus propre . [Nota : Ce critre nest pas (en ltat actuel du dveloppement de SPIP) cumulable avec le prcdent {type_mot=yyyy}] [SPIP 1.7.1] {lang} slectionne les articles de la langue demande dans ladresse de la page. [SPIP 1.7.2] Les critres {date} (ou {date=...} ou {date==...}) permettent de slectionner un article en fonction de la date passe dans lURL. {recherche} retourne les articles correspondant aux mots indiqus dans

http://www.spip.net/fr_article902.html (2 of 6)2006.04.17 19.10.42

[SPIP] La boucle ARTICLES

linterface de recherche (moteur de recherche incorpor SPIP). Voir la page consacre au moteur de recherche.

Le statut de larticle
Comme toutes les boucles de SPIP, une boucle ARTICLES ne retourne que des articles publis ; dans le cas o le site est rgl de manire ne pas publier les article post-dats , un autre test est fait sur la date de larticle. Jusqu [SPIP 1.8.2] il nexistait aucun moyen de dbrayer ce systme et dafficher les articles en cours de rdaction , proposs la publication ou refuss . Cest dsormais possible grce au critre {statut} : {statut=prop/prepa/publie/refuse/poubelle} [SPIP 1.8.2] slectionne les articles en fonction de leur statut de publication :
q

q q

q q

{statut=prepa} sont les articles en cours de rdaction dans lespace priv ; {statut=prop} sont les articles proposs la publication ; {statut=publie} sont les articles publis sur le site, y compris les articles post-dats ; {statut=refuse} sont les articles qui ont t refuss la publication ; {statut=poubelle} sont les articles qui ont t mis la poubelle.

Les critres daffichage


Une fois fix lun des critres ci-dessus, on pourra ajouter les critres suivants pour restreindre le nombre dlments affichs. Les critres communs toutes les boucles sappliquent videmment. {exclus} permet dexclure du rsultat larticle dans lequel on se trouve dj (par exemple, lorsque lon affiche les articles contenus dans la mme rubrique, on ne veut pas afficher un lien vers larticle dans lequel on se trouver dj).

Les balises de cette boucle


Les balises tires de la base de donnes Les balises suivantes correspondent aux lments directement tirs de la base de
http://www.spip.net/fr_article902.html (3 of 6)2006.04.17 19.10.42

[SPIP] La boucle ARTICLES

donnes. Vous pouvez les utiliser galement en tant que critre de classement (par exemple : {par date} ou {par titre}). #ID_ARTICLE affiche lidentifiant unique de larticle. Utile pour fabriquer des liens hypertextes non prvus (par exemple vers une page Afficher au format impression ). #SURTITRE retourne le surtitre. #TITRE retourne le titre de larticle. #SOUSTITRE retourne le soustitre. #DESCRIPTIF retourne le descriptif. #CHAPO retourne le texte dintroduction (chapeau). #TEXTE retourne le texte principal de larticle. #PS retourne le post-scriptum. Les dates : #DATE, #DATE_REDAC, #DATE_MODIF sont explicites dans la documentation sur La gestion des dates . #ID_RUBRIQUE est lidentifiant de la rubrique dont dpend larticle. #ID_SECTEUR est lidentifiant du secteur dont dpend larticle (le secteur tant la rubrique situe la racine du site). #NOM_SITE et #URL_SITE correspondent aux donnes du lien hypertexte de larticle (si vous avez activ cette option). #VISITES est le nombre de visites sur cet article. #POPULARITE donne le pourcentage de popularit de cet article, voir la documentation La popularit des articles. #LANG donne la langue de cet article. Les balises calcules par SPIP Les lments suivants sont calculs par SPIP. (Ils ne peuvent pas tre utiliss comme critre de classement.)
http://www.spip.net/fr_article902.html (4 of 6)2006.04.17 19.10.42

[SPIP] La boucle ARTICLES

#NOTES les notes de bas de page (calcules partir de lanalyse du texte). #INTRODUCTION : [SPIP 1.4] si larticle contient un descriptif, cest celui-ci qui est utilis ici ; sinon, SPIP affiche les 600 premiers caractres du dbut de larticle (chapeau puis texte). [SPIP 1.3] Dans les versions prcdentes de SPIP, ce sont systmatiquement les premiers caractres de larticle (chapeau puis texte) qui sont pris en compte (le descriptif nest pas utilis). #LESAUTEURS les auteurs de cet article. Cela permet dviter de crer une boucle AUTEURS pour obtenir le mme rsultat. #PETITION le texte de la ptition si elle existe. Si elle existe mais que le texte est vide, retourne un espace (une chane non vide sans incidence dans une page html). #URL_ARTICLE est lURL de la page de larticle. #FORMULAIRE_FORUM fabrique linterface permettant de poster un message rpondant cet article. Pour en savoir plus, voir aussi Les formulaires . #FORMULAIRE_SIGNATURE fabrique linterface permettant de signer la ptition associe cet article. #PARAMETRES_FORUM fabrique la liste des variables exploites par linterface du formulaire permettant de rpondre cet article. Par exemple :

[<A HREF="forum.php3?(#PARAMETRES_FORUM)">Rpondre cet article</A>] Depuis [SPIP 1.8.2] on peut lui passer un paramtre spcifiant ladresse de retour aprs avoir post le message. Par exemple : <A HREF="forum.php3? (#PARAMETRES_FORUM{#SELF})">Rpondre cet article</A> renverra le visiteur sur la page actuelle une fois que le message a t valid. Les logos #LOGO_ARTICLE le logo de larticle, ventuellement avec la gestion du survol. #LOGO_ARTICLE_RUBRIQUE le logo de larticle, ventuellement remplac par le logo de la rubrique sil nexiste pas de logo spcifique larticle. #LOGO_RUBRIQUE le logo de la rubrique de larticle.
http://www.spip.net/fr_article902.html (5 of 6)2006.04.17 19.10.42

[SPIP] La boucle ARTICLES

Les logos sinstallent de la manire suivante : [(#LOGO_ARTICLE|alignement|adresse)] Lalignement peut tre left ou right. Ladresse est lURL de destination du lien de ce logo (par exemple #URL_ARTICLE). Si lon nindique pas dadresse, le bouton nest pas cliquable. Si lon veut rcuprer directement le nom du fichier du logo (alors que les balises prcdentes fabriquent le code HTML complet pour insrer limage dans la page), par exemple pour afficher une image en fond de tableau, on utilisera le filtre | fichier comme suit : [(#LOGO_ARTICLE|fichier)] Par ailleurs deux balises permettent de rcuprer un seul des deux logos : #LOGO_ARTICLE_NORMAL est le logo sans survol ; #LOGO_ARTICLE_SURVOL est le logo de survol.

tlcharger le squelette de cette page

http://www.spip.net/fr_article902.html (6 of 6)2006.04.17 19.10.42

[SPIP] La boucle RUBRIQUES

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle RUBRIQUES
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

La boucle RUBRIQUES retourne une liste de... rubriques (tonnant, non ?)


<BOUCLEn(RUBRIQUES){critres...}>

Remarque. Une boucle RUBRIQUES naffiche que des rubriques actives , cest--dire contenant des articles publis, des documents joints ( partir de [SPIP 1.4]), des sites publis - ou des sous-rubriques elles-mmes actives. De cette faon, on vite de se trouver dans des rubriques culs de sac noffrant aucun lment de navigation. partir de la version SPIP 1.7.1, il est possible de forcer laffichage des rubriques vides (voir ci-dessous).

Les critres de slection


On utilisera lun ou autre des critres suivants pour indiquer comment on slectionne les lments.

http://www.spip.net/fr_article904.html (1 of 5)2006.04.17 19.10.52

[SPIP] La boucle RUBRIQUES

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

{id_rubrique} retourne la rubrique dont lidentifiant est id_rubrique. Comme lidentifiant de chaque rubrique est unique, ce critre retourne une ou zro rponse. {id_secteur} retourne les rubriques de ce secteur. (On peut galement, par extension, utiliser le critre {branche} dcrit dans La boucle ARTICLES). {id_parent} retourne la liste des rubriques contenues dans une rubrique. {racine} retourne la liste des secteurs (rigoureusement identique {id_parent=0}). {id_enfant} retourne la rubrique qui contient la rubrique (une seule rponse ; ou zro rponse si la prsente rubrique est situe la racine du site). {meme_parent} retourne la liste des rubriques dpendant de la mme rubrique que la rubrique en cours. Permet dafficher les rubriques surs qui se trouvent au mme niveau dans la hirarchie. {recherche} retourne les rubriques correspondant aux mots indiqus dans linterface de recherche (moteur de recherche incorpor SPIP). Voir la page consacre au moteur de recherche. partir de la version SPIP 1.4, les rubriques peuvent tre lies des mots-cls. Les critres de mots-cls peuvent donc tre dsormais utiliss dans les boucles (RUBRIQUES) :
q

{id_mot}, {titre_mot=xxx} rcuprent les rubriques lies au mot dont le numro est id_mot ou dont le titre est titre_mot ; {id_groupe}, {type_mot=yyyy} rcuprent les rubriques lies des mots du groupe id_groupe, ou du groupe dont le titre est type_mot.

[SPIP 1.7.1] {tout} affiche les rubriques vides en plus des rubriques contenant des lments publis. On rservera ce choix des besoins trs spcifiques ; en effet, par dfaut, SPIP naffiche pas sur le site public les rubriques qui ne contiennent aucun lment actif, afin de garantir que le site ne propose pas de culs de sac (navigation vers des pages ne proposant aucun contenu). [SPIP 1.7.1] {lang} slectionne les rubriques de la langue demande dans ladresse de la page.

http://www.spip.net/fr_article904.html (2 of 5)2006.04.17 19.10.52

[SPIP] La boucle RUBRIQUES

Les critres daffichage


Une fois fix lun des critres ci-dessus, on pourra ajouter les critres suivants pour restreindre le nombre dlments affichs. Les critres communs toutes les boucles sappliquent videmment. {exclus} permet dexclure du rsultat la rubrique dans lequel on se trouve dj (utile avec meme_parent).

Les balises de cette boucle


Les balises tires de la base de donnes Les balises suivantes correspondent aux lments directement tirs de la base de donnes. Vous pouvez les utiliser galement en tant que critre de classement (gnralement : {par titre}). #ID_RUBRIQUE affiche lidentifiant unique de la rubrique. #TITRE retourne le titre de la rubrique. #DESCRIPTIF retourne le descriptif. #TEXTE retourne le texte principal de la rubrique. #ID_SECTEUR est lidentifiant du secteur dont dpend la rubrique (le secteur tant la rubrique situe la racine du site). #LANG retourne la langue de cette rubrique. Les balises calcules par SPIP Les lments suivants sont calculs par SPIP. (Ils ne peuvent pas tre utiliss comme critre de classement.) #NOTES les notes de bas de page (calcules partir de lanalyse du texte). #INTRODUCTION les 600 premiers caractres du texte, les enrichissements typographiques (gras, italique) sont supprims.

http://www.spip.net/fr_article904.html (3 of 5)2006.04.17 19.10.52

[SPIP] La boucle RUBRIQUES

#URL_RUBRIQUE est lURL de la page de la rubrique. [SPIP 1.4] #DATE affiche la date de la dernire publication effectue dans la rubrique et/ou ses sous-rubriques (articles, brves...). #FORMULAIRE_FORUM fabrique linterface permettant de poster un message rpondant cette rubrique. Pour en savoir plus, voir aussi Les formulaires . #PARAMETRES_FORUM fabrique la liste des variables exploites par linterface du formulaire permettant de rpondre cette rubrique. Par exemple :

[<A HREF="forum.php3?(#PARAMETRES_FORUM)">Rpondre cette rubrique</A>] Depuis [SPIP 1.8.2] on peut lui passer un paramtre spcifiant ladresse de retour aprs avoir post le message. Par exemple : <A HREF="forum.php3? (#PARAMETRES_FORUM{#SELF})">Rpondre cette rubrique</A> renverra le visiteur sur la page actuelle une fois que le message a t valid. #FORMULAIRE_SITE [SPIP 1.4] Le #FORMULAIRE_SITE affiche une interface permettant aux visiteurs du site de proposer des rfrencements de sites. Ces sites apparatront comme proposs dans lespace priv, en attendant une validation par les administrateurs. Ce formulaire ne saffiche que si vous avez activ loption Grer un annuaire de sites dans la Configuration sur site dans lespace priv, et si vous avez rgl Qui peut proposer des sites rfrencs sur les visiteurs du site public . Le logo #LOGO_RUBRIQUE le logo de la rubrique, ventuellement avec la gestion du survol. Sil ny a pas de logo pour cette rubrique, SPIP va automatiquement chercher sil existe un logo pour la rubrique dont elle dpend, et ainsi de suite de manire rcursive. Le logo sinstalle de la manire suivante : [(#LOGO_RUBRIQUE|alignement|adresse)] [SPIP 1.4] #LOGO_RUBRIQUE_NORMAL affiche le logo sans survol ; #LOGO_RUBRIQUE_SURVOL affiche le logo de survol : ces deux balises permettent par exemple, quand on est dans une rubrique, de grer un logo avec survol pour les liens vers les autres rubriques, et de laisser le logo de survol seul dans la
http://www.spip.net/fr_article904.html (4 of 5)2006.04.17 19.10.52

[SPIP] La boucle RUBRIQUES

rubrique active.

tlcharger le squelette de cette page

http://www.spip.net/fr_article904.html (5 of 5)2006.04.17 19.10.52

[SPIP] La boucle BREVES

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle BREVES
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

La boucle BREVES, comme son nom lindique, retourne une liste de brves.
<BOUCLEn(BREVES){critres...}>

Les critres de slection


On utilisera lun ou autre des critres suivants pour indiquer comment on slectionne les lments. {tout} les brves sont slectionnes dans lintgralit du site. {id_breve} retourne la brve dont lidentifiant est id_breve. Comme lidentifiant de chaque brve est unique, ce critre retourne une ou zro rponse. {id_rubrique} retourne toutes les brves contenues dans la rubrique en cours.

http://www.spip.net/fr_article906.html (1 of 4)2006.04.17 19.11.2

[SPIP] La boucle BREVES

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

[SPIP 1.2] {id_mot} retourne toutes les brves lies au mot-cl en cours ( lintrieur dune boucle de type MOTS). [SPIP 1.3] {titre_mot=xxxx}, ou {type_mot=yyyy} retourne les brves lies au mot-cl dont le nom est xxxx , ou lies des mots-cls du groupe de mots-cls yyyy . Attention, on ne peut pas utiliser plusieurs critres {titre_mot=xxxx} ou {type_mot=yyyy} dans une mme boucle. [SPIP 1.4]{id_groupe=zzzz} permet de slectionner les brves lies un groupe de mots-cls ; principe identique au {type_mot} prcdent, mais puisque lon travaille avec un identifiant (numro du groupe), la syntaxe sera plus propre . {lang} slectionne les brves de la langue demande dans ladresse de la page. {recherche} retourne les brves correspondant aux mots indiqus dans linterface de recherche (moteur de recherche incorpor SPIP). Voir la page consacre au moteur de recherche.

Les critres daffichage


Les critres communs toutes les boucles sappliquent.

Les balises de cette boucle


Les balises tires de la base de donnes Les balises suivantes correspondent aux lments directement tirs de la base de donnes. Vous pouvez les utiliser galement en tant que critre de classement (gnralement : {par titre}). #ID_BREVE affiche lidentifiant unique de la brve. #TITRE retourne le titre de la brve. #DATE retourne la date de publication de la brve. #TEXTE retourne le texte de la brve. #NOM_SITE le nom du site indiqu en rfrences.
http://www.spip.net/fr_article906.html (2 of 4)2006.04.17 19.11.2

[SPIP] La boucle BREVES

#URL_SITE ladresse (URL) du site indiqu en rfrences. #ID_RUBRIQUE lidentifiant de la rubrique dont dpend cette brve. #LANG donne la langue de cette brve. Par dfaut, la langue dune brve est la langue du secteur dans lequel elle se trouve. Les balises calcules par SPIP Les lments suivants sont calculs par SPIP. (Ils ne peuvent pas tre utiliss comme critre de classement.) #NOTES les notes de bas de page (calcules partir de lanalyse du texte). #INTRODUCTION les 600 premiers caractres du texte, les enrichissements typographiques (gras, italique) sont supprims. #URL_BREVE est lURL de la page de la brve. #FORMULAIRE_FORUM fabrique linterface permettant de poster un message rpondant cette brve. Pour en savoir plus, voir aussi Les formulaires . #PARAMETRES_FORUM fabrique la liste des variables exploites par linterface du formulaire permettant de rpondre cette brve. Par exemple : [<A HREF="forum.php3?(#PARAMETRES_FORUM)">Rpondre cette brve</A>] Depuis [SPIP 1.8.2] on peut lui passer un paramtre spcifiant ladresse de retour aprs avoir post le message. Par exemple : <A HREF="forum.php3? (#PARAMETRES_FORUM{#SELF})">Rpondre cette brve</A> renverra le visiteur sur la page actuelle une fois que le message a t valid. Le logo #LOGO_BREVE le logo de la brve, ventuellement avec la gestion du survol. Le logo sinstalle de la manire suivante :
[(#LOGO_BREVE|alignement|adresse)]

#LOGO_BREVE_RUBRIQUE affiche, si il existe, le logo de la brve ; si ce logo na pas t attribu, SPIP affiche le logo de la rubrique [SPIP 1.4].
http://www.spip.net/fr_article906.html (3 of 4)2006.04.17 19.11.2

[SPIP] La boucle AUTEURS

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle AUTEURS
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

La boucle AUTEURS, comme son nom lindique, retourne une liste dauteurs. Si lon ne prcise pas de critre de slection, la boucle retournera tous les auteurs ayant un article publi. <BOUCLEn(AUTEURS){critres...}>

Les critres de slection


On utilisera lun ou autre des critres suivants pour indiquer comment on slectionne les lments. {tout} les auteurs sont slectionns, quils aient crit un article ou non. {id_auteur} retourne lauteur dont lidentifiant est id_auteur. Comme lidentifiant de chaque auteur est unique, ce critre retourne une ou zro rponse. {id_article} retourne tous les auteurs de cet article.

http://www.spip.net/fr_article907.html (1 of 3)2006.04.17 19.11.16

[SPIP] La boucle AUTEURS

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

{lang} slectionne les auteurs qui ont choisi, dans lespace priv, la langue demande dans ladresse de la page. Si un auteur ne sest jamais connect dans lespace priv, il ne sera pas trouv par ce critre. {lang_select} Par dfaut, une boucle AUTEURS affiche les balises et les chanes localises dans la langue du contexte [1]. Si on utilise ce critre, ces informations seront localises dans la langue choisie par lauteur.

Les critres daffichage


Les critres communs toutes les boucles sappliquent.

Les balises de cette boucle


Les balises tires de la base de donnes Les balises suivantes correspondent aux lments directement tirs de la base de donnes. Vous pouvez les utiliser galement en tant que critre de classement (gnralement : {par nom}). #ID_AUTEUR affiche lidentifiant unique de lauteur. #NOM retourne le nom de lauteur. #BIO retourne la biographie de lauteur. #EMAIL retourne son adresse email. #NOM_SITE le nom de son site Web. #URL_SITE ladresse (URL) de son site. #PGP sa cl publique pour PGP. #LANG est la langue de lauteur (cest--dire celle quil a choisie dans lespace priv). #FORMULAIRE_ECRIRE_AUTEUR [SPIP 1.4] affiche un formulaire permettant dcrire lauteur. Il faut que le serveur hbergeant le site accepte denvoyer des mails. Ce systme permet de ne pas divulguer ladresse email de lauteur.

http://www.spip.net/fr_article907.html (2 of 3)2006.04.17 19.11.16

[SPIP] La boucle AUTEURS

Les balises calcules par SPIP #NOTES les notes de bas de page (calcules partir de lanalyse du texte). #URL_AUTEUR ladresse de la page auteur.php3?id_auteur=.... Le logo #LOGO_AUTEUR le logo de lauteur, ventuellement avec la gestion du survol. Le logo sinstalle de la manire suivante : [(#LOGO_AUTEUR|alignement|adresse)] [SPIP 1.6] : les variantes #LOGO_AUTEUR_NORMAL et #LOGO_AUTEUR_SURVOL permettent un affichage plus fin de ces deux variantes du logo.
[1] de la boucle englobante ou de lurl.

tlcharger le squelette de cette page

http://www.spip.net/fr_article907.html (3 of 3)2006.04.17 19.11.16

[SPIP] La boucle FORUMS

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle FORUMS
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

La boucle FORUMS retourne une liste de messages de forums. <BOUCLEn(FORUMS){critres...}>

Les critres de slection


On utilisera lun ou autre des critres suivants pour indiquer comment on slectionne les lments. {id_forum} retourne le message dont lidentifiant est id_forum. Comme lidentifiant de chaque message est unique, ce critre retourne une ou zro rponse. {id_article} retourne les messages correspondant cet article. {id_rubrique} retourne les messages correspondant cette rubrique.

http://www.spip.net/fr_article908.html (1 of 4)2006.04.17 19.11.26

[SPIP] La boucle FORUMS

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

{id_breve} retourne les messages correspondant cette brve. {id_syndic} retourne les messages correspondant ce site. {id_thread} introduit dans [SPIP 1.8], retourne les messages appartenant ce fil de discussion. Note : id_thread nest rien dautre que lidentifiant id_forum du message qui dmarre le fil de discussion (aussi appel pied de la discussion). {id_parent} retourne les messages dpendant dun autre message. Indispensable pour grer des fils de discussion ( threads ) dans les forums. {id_enfant} retourne le message dont dpend le message actuel (permet de remonter dans la hirachie des fils de discussion). (SPIP 1.3) {meme_parent} retourne les autres messages rpondant un mme message. (SPIP 1.3) {plat} ou {tout} : affiche tous les messages de forum sans prendre en compte leur hirarchie : avec ce critre, vous pouvez slectionner tous les messages quelle que soit leur position dans un thread (dans la limite des autres critres, bien sr). Cela permet par exemple dafficher les messages par ordre strictement chronologique par exemple, ou de compter le nombre total de contributions dans un forum. N.B. En labsence de critre {id_forum} ou {id_parent}, lorsque {plat} nest pas utilis, seuls les messages nayant pas de parent (i.e. la racine dun thread) sont affichs. {id_secteur} retourne les messages correspondant au secteur. A priori, peu utile ; mais cela permet par exemple de faire un grand forum thmatique regroupant tous les messages dun secteur, quel que soit lendroit o lon se trouve. partir de la version SPIP 1.4, les messages des forums peuvent tre lies des mots-cls. Les critres de mots-cls peuvent donc tre dsormais utiliss dans les boucles (FORUMS) :
q

{id_mot}, {titre_mot=xxx} rcuprent les messages lis au mot dont le numro est id_mot ou dont le titre est titre_mot ; {id_groupe}, {type_mot=yyyy} rcuprent les messages lis des mots du groupe id_groupe, ou du groupe dont le titre est type_mot.

http://www.spip.net/fr_article908.html (2 of 4)2006.04.17 19.11.26

[SPIP] La boucle FORUMS

Les critres daffichage


Les critres communs toutes les boucles sappliquent.

Les balises de cette boucle


Les balises tires de la base de donnes Les balises suivantes correspondent aux lments directement tirs de la base de donnes. Vous pouvez les utiliser galement en tant que critre de classement (gnralement : {par titre}). #ID_FORUM affiche lidentifiant unique du message. #ID_THREAD introduit dans [SPIP 1.8], affiche lidentifiant du fil de discussion auquel appartient ce message. (Il sagit de lid_forum du pied de la discussion.) #URL_FORUM donne, depuis [SPIP 1.8], ladresse canonique de la page qui affiche le message de forum (par exemple, avec les URLs normales de SPIP, article.php3?id_article=8#forum15 pour le message 15 associ larticle 8). #ID_BREVE affiche lidentifiant de la brve laquelle ce message est attach. Attention, cela nest pas rcursif : un message qui rpond un message attach une brve ne contient pas lui-mme le numro de la brve. #ID_ARTICLE est lidentifiant de larticle auquel rpond le message. #ID_RUBRIQUE est lidentifiant de la rubrique laquelle le message rpond. #ID_SYNDIC est lidentifiant du site auquel le message rpond. #DATE est la date de publication. #TITRE est le titre. #TEXTE est le texte du message. #NOM_SITE le nom du site Web indiqu par lauteur. #URL_SITE ladresse (URL) de ce site Web.
http://www.spip.net/fr_article908.html (3 of 4)2006.04.17 19.11.26

[SPIP] La boucle FORUMS

#NOM est le nom de lauteur du message. #EMAIL est ladresse email de lauteur. #IP est ladresse IP de lauteur du message au moment de lenvoi de sa contribution. Les balises calcules par SPIP #FORMULAIRE_FORUM fabrique linterface permettant de poster un message de rponse. Pour en savoir plus, voir aussi Les formulaires . #PARAMETRES_FORUM fabrique la liste des variables exploites par linterface du formulaire permettant de rpondre ce message. Par exemple :
[<a href="forum.php3? (#PARAMETRES_FORUM)">Rpondre ce message</a>]

Depuis [SPIP 1.8.2] on peut lui passer un paramtre spcifiant ladresse de retour aprs avoir post le message. Par exemple : <A HREF="forum.php3? (#PARAMETRES_FORUM{#SELF})">Rpondre ce message</A> renverra le visiteur sur la page actuelle une fois que le message a t valid.

tlcharger le squelette de cette page

http://www.spip.net/fr_article908.html (4 of 4)2006.04.17 19.11.26

[SPIP] La boucle MOTS

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle MOTS
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) catal Deutsch English Espaol italiano

La boucle MOTS retourne une liste de mots-cls.

<BOUCLEn(MOTS){critres...}>

Les critres de slection


On utilisera lun ou autre des critres suivants pour indiquer comment on slectionne les lments. {tout} les mots sont slectionns dans lintgralit du site. {id_mot} retourne le mot-cl dont lidentifiant est id_mot. {id_groupe} retourne les mots-cls associs au groupe de mots dont le numro est id_groupe [SPIP 1.4].

http://www.spip.net/fr_article909.html (1 of 3)2006.04.17 19.11.38

[SPIP] La boucle MOTS

La boucle DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

{id_article} retourne les mots-cls associs cet article (cest lutilisation la plus courante de cette boucle). {id_rubrique} retourne les mots-cls associs une rubrique [SPIP 1.4]. {id_breve} retourne les mots associs une brve [SPIP 1.4]. {id_syndic} retourne les mots associs un site rfrenc [SPIP 1.4]. {id_forum} retourne les mots associs un message de forum [SPIP 1.4] (attention, utilisation trs spcifique). {titre=france} retourne le mot-cl intitul france (par exemple). {type=pays} retourne les mots-cls du groupe de mots-cls intitul pays (par exemple).

Les critres daffichage


Les critres communs toutes les boucles sappliquent.

Les balises de cette boucle


Les balises tires de la base de donnes Les balises suivantes correspondent aux lments directement tirs de la base de donnes. Vous pouvez les utiliser galement en tant que critre de classement (gnralement : {par titre}). #ID_MOT affiche lidentifiant unique du mot. #TITRE est le titre (le mot-cl lui-mme). #DESCRIPTIF est le descriptif du mot. #TEXTE est le texte associ au mot. #TYPE est la catgorie dans laquelle est install ce mot-cl (par exemple, le motcl France pourrait tre associ la catgorie Pays ).

http://www.spip.net/fr_article909.html (2 of 3)2006.04.17 19.11.38

[SPIP] La boucle MOTS

#LOGO_MOT [SPIP 1.4] affiche le logo associ au mot-cl. #URL_MOT donne ladresse de ce mot

La boucle (GROUPES_MOTS)
Dune utilisation marginale, la boucle GROUPES_MOTS [SPIP 1.5] mrite dtre cite ici : elle permet, si vous avez plusieurs groupes de mots-cls, de slectionner ces groupes, et dorganiser par exemple une page rcapitulative de tous les mots-cls classs par groupe, puis par ordre alphabtique lintrieur de chaque groupe, par exemple via le code suivant :
<BOUCLE_groupes(GROUPES_MOTS){par titre}> <h1>#TITRE</H1> <BOUCLE_mots(MOTS){id_groupe}{par titre} {" - "}> #TITRE </BOUCLE_mots> </BOUCLE_groupes> Les balises et critres associs cette boucle sont :

#ID_GROUPE, lidentifiant du groupe de mots [galement disponible dans la boucle(MOTS)] ; #TITRE, le titre du groupe [ lintrieur de la boucle(MOTS), vous pouvez utiliser #TYPE pour afficher cette valeur].

tlcharger le squelette de cette page

http://www.spip.net/fr_article909.html (3 of 3)2006.04.17 19.11.38

[SPIP] La boucle SITES (ou SYNDICATION)

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle SITES (ou SYNDICATION)


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle DOCUMENTS catal Deutsch English Espaol italiano

La boucle SITES (SPIP 1.3) retourne une liste de sites rfrencs. (Si lon a syndiqu des sites rfrencs, cette boucle sutilise, naturellement, associe une boucle SYNDIC_ARTICLES qui permet de rcuprer la liste des article de ces sites.)
<BOUCLEn(SITES){critres...}>

Avant la version 1.3 de SPIP, cette boucle tait nomme SYNDICATION, car seuls des sites syndiqus pouvaient tre rfrencs. Les deux dnominations sont rigoureusement quivalentes (mais SITES correspond mieux au fait que, depuis la version 1.3, il sagit dun systme de rfrencement de sites, la syndication tant une option).
<BOUCLEn(SYNDICATION){critres...}>

Les critres de slection

http://www.spip.net/fr_article910.html (1 of 3)2006.04.17 19.11.51

[SPIP] La boucle SITES (ou SYNDICATION)

La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

On utilisera lun ou autre des critres suivants pour indiquer comment on slectionne les lments. {tout}, tous les sites rfrencs. {id_syndic} retourne le site rfrenc dont lidentifiant est id_syndic. {id_rubrique} retourne les sites rfrencs dans cette rubrique. {id_secteur} retourne les sites rfrencs dans ce secteur. [SPIP 1.3] {id_mot} retourne toutes les sites lis au mot-cl en cours ( lintrieur dune boucle de type (MOTS)). [SPIP 1.3] {titre_mot=xxxx}, ou {type_mot=yyyy} retourne les sites lis au mot-cl dont le nom est xxxx , ou lis des mots-cls du groupe de motscls yyyy . Attention, on ne peut pas utiliser plusieurs critres {titre_mot=xxxx} ou {type_mot=yyyy} dans une mme boucle. [SPIP 1.4]{id_groupe=zzzz} permet de slectionner les sites lis un groupe de mots-cls ; principe identique au {type_mot} prcdent, mais puisque lon travaille avec un identifiant (numro du groupe), la syntaxe sera plus propre .

Les critres daffichage


Les critres communs toutes les boucles sappliquent. {moderation=oui} [SPIP 1.4] affiche les sites syndiqus dont les liens sont bloqus a priori ( modrs ) ; linverse de ce critre est {moderation!=oui}. (SPIP 1.3) {syndication=oui}, {syndication=non} permet de nafficher que les sites rfrencs faisant lobjet dune syndication, ou les sites non syndiqus.

Les balises de cette boucle


Les balises tires de la base de donnes Les balises suivantes correspondent aux lments directement tirs de la base de donnes. Vous pouvez les utiliser galement en tant que critre de classement
http://www.spip.net/fr_article910.html (2 of 3)2006.04.17 19.11.51

[SPIP] La boucle SITES (ou SYNDICATION)

(gnralement : {par nom_site}). #ID_SYNDIC affiche lidentifiant unique du site syndiqu. #NOM_SITE est le nom du site syndiqu. #URL_SITE est ladresse (URL) du site syndiqu. #DESCRIPTIF est le descriptif du site syndiqu. #ID_RUBRIQUE est le numro de la rubrique contenant cette syndication. #ID_SECTEUR est le numro de la rubrique-secteur ( la racine du site) contenant cette syndication. Autres balises #LOGO_SITE affiche le logo attribu au site. #URL_SYNDIC affiche ladresse (URL) du fichier de syndication de ce site. #FORMULAIRE_FORUM fabrique linterface permettant de poster un message de forum propos de ce site. Pour en savoir plus, voir aussi Les formulaires . #PARAMETRES_FORUM fabrique la liste des variables exploites par linterface du formulaire permettant de poster un message de forum propos de ce site. Par exemple :

[<A HREF="forum.php3?(#PARAMETRES_FORUM)">Ragir ce site. </A>] Depuis [SPIP 1.8.2] on peut lui passer un paramtre spcifiant ladresse de retour aprs avoir post le message. Par exemple : <A HREF="forum.php3? (#PARAMETRES_FORUM{#SELF})">Ragir ce site.</A> renverra le visiteur sur la page actuelle une fois que le message a t valid.

tlcharger le squelette de cette page

http://www.spip.net/fr_article910.html (3 of 3)2006.04.17 19.11.51

[SPIP] La boucle DOCUMENTS

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle DOCUMENTS
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

[SPIP 1.4] La boucle DOCUMENTS retourne une liste de documents multimdia associs ( un article, une rubrique, ventuellement les images incluses dans une brve).
<BOUCLEn(DOCUMENTS){critres...}>

Cette boucle gre non seulement les documents joints non installs dans le texte dun article, mais peut aussi accder aux images (depuis la version 1.4, les images sont gres, au niveau du programme, comme un genre spcifique de documents), aux vignettes de prvisualisation et aux documents dj insrs dans le corps de larticle. Pour mmoire, on utilisera donc le plus frquemment (utilisation courante) la boucle DOCUMENTS avec, au minimum, les critres suivants (explications ciaprs) :
<BOUCLEn(DOCUMENTS) {mode=document}{doublons}>

http://www.spip.net/fr_article1823.html (1 of 4)2006.04.17 19.12.3

[SPIP] La boucle DOCUMENTS

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

Les critres de slection


Une boucle DOCUMENTS sutilise en gnral lintrieur dun article ou dune rubrique (ventuellement dans une brve, mais ici lutilisation sera rserve la rcupration dimages, ce qui sera trs spcifique). {id_article} retourne les documents de larticle dont lidentifiant est id_article. {id_rubrique} retourne les documents de la rubrique id_rubrique. {id_breve} retourne les documents de la brve id_breve (il nest pas possible dassocier des documents multimdia une brve, seulement des images ; lutilisation dune boucle DOCUMENTS dans ce cadre sera donc trs spcifique). Notez bien : il nest pas possible dutiliser ici le critre {id_secteur} ; les documents sont conus pour tre intimement lis aux articles et aux rubriques, et non tre appels seuls sans ces lments (on parle dans SPIP de documents joints ).

Les critres daffichage


{mode=document} ou {mode=image} permet dindiquer si lon veut appeler les documents multimdia, ou les images (en effet, dsormais les images associes larticle et ventuellement insres dans larticle sont traits comme des documents en mode=image). N.B. Dans les sites SPIP existant avant la version 1.4, lhabitude a t prise de ne pas pouvoir afficher les images qui ne sont pas insres lintrieur du texte de larticle. De fait, si vous ajoutez un boucle DOCUMENTS en mode=image sur un site dj existant, vous risquez de voir rapparatre dans cette boucle des images qui ntaient pas destines tre publies sur le site public. Donc, nutilisez une telle boucle que sur un site cr avec la version 1.4, ou bien procdez avec beaucoup de prcautions (vrifiez les anciens articles pour viter la publication dimages parasites). {extension=...} permet de slectionner les documents selon leur terminaison (terminaison du fichier multimdia, par exemple mov , ra , avi ...). Cela peut tre utilis par exemple pour raliser un porfolio, cest--dire une boucle naffichant que les documents de type image, une seconde boucle ensuite, avec une prsentation graphique diffrente, les autres types de documents :
http://www.spip.net/fr_article1823.html (2 of 4)2006.04.17 19.12.3

[SPIP] La boucle DOCUMENTS

Cette BOUCLE_portfolio rcupre les documents joints un article, non dj affichs dans le texte de larticle, et donc les extensions des fichiers peuvent tre jpg , png ou gif . {doublons} prend ici une importance particulire : elle permet non seulement de ne pas rafficher des documents dj affichs par une autre boucle, mais galement de ne pas rafficher les documents dj intgrs lintrieur dun article. Si lon oublie ce critre, on affichera tous les documents associs un article, y compris ceux qui auraient dj t affichs lintrieur du texte [1].

<BOUCLE_portfolio(DOCUMENTS) {id_article}{extension==jpg|png|gif} {mode=document}{doublons}>

Les balises
#LOGO_DOCUMENT affiche le logo (vignette de prvisualisation) associ cet article ; si une vignette personnalise na pas t installe manuellement par lauteur de larticle, SPIP utilise une vignette standard selon le type du fichier. #URL_DOCUMENT est lURL du fichier multimdia. Pour afficher une vignette cliquable pointant vers le document multimdia, on utilisera donc le code suivant :
[(#LOGO_DOCUMENT|#URL_DOCUMENT)]

#TITRE affiche le titre du document. #DESCRIPTIF affiche le descriptif du document. #FICHIER [SPIP 1.8.2] affiche le nom de fichier du document. Une utilisation intressante de cette balise est combine avec le filtre reduire_image, dans le cadre dun portfolio pour afficher une rduction de limage plutt que de son logo ; par exemple en utilisant :
[<a href="#URL_DOCUMENT">(#FICHIER| reduire_image{500}) </a>]

#TYPE_DOCUMENT affiche le type (fichier Quicktime, fichier Real...) du document multimdia. #TAILLE affiche la taille du fichier multimdia. Ce chiffre est fourni en octets.
http://www.spip.net/fr_article1823.html (3 of 4)2006.04.17 19.12.3

[SPIP] La boucle DOCUMENTS

Pour de gros fichiers, cette valeur devient rapidement inutilisable ; on pourra donc lui appliquer le filtre taille_en_octets, qui affichera successivement en octets, en kilooctets, ou mme en mgaoctets :
[(#TAILLE|taille_en_octets)]

#LARGEUR et #HAUTEUR fournissent les dimensions en pixels. #ID_DOCUMENT affiche le numro du document. #EMBED_DOCUMENT est une balise lutilisation trs spcifique : elle permet dinclure directement les fichiers de formats autoriss (vido, sons) directement dans la page Web ; il faut viter dutiliser systmatiquement cette balise, car il est dconseill dinsrer systmatiquement les documents dans les pages sans un contrle strict (sauf faire exploser la dure de chargement de vos pages Web...). La balise peut tre complte de paramtres propres aux formats utiliss (encore une fois : utilisation trs spcifique), par exemple :
[(#EMBED_DOCUMENT|autostart=true)]

[1] Si on utilise un critre avec un nom ({doublons unnom}), celui ci nexclura pas les documents intgrs dans le texte de larticle.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1823.html (4 of 4)2006.04.17 19.12.3

[SPIP] La boucle SYNDIC_ARTICLES

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle SYNDIC_ARTICLES
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle DOCUMENTS La boucle SYNDIC_ARTICLES La boucle catal Deutsch English Espaol italiano

La boucle SYNDIC_ARTICLES retourne une liste des articles des sites syndiqus. On peut soit lutiliser lintrieur dune boucle SITES (cette dernire rcupre une liste de sites rfrencs, ensuite on rcupre chaque article de ces sites), soit directement lintrieur dune rubrique (on rcupre directement tous les articles syndiqus dans une rubrique, en court-circuitant le passage par la liste des sites).
<BOUCLEn(SYNDIC_ARTICLES){critres...} >

(SPIP 1.3) partir de la version 1.3 de SPIP, la boucle SITES (ou SYNDICATION) naffiche plus uniquement des sites syndiqus, mais plus gnralement des sites rfrencs (la syndication de certains sites rfrencs tant une option). On pourra donc, pour obtenir une prsentation graphique plus prcise, utiliser une boucle SYNDIC_ARTICLES uniquement lintrieur dune boucle SITES utilisant le critre {syndication=oui}.

Les critres de slection

http://www.spip.net/fr_article911.html (1 of 3)2006.04.17 19.12.19

[SPIP] La boucle SYNDIC_ARTICLES

SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

On utilisera lun ou autre des critres suivants pour indiquer comment on slectionne les lments. {tout}, tous les sites syndiqus. {id_syndic_article} retourne larticle syndiqu dont lidentifiant est id_syndic_article. (Dans la pratique, il y trs peu dintrt fabriquer une page pour un article syndiqu, puisquon prfrera renvoyer directement vers larticle en question.) {id_syndic} retourne la liste des articles du site syndiqu dont lidentifiant est id_syndic. {id_rubrique} retourne la liste des articles syndiqus dans cette rubrique. {id_secteur} retourne la liste des articles syndiqus dans ce secteur.

Les critres daffichage


Les critres communs toutes les boucles sappliquent.

Les balises de cette boucle


Les balises tires de la base de donnes Les balises suivantes correspondent aux lments directement tirs de la base de donnes. Vous pouvez les utiliser galement en tant que critre de classement (gnralement : {par titre}). #ID_SYNDIC_ARTICLE affiche lidentifiant unique de larticle syndiqu. #ID_SYNDIC affiche lidentifiant unique du site syndiqu contenant cet article. #TITRE est le titre de larticle. Remarque : il est prfrable dutiliser ici le titre brut de larticle syndiqu - via le code [(#TITRE*)] -, pour viter le moteur typographique. En effet les titres sont censs tre dj typographiquement corrects dans les backends, et on ne souhaite pas passer la correction typographique sur des titres en anglais ou sur des titres comprenant des expressions du genre Les fichiers ~/.tcshrc . #URL_ARTICLE est ladresse (URL) de larticle syndiqu (sur son site original).
http://www.spip.net/fr_article911.html (2 of 3)2006.04.17 19.12.19

[SPIP] La boucle SYNDIC_ARTICLES

#DATE est la date de publication de cet article. #LESAUTEURS, les auteurs de larticle syndiqu. #DESCRIPTIF le descriptif de larticle syndiqu. #NOM_SITE est le nom du site syndiqu contenant cet article. #URL_SITE est ladresse (URL) du site

tlcharger le squelette de cette page

http://www.spip.net/fr_article911.html (3 of 3)2006.04.17 19.12.19

[SPIP] La boucle SIGNATURES

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle SIGNATURES
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

La boucle SIGNATURES retourne une liste de signataires dune ptition associe un article. <BOUCLEn(SIGNATURES){critres...}>

Les critres de slection


On utilisera lun ou autre des critres suivants pour indiquer comment on slectionne les lments. {tout} toutes les signatures sont slectionns dans lintgralit du site. {id_signature}, la signature correspondant lidentifiant courant. {id_article} retourne les signatures de la ptition de cet article.

http://www.spip.net/fr_article912.html (1 of 2)2006.04.17 19.12.30

[SPIP] La boucle SIGNATURES

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

Les critres daffichage


Les critres communs toutes les boucles sappliquent. Attention. Dans ce type de boucles, certains critres de classement de la boucle ne sont pas identiques aux balises SPIP indiques ci-dessous : {par nom_email} classe les rsultats selon le #NOM du signataire ; {par ad_email} classe selon l#EMAIL du signataire.

Les balises de cette boucle


Les balises tires de la base de donnes Les balises suivantes correspondent aux lments directement tirs de la base de donnes. Vous pouvez les utiliser galement en tant que critre de classement (gnralement : {par titre}). #ID_SIGNATURE affiche lidentifiant unique du message. #ID_ARTICLE est lidentifiant de larticle pour cette ptition. #DATE est la date de publication. #MESSAGE est le texte du message. #NOM est le nom de lauteur du message. #EMAIL est ladresse email de lauteur. #NOM_SITE le nom du site Web indiqu par lauteur. #URL_SITE ladresse (URL) de ce site Web.

tlcharger le squelette de cette page

http://www.spip.net/fr_article912.html (2 of 2)2006.04.17 19.12.30

[SPIP] La boucle HIERARCHIE

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La boucle HIERARCHIE
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

La boucle HIERARCHIE retourne la liste des RUBRIQUES qui mnent de la racine du site la rubrique ou larticle en cours. <BOUCLEn(HIERARCHIE){critres...}>

Les critres de slection


On utilisera obligatoirement lun des deux critres suivants pour indiquer comment on slectionne les lments : {id_article} retourne la liste des rubriques depuis la racine jusqu la rubrique contenant larticle correspondant cet identifiant. {id_rubrique} retourne la liste des rubriques depuis la racine jusqu la rubrique correspondant cet identifiant (exclue). Note : Depuis [SPIP 1.8], {tout} permet dobtenir aussi la rubrique

http://www.spip.net/fr_article913.html (1 of 2)2006.04.17 19.12.45

[SPIP] La boucle HIERARCHIE

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

correspondant lidentifiant spcifi. Les critres {id_article} ou {id_rubrique} ne peuvent pas tre utiliss avec une comparaison. Par exemple, <BOUCLE_hi(HIERARCHIE) {id_article=12}> retournera une erreur.

Attention : cette boucle sera obligatoirement place lintrieur dune boucle ARTICLES ou RUBRIQUES elle ne va pas par ellemme chercher lid_article ou id_rubrique indique dans lURL. (Le mme principe vaut pour les boucles HIERARCHIE des squelettes inclus par la commande <INCLURE(xxx.php3)>.)

Les critres daffichage


Depuis [SPIP 1.8], tous les critres de La boucle RUBRIQUES peuvent tre utiliss avec cette boucle, y compris les critres de tri (il devient possible par exemple de trier une <BOUCLE_x(HIERARCHIE){id_article}{par hasard} >).

Historique : Jusqu la version [SPIP 1.7.2], Les critres communs toutes les boucles ne sappliquent pas tous ce type de boucle. Seuls les critres {"inter"} et {a,b} taient utilisables.

Les balises de cette boucle


Les lments obtenus avec une boucle HIERARCHIE sont des rubriques. On peut donc utiliser toutes les balises proposes pour les boucles RUBRIQUES.

tlcharger le squelette de cette page

http://www.spip.net/fr_article913.html (2 of 2)2006.04.17 19.12.45

[SPIP] Les critres communs toutes les boucles

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Les critres communs toutes les boucles


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

Certains critres sappliquent (presque) tous les types de boucles. Ce sont des critres destins restreindre le nombre de rsultats affichs ou indiquer lordre daffichage. On peut sans difficult combiner plusieurs de ces critres de slection.

Classer les rsultats


{par critre_de_classement} indique lordre de prsentation des rsultats. Ce critre de classement correspond lune des balises tires de la base de donnes pour chaque type de boucle. Par exemple, on pourra classer les articles {par date}, {par date_redac} ou {par titre}. (Notez que, si les balises sont en majuscules, les critres de classement sont en minuscules.) Cas particulier : {par hasard} permet dobtenir une liste prsente dans un ordre alatoire. Inverser le classement. De plus, {inverse} provoque laffichage du classement invers. Par exemple {par date} commence par les articles les plus anciens ;

http://www.spip.net/fr_article900.html (1 of 8)2006.04.17 19.13.8

[SPIP] Les critres communs toutes les boucles

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

avec {par date}{inverse} on commence la liste avec les articles les plus rcents. Classer par numro. [SPIP 1.3] Lorsquon ralise le classement selon un lment de texte (par exemple le titre), le classement est ralis par ordre alphabtique. Cependant, pour forcer un ordre daffichage, on peut indiquer un numro devant le titre, par exemple : 1. Mon premier article , 2. Deuxime article , 3. Troisime... , etc ; avec un classement alphabtique, le classement de ces lments donnerait la srie 1, 10, 11, 2, 3... . Pour rtablir le classement selon les numros, on peut utiliser le critre : {par num critre} Par exemple :
<BOUCLE_articles(ARTICLES){id_rubrique} {par date}{inverse}>

affiche les articles dune rubrique classs selon lordre chronologique invers (les plus rcents au dbut, les plus anciens la fin), et :
<BOUCLE_articles(ARTICLES){id_rubrique} {par titre}>

les affiche selon lordre alphabtique de leur titre ; enfin :


<BOUCLE_articles(ARTICLES){id_rubrique} {par num titre}>

les affiche selon lordre du numro de leur titre (remarque : loption {par num titre} ne fonctionne pas pour les plus anciennes versions de MySQL, antrieures la version 3.23). Classer selon plusieurs critres A partir de [SPIP 1.8], on peut classer selon plusieurs critres : {par critre1, critre2}. On indique ainsi des ordres de classement conscutifs. Les rsultats seront dabord tris selon le critre1, puis le critre2 pour les rsultats ayant le mme critre1. On peut spcifier autant de critres que nescessaire. Par exemple {par date, titre} triera les rsultats par date puis les rsultats ayant la mme date seront tris par titre. Avec [SPIP 1.8.2] on peut spcifier plusieurs critres {par ...} pour une boucle pour arriver au mme rsultat. Par exemple : {par date} {par titre} est quivalent lexemple prcdent.

http://www.spip.net/fr_article900.html (2 of 8)2006.04.17 19.13.8

[SPIP] Les critres communs toutes les boucles

Remarque : Quand on utilise plusieurs critres de tri, le critre {inverse} ne sapplique quau critre de tri plac juste avant. Cest pourquoi [SPIP 1.8.2] introduit la notation {!par ...} qui inverse un critre de tri en particulier. Par exemple : {!par date} {par num titre} tri par date dcroissantes puis par numros croissants dans le titre pour les rsultats ayant la mme date.

Comparaisons, galits
{critre < valeur} Comparaison avec une valeur fixe (on peut utiliser > , < , = , >= , <= . Tous les critres de classement (tels que tirs de la base de donnes) peuvent galement tre utiliss pour limiter le nombre de rsultats. La valeur droite de loprateur peut tre : Une valeur constante fixe dans le squelette. Par exemple :
<BOUCLE_art(ARTICLES){id_article=5}>

affiche larticle dont le numro est 5 (utile pour mettre en vedette un article prcis sur la page daccueil).
<BOUCLE_art(ARTICLES){id_secteur=2}>

affiche les articles du secteur numro 2. A partir de [SPIP 1.8], une balise disponible dans le contexte de la boucle. Par exemple :
<BOUCLE_art(ARTICLES){id_article=5}> <BOUCLE_titre(ARTICLES) {titre=#TITRE}> ... </BOUCLE_titre> </BOUCLE_art>

sert trouver les articles qui ont le mme titre que larticle 5. Attention : On ne peut utiliser qune balise simple. Il nest pas permis de la filtrer ou de mettre du code optionnel.

http://www.spip.net/fr_article900.html (3 of 8)2006.04.17 19.13.8

[SPIP] Les critres communs toutes les boucles

Spcialement, si on veut utiliser la balise #ENV ou tout autre balise prenant des paramtres , on doit utiliser la notation : {titre = #ENV{titre}} et pas : {titre = [(#ENV {titre})]}. Expressions rgulires : Trs puissant (mais nettement plus complexe manipuler), le terme de comparaison == introduit une comparaison selon une expression rgulire. Par exemple :
<BOUCLE_art(ARTICLES){titre==^[aA]}>

slectionne les articles dont le titre commence par a ou A . Ngation : A partir de [SPIP 1.2] On peut utiliser la notation {xxx != yyy} et {xxx !== yyy}, le ! correspondant la ngation (oprateur logique NOT).
<BOUCLE_art(ARTICLES){id_secteur != 2}>

slectionne les articles qui nappartiennent pas au secteur numro 2.


<BOUCLE_art(ARTICLES){titre!==^[aA]}>

slectionne les articles dont le titre ne commence pas par a ou A .

Affichage en fonction de la date


Pour faciliter lutilisation des comparaisons sur les dates, on a ajout des critres : age et age_redac correspondent respectivement lanciennet de la publication et de la premire publication dun article, en jours : {age<30} slectionne les lmnts publis depuis un mois ; les critres mois, mois_redac, annee, annee_redac permettent de comparer avec des valeurs fixes ({annee<=2000} pour les lments publis avant la fin de lanne 2000). On peut combiner plusieurs de ces critres pour effectuer des slections trs prcises. Par exemple :

http://www.spip.net/fr_article900.html (4 of 8)2006.04.17 19.13.8

[SPIP] Les critres communs toutes les boucles

<BOUCLE_art(ARTICLES){id_secteur=2} {id_rubrique!=3}{age<30}>

affiche les articles du secteur 2, lexclusion de ceux de la rubrique 3, et publis depuis moins de 30 jours. Astuce. Le critre age est trs pratique pour afficher les articles ou les brves dont la date est situe dans le futur , avec des valeurs ngatives ( condition davoir slectionn, dans la Configuration prcise du site, loption Publier les articles post-dats ). Par exemple, ce critre permet de mettre en valeur des vnements futurs. {age<0} slectionne les articles ou les brves dont la date est situe dans le futur ( aprs aujourdhui)... [SPIP 1.3] ge par rapport une date fixe. Le critre age est calcul par rapport la date daujourdhui (ainsi {age<30} correspond aux articles publis depuis moins dun mois par rapport aujourdhui). Le critre age_relatif compare la date dun article ou dune brve une date courante ; par exemple, lintrieur dune boucle ARTICLES, on connat dj une date pour chaque rsultat de la boucle, on peut donc slectionner par rapport cette date (et non plus par rapport aujourdhui). Par exemple :
<BOUCLE_article_principal(ARTICLES) {id_article}> <h1>#TITRE</h1> <BOUCLE_suivant(ARTICLES) {id_rubrique}{age_relatif<=0}{exclus}{par date}{0,1}> Article suivant: #TITRE </BOUCLE_suivant>

la BOUCLE_suivant affiche un seul article de la mme rubrique, class par date, </BOUCLE_article_principal> dont la date de publication est infrieure ou gale la date de l article_principal ; cest--dire larticle de la mme rubrique publi aprs larticle principal. De plus amples informations sur lutilisation des dates se trouvent dans larticle sur La gestion des dates .

Affichage dune partie des rsultats


{branche} A partir de [SPIP 1.8.2], limite les rsultats pour des boucles ayant un #ID_RUBRIQUE la branche actuelle (la rubrique actuelle et ses
http://www.spip.net/fr_article900.html (5 of 8)2006.04.17 19.13.8

[SPIP] Les critres communs toutes les boucles

sous-rubriques). Par exemple : <BOUCLE_articles(ARTICLES) {branche}> retournera tous les articles de la rubrique actuelle et de ces sous-rubriques, <BOUCLE_articles(ARTICLES) {!branche}> retournera tous les articles qui ne sont pas dans la rubrique actuelle ou ses sous-rubriques, On peut utiliser le critre {branche?} optionnel pour ne lappliquer que si une rubrique est slectionne dans le contexte (une boucle englobante ou lurl fournie un id_rubrique). Par exemple : <BOUCLE_articles(ARTICLES) {branche?}> retournera tous les articles de la rubrique actuelle et de ces sous-rubriques si il y a un id_rubrique dans le contexte, sinon, tous les articles du site. {doublons} ou {unique} (ces deux critres sont rigoureusement identiques) permettent dinterdire laffichage des rsultats dj affichs dans dautres boucles utilisant ce critre.

historique : A partir de [SPIP 1.2] et jusqu [SPIP 1.7.2], seules les boucles ARTICLES, RUBRIQUES, DOCUMENTS et SITES acceptaient ce critre.

{doublons xxxx} partir de [SPIP 1.8], on peut avoir plusieurs jeux de critres {doublons} indpendants. Les boucles ayant {doublons rouge} nauront aucune incidence sur les boucles ayant {doublons bleu} comme critre. {xxxx IN a,b,c,d} partir de [SPIP 1.8], limite laffichage aux rsultats ayant le critre xxxx gal a, b, c ou d. Les rsultats sont tris dans lordre indiqu (sauf demande explicite dun autre critre de tri). Il est aussi possible de slectionner des chanes de caractres, par exemple avec {titre IN 'Chine', 'Japon'}. {a,b} o a et b sont des chiffres. Ce critre permet de limiter le nombre de rsultats. a indique le rsultat partir duquel on commence laffichage (attention, le premier rsultat est numrot 0 - zro) ; b indique le nombre de rsultats affichs. Par exemple {0,10} affiche les dix premiers rsultats ; {4,2} affiche les deux rsultats partir du cinquime (inclus). {debut_xxx,b} est une variante trs labore de la prcdente. Elle permet de
http://www.spip.net/fr_article900.html (6 of 8)2006.04.17 19.13.8

[SPIP] Les critres communs toutes les boucles

faire commencer la limitation des rsultats par une variable passe dans lURL (cette variable remplace ainsi le a que lon indiquait prcdemment). Cest un fonctionnement un peu compliqu, que fort heureusement on na pas besoin dutiliser trop souvent. La variable passe dans lURL commence forcment par debut_xxx (o xxx est un mot choisi par le webmestre) . Ainsi, pour une page dont lURL est : petition.php3?id_article=13&debut_signatures=200 avec un squelette (petition.html) contenant par exemple :
<BOUCLE_signatures(SIGNATURES) {id_article}{debut_signatures,100}>

on obtiendra la liste des 100 signatures partir de la 201-ime [rappel]. Avec lURL : petition.php3?id_article=13&debut_signatures=300 on obtient la liste des 100 signatures partir de la 301-ime [rappel]. {a,n-b} partir de [SPIP 1.8], est une variante de {a,b} qui limite laffichage en fonction du nombre de rsultats dans la boucle. a est le rsultat partir duquel commencer faire laffichage ; b indique le nombre de rsultats ne pas afficher la fin de la boucle. {0,n-10} affichera tous les rsultats de la boucle sauf les 10 derniers. {n-a,b} partir de [SPIP 1.8], est le pendant de {a, n-b}. On limite b rsultats en commenant laffichage au ae rsultat avant la fin de la boucle. Par exemple : {n-20,10} affichera au 10 rsultats en partant du 20e rsultat avant la fin de la boucle. {a/b} o a et b sont des chiffres. Ce critre permet dafficher une partie a (proportionnellement) des rsultats en fonction dun nombre de tranches b. Par exemple : {1/3} affiche le premier tiers des rsultats. Ce critre est surtout utile pour prsenter des listes sur plusieurs colonnes. Pour obtenir un affichage sur deux colonnes, il suffit de crer une premire boucle, affiche dans une case de tableau, avec le critre {1/2} (la premire moiti des rsultats), puis une seconde boucle dans une seconde case, avec le critre {2/2} (la seconde moiti des rsultats).
http://www.spip.net/fr_article900.html (7 of 8)2006.04.17 19.13.8

[SPIP] Les critres communs toutes les boucles

Attention. Lutilisation du critre {doublons} avec ce critre est prilleuse. Par exemple :
<BOUCLE_prem(ARTICLES){id_rubrique} {1/2}{doublons}> <li> #TITRE </BOUCLE_prem> <BOUCLE_deux(ARTICLES){id_rubrique} {2/2}{doublons}> <li> #TITRE </BOUCLE_deux> naffichera pas tous les articles de la rubrique ! Imaginons par exemple quil y ait

au total 20 articles dans notre rubrique. La BOUCLE_prem va afficher la premire moiti des articles, cest--dire les 10 premiers, et interdire ( cause de {doublons}) de les rutiliser. La BOUCLE_deux, elle, va rcuprer la deuxime moiti des articles de cette rubrique qui nont pas encore t affichs par la BOUCLE_prem ; donc, la moiti des 10 articles suivants, cest--dire les 5 derniers articles de la rubrique. Vous avez donc perdu 5 articles dans lopration...

Affichage entre les rsultats


{"inter"} permet dindiquer un code HTML (ici, inter) insr entre les rsultats de la boucle. Par exemple, pour sparer une liste dauteurs par une virgule, on indiquera :
<BOUCLE_auteurs(AUTEURS){id_article}{", "}>

[rappel] le premier rsultat est numrot 0, donc le 200e rsultat reprsente rellement la 201 e signature

tlcharger le squelette de cette page

http://www.spip.net/fr_article900.html (8 of 8)2006.04.17 19.13.8

[SPIP] Les balises propres au site

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Les balises propres au site


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

Les balises suivantes sont disponibles nimporte quel endroit du squelette, mme en dehors dune boucle.

Balises dfinies la configuration


Le contenu de ces balises est dfini lors de la configuration de votre site. #URL_SITE_SPIP est ladresse du site. Elle ne comprend pas le / final, ainsi vous pouvez crer un lien du type #URL_SITE_SPIP/sommaire.php3 #NOM_SITE_SPIP est le nom du site. #EMAIL_WEBMASTER [SPIP 1.5] est ladresse du webmestre. Par dfaut, SPIP prend ladresse de celui qui a install le site (le premier administrateur). (Si vous prfrez un formulaire crire au webmestre , cf. Les formulaires ). #LOGO_SITE_SPIP partir de [SPIP 1.8], est le logo du site. Cest en fait le logo

http://www.spip.net/fr_article1902.html (1 of 4)2006.04.17 19.13.23

[SPIP] Les balises propres au site

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

de la racine, cest--dire la rubrique 0. #CHARSET [SPIP 1.5] est le jeu de caractres utilis par le site. Sa valeur par dfaut est iso-8859-1, jeu de caractres dit iso-latin . Cf. www.uzine.net/ article1785.html pour une introduction aux charsets, en attendant une documentation plus complte de cette fonctionnalit de SPIP. #LANG [SPIP 1.7] utilise en dehors des boucles ARTICLES, RUBRIQUES, BREVES et AUTEURS retourne la langue principale du site. #LANG_DIR, #LANG_LEFT, #LANG_RIGHT [SPIP 1.7] : ces balises dfinissent le sens dcriture de la langue du contexte actuel (par exemple, de larticle quon est en train dafficher). Voir larticle Raliser un site multilingue pour plus dinformation. #MENU_LANG (et #MENU_LANG_ECRIRE) [SPIP 1.7] affichent un menu de langues permettant au visiteur dobtenir la page en cours dans la langue choisie. La premire balise affiche la liste des langues du site ; la seconde la liste des langues de lespace priv (elle est utilise sur la page de connexion lespace priv).

Balises de mise en page


#DOSSIER_SQUELETTE [SPIP 1.8.2] introduit cette balise pour pouvoir dvelopper des squelettes facilement transportables et changeables. Elle permet dobtenir le chemin du dossier dans lequel est install le squelette utilis. On peut ainsi placer les fichiers accessoires (feuille de style, javascript, etc...) au squelette dans le rpertoire du squelette et donc simplement distribuer ce dossier pour changer ses squelettes. On crira donc, par exemple, pour inclure une feuille de style du rpertoire squelette :
<link rel="stylesheet" href="#DOSSIER_SQUELETTE/mon_style. css" type="text/css"/>

#PUCE [SPIP 1.5], qui affiche devinez-quoi ;

#FORMULAIRE_ADMIN [SPIP 1.5] est une balise optionnelle qui permet de placer les boutons dadministration ( recalculer cette page , etc.) dans ses squelettes. Lorsquun administrateur parcours le site public, si cette balise est prsente, elle sera remplace par les boutons dadministration, sinon, les boutons seront placs la fin de la page.

http://www.spip.net/fr_article1902.html (2 of 4)2006.04.17 19.13.23

[SPIP] Les balises propres au site

Depuis [SPIP 1.8], on peut aussi modifier la feuille de style spip_admin.css pour contrler la position des boutons. #DEBUT_SURLIGNE, #FIN_SURLIGNE indique SPIP dans quelle partie de la page colorer les mots clefs recherchs. Quand lutilisateur arrive sur une page depuis une page de recherche SPIP, les mots clefs cherchs sont colors automatiquement dans la page trouve. SPIP ne distingue pas, par exemple, entre un menu, du code javascript ou le texte de larticle, il colore les mots partout, ce qui peut tre moche ou mme crer des problmes dans les scripts. On peut utiliser ces deux balises pour limiter la coloration une partie de la page. Par exemple :
<BOUCLE_article(ARTICLES) {id_article}> <INCLURE(menu.php3) {id_rubrique}> #DEBUT_SURLIGNE <h1>#TITRE</h1> #CHAPO #TEXTE #NOTES #FIN_SURLIGNE </BOUCLE_article>

Balises techniques

Attention, ces balises sadressent des utilisateurs avertis de SPIP. #SELF partir de [SPIP 1.8], retourne lURL de la page appele, nettoye des variables propres lexcution de SPIP. Par exemple, pour une page avec lurl : article.php3?id_article=25&var_mode=recalcul la balise #SELF retournera : article.php3?id_article=25 Par exemple pour faire un formulaire :
<form action="#SELF" method="get">

Remarque : la balise #SELF reprsentant ladresse de la page, elle nest pas compatible avec les <INCLURE()> (sauf si le $delais de linclusion est mis 0). [(#ENV{xxxx,zzzz})] partir de [SPIP 1.8], permet daccder la variable de nom xxxx passe par la requte HTTP. zzzz est une partie optionnelle qui permet
http://www.spip.net/fr_article1902.html (3 of 4)2006.04.17 19.13.23

[SPIP] Les balises propres au site

de retourner une valeur mme si la variable xxxx nexiste pas. Par dfaut, la balise #ENV est filtre par htmlspecialchars. Si on veut avoir le rsultat brut, ltoile * peut tre utilise comme pour les autres balises : [(#ENV*{xxxx})]. Par exemple pour limiter la liste dauteurs affichs :
<BOUCLE_auteurs(AUTEURS) {nom == #ENV{lettre,^A}}>

Retourne la liste dauteur ayant le nom correspondant lexpression rgulire pass dans lurl par la variable lettre (liste_auteur.php3?lettre=^Z) ou les auteurs qui ont un nom commenant par un A sil ny a pas de variable dans lurl. La balise #SPIP_CRON introduite par [SPIP 1.8] est lie la gestion par SPIP des calculs quil doit faire priodiquement (statistiques, indexation pour le moteur de recherche, syndication de sites etc.). Si cette balise nest pas prsente sur le site, le moteur de SPIP effectue ses calculs, en temps utile, aprs avoir envoy une page un visiteur ; malheureusement php ne permet pas de fermer la connexion la fin de la page, et dans certains cas cela peut conduire certains visiteurs malchanceux (ceux dont le passage dclenche une procdure un peu longue, notamment la syndication) constater une certaine lenteur dans laffichage de la page demande. La balise #SPIP_CRON permet de contourner ce problme : son rle est de gnrer un marqueur <div> invisible dont la proprit background pointe sur le script spip_background.php3 ; ce script son tour effectue les calculs ncessaires en tche de fond , et renvoie une image transparente de 11 pixel. Cette astuce permet donc dviter tout sentiment de ralentissement en dportant les ventuelles lenteurs sur un script annexe. A noter : cette balise nest pas stratgique, et sa prsence ou son absence ne modifient en rien la rgularit du calcul des tches priodiques du site.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1902.html (4 of 4)2006.04.17 19.13.23

[SPIP] Les formulaires

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Les formulaires
franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

SPIP permet une grande interaction du site avec les visiteurs ; pour cela, il propose de nombreux formulaires sur le site public, permettant tantt de grer les accs lespace priv, tantt dautoriser lajout de messages et signatures. Les formulaires sinsrent dans les squelettes par une simple balise ; SPIP se charge ensuite de grer le comportement (souvent complexe) de ces formulaires en fonction de lenvironnement et des configurations effectues dans lespace priv.

Fonctions interactives
#FORMULAIRE_RECHERCHE Il sagit du formulaire du moteur de recherche intgr SPIP. Il est prsent dans larticle sur les boucles de recherche. #FORMULAIRE_FORUM

http://www.spip.net/fr_article1827.html (1 of 5)2006.04.17 19.13.40

[SPIP] Les formulaires

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

Le #FORMULAIRE_FORUM gre linterface permettant de poster des messages dans les forums publics. Il concerne donc en premier chef la boucle FORUMS mais peut tre utilis dans toutes les boucles acceptant un forum :
q q q q

La boucle ARTICLES, La boucle RUBRIQUES, La boucle BREVES, La boucle SITES (ou SYNDICATION).

Le formulaire dpend videmment du choix des forums modrs a posteriori, a priori ou sur abonnement. [SPIP 1.8.2] Par dfaut, une fois le message post, le visiteur est renvoy vers la page de llment [1] auquel il a rpondu. On peut dcider de renvoyer le visiteur vers une autre page en passant une url en paramtre cette balise. Par exemple :
q

[(#FORMULAIRE_FORUM{'merci.php3'})] renverra vers la page merci. php3. [(#FORMULAIRE_FORUM{#SELF})] renverra vers la page o le formulaire de forum est plac (voir la balise #SELF).

Dans le cas (trs spcifique) o lon a autoris la prsence de mots-cls dans les forums publics, on peut affiner le comportement de ce formulaire avec des variables de personnalisation. #FORMULAIRE_SIGNATURE Le #FORMULAIRE_SIGNATURE autorise la signature des ptitions associes aux articles (ce formulaire se place donc dans une boucle ARTICLES. N.B. La signature des ptitions rclame obligatoirement une validation des signataires par email. Ce formulaire na donc dintrt que si votre hbergeur autorise lenvoi de mails par PHP. #FORMULAIRE_SITE [SPIP 1.4] Le #FORMULAIRE_SITE affiche une interface permettant aux visiteurs du site de proposer des rfrencements de sites. Ces sites apparatront comme proposs dans lespace priv, en attendant une validation par les administrateurs. Ce formulaire ne saffiche que si vous avez activ loption Grer un annuaire de sites dans la Configuration sur site dans lespace priv, et si vous avez rgl

http://www.spip.net/fr_article1827.html (2 of 5)2006.04.17 19.13.40

[SPIP] Les formulaires

Qui peut proposer des sites rfrencs sur les visiteurs du site public . Les sites rfrencs tant, dans SPIP, attachs aux rubriques, on ne peut placer ce #FORMULAIRE_SITE qu lintrieur dune boucle RUBRIQUES. #FORMULAIRE_ECRIRE_AUTEUR [SPIP 1.4] Plac lintrieur dune boucle AUTEURS, ce formulaire permet denvoyer un mail lauteur (dun article). Cela permet, en modifiant les squelettes (qui, par dfaut, affichent les liens contenant les adresses email des auteurs des articles), de pouvoir crire aux auteurs sans afficher leur adresse email sur le site public. [SPIP 1.8.2] Plac dans une boucle ARTICLES, ce formulaire permet denvoyer un mail tous les auteurs de cet article. [SPIP 1.8.2] Plac dans une boucle FORUMS, ce formulaire permet denvoyer un mail directement lauteur du message si lauteur est enregistr sur le site.

Inscription, authentification...
#FORMULAIRE_INSCRIPTION Sans doute le plus important, le #FORMULAIRE_INSCRIPTION gre linscription des nouveaux rdacteurs. Il naffiche une interface dinscription que si vous avez autoris linscription automatique depuis le site public (sinon, cette balise naffiche rigoureusement rien). Linscription ncessite lenvoi des informations de connexion (login et mot de passe) par email ; donc ce formulaire ne fonctionne que si votre hbergeur autorise lenvoi de mails par PHP. #LOGIN_PRIVE [SPIP 1.4] Tout aussi important (sinon plus), le #LOGIN_PRIVE affiche le formulaire daccs lespace priv (la partie /ecrire du site). Important : cette balise doit imprativement tre prsente dans le squelette appel par la page spip_login.php3, cest--dire en standard par le squelette nomm login-dist.html. En effet, lors des accs directs ladresse /ecrire de votre site, cest vers spip_login.php3 que SPIP va vous rediriger.

http://www.spip.net/fr_article1827.html (3 of 5)2006.04.17 19.13.40

[SPIP] Les formulaires

#LOGIN_PUBLIC [SPIP 1.4] Dune utilisation beaucoup plus spcifique, #LOGIN_PUBLIC affiche un formulaire permettant vos utilisateurs de sidentifier tout en restant sur le site public (sans entrer dans lespace priv). Cette balise sert notamment authentifier les visiteurs pour les sites proposant des forums modrs sur abonnement. Elle peut aussi servir de brique de base pour restreindre laccs certains contenus sur le site public : mais cela reste dun maniement complexe, et ncessitera encore des dveloppements et la rdaction de tutoriels complets avant dtre facilement utilisable par tous ; nanmoins, un exemple dutilisation avance est donn plus bas. Le #LOGIN_PUBLIC, par dfaut, boucle sur lui-mme , cest--dire que le formulaire revient sur la page o il se trouve. On peut cependant indiquer une page vers laquelle le formulaire mnera, sous la forme :
[(#LOGIN_PUBLIC|mapage.php3)]

Si votre site offre une inscription automatique lespace priv, les donnes de connexion lespace public sont identiques celles de lespace priv ; cest--dire que les donnes envoyes lutilisateur pour sidentifier lespace public lui permettent galement daccder lespace priv. Si, au contraire, vous avez interdit linscription automatique lespace priv, il faut imprativement avoir au moins un article dont les forums seront rgls en mode sur abonnement pour activer cette balise ; ds lors, SPIP pourra fournir des informations de connexion pour le site public sans accs lespace priv. #URL_LOGOUT [SPIP 1.5] est le pendant de #LOGIN_PUBLIC ; il donne une URL permettant un visiteur authentifi de se dconnecter. [SPIP 1.8.2] On peut passer un paramtre cette balise pour spcifier ladresse de retour aprs la dconnection. Par exemple [(#URL_LOGOUT{sommaire. php3})] renverra vers la page de sommaire. Voici un exemple simple, mais complet, dutilisation de ces deux balises. Il faut passer par un peu de php pour tester la variable $auteur_session, qui indique quun auteur est identifi ou non. Si cest le cas, on peut rcuprer (voire tester) son statut, son login, etc., via $auteur_session['statut'].... Notez bien que le contenu nest scuris que sur ce squelette. Si votre squelette imprimer cet article , par exemple, ne vrifie par $auteur_session, tout le monde (y compris les moteurs de recherche !) pourra avoir accs ce fameux contenu que vous souhaitez protger.

http://www.spip.net/fr_article1827.html (4 of 5)2006.04.17 19.13.40

[SPIP] Les formulaires

<?php if ($auteur_session) { ?> Vous tes authentifi, <a href='#URL_LOGOUT'>cliquez ici pour vous dconnecter</a> ... ici le contenu en accs restreint.... <?php } else { ?> <h2>Cette partie est en accs restreint</h2> #LOGIN_PUBLIC <?php } ?>

Feuilles de style
On peut notablement modifier linterface graphique des formulaires par lintrmdiaire des feuilles de style, notamment les classes forml, spip_encadrer et spip_bouton.
[1] article, rubrique, brve, site ou forum

tlcharger le squelette de cette page

http://www.spip.net/fr_article1827.html (5 of 5)2006.04.17 19.13.40

[SPIP] Les boucles de recherche

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Les boucles de recherche


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

SPIP dispose dun moteur de recherche intgr. Il faut donc prvoir une page permettant dafficher les rsultats des recherches.

Linterface de recherche
Pour afficher le formulaire de linterface de recherche, il suffit dinsrer la balise : #FORMULAIRE_RECHERCHE Par dfaut, le formulaire enverra les requtes vers une page recherche.php3 ; vous devez donc raliser un squelette recherche.html permettant dafficher les rsultats. Vous pouvez dcider dutiliser une autre page daffichage des rsultats. Pour cela, il faut utiliser la balise de la manire suivante : [(#FORMULAIRE_RECHERCHE|adresse.php3)]

http://www.spip.net/fr_article903.html (1 of 2)2006.04.17 19.13.56

[SPIP] Les boucles de recherche

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

o adresse.php3 est la page vers laquelle vous dsirez envoyer lutilisateur.

Le squelette des rsultats


Les boucles permettant dafficher les rsultats de la recherche sont, en ralit, des boucles dj abordes ici : ARTICLES, RUBRIQUES, BREVES. Vous pouvez en effet effectuer des recherches non seulement sur les articles, mais aussi sur les rubriques et les brves. La seule diffrence, par rapport ce qui est document sur les pages de ces boucles, est le choix du critre de slection, qui doit tre {recherche}. Les critres daffichage et les balises de ces boucles sont inchanges. Cependant, afin de classer les rsultats par pertinence, on utilisera de prfrence ce nouveau critre daffichage : {par points}. Enfin, on pourra utiliser la balise #POINTS, qui indique la pertinence des rsultats (attention, dans labsolu cette valeur nest pas trs explicite, elle est surtout utile pour le classement des rsultats). Pour afficher la requte formule par le visiteur, on peut utiliser la balise #RECHERCHE [SPIP 1.5.1].

tlcharger le squelette de cette page

http://www.spip.net/fr_article903.html (2 of 2)2006.04.17 19.13.56

[SPIP] Les filtres de SPIP

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Les filtres de SPIP


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

Nous avons vu dans la syntaxe des balises SPIP quil tait possible de modifier le comportement et laffichage des balises en leur attribuant des filtres. [ option avant (#BALISE|filtre1|filtre2|...|filtren) option aprs ] Les filtres 1, 2, ..., n sont appliqus successivement la #BALISE.

Les filtres de mise en page

Les filtres de mise en page suivants (majuscules, justifier...) ne sont plus conseills. Il est recommand de leur prfrer, dsormais, lutilisation des styles CSS correspondants. majuscules fait passer le texte en majuscules. Par rapport la fonction de

http://www.spip.net/fr_article901.html (1 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

PHP, majuscules sapplique galement aux lettres accentues. justifier fait passer le texte en justification totale (<P align=justify>). aligner_droite fait passer le texte en justification droite (<P align=right>). aligner_gauche fait passer le texte en justification gauche (<P align=left>). centrer centre le texte (<P align=center>).

Les filtres des dates


Les filtres suivants sappliquent aux dates ([(#DATE|affdate)] par exemple). affdate affiche la date sous forme de texte, par exemple 13 janvier 2001 . [SPIP 1.8] tend la notation de ce filtre. On peut lui passer un paramtre de formatage de la date, correspondant un format spip ( 'saison' , etc.) ou un format de la commande php date ( 'Y-m-d' ). Par exemple :
q

[(#DATE|affdate{'Y-m'})] affichera numriquement lanne et le mois de la date filtre spars par un tiret, la notation [(#DATE|affdate{'saison'})] est totalement quivalente : [(#DATE|saison)].

Il existe aussi des variantes de affdate qui fournissent des raccourcis : affdate_jourcourt affiche le nom du mois et la valeur numrique du jour, e.g. 19 Avril . Si la date nest pas dans lanne actuelle, alors lanne est aussi affiche : 1 Novembre 2004 . affdate_court affiche le nom du mois et le numros du jour, e.g. 19 Avril . Si la date nest pas dans lanne actuelle, alors on affiche seulement le mois et lanne sans le numros du jour : Novembre 2004 . affdate_mois_annee affiche seulement le mois et lanne : Avril 2005 , Novembre 2003 . jour affiche le jour (en nombre).

http://www.spip.net/fr_article901.html (2 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP

mois affiche le mois (en nombre). annee affiche lanne. [SPIP 1.0.2] heures affiche les heures dune date (les dates fournies par SPIP contiennent non seulement le jour, mais galement les horaires). [SPIP 1.0.2] minutes affiche les minutes dune date. [SPIP 1.0.2] secondes affiche les secondes. nom_jour affiche le nom du jour (lundi, mardi...). nom_mois affiche le nom du mois (janvier, fvrier...). saison affiche la saison (hiver, t...). [SPIP 1.8] introduit le filtre unique qui retourne la valeur de llment filtr seulement si cest la premire fois quelle est rencontre. Ce filtre nest pas limit aux dates mais est intressant pour, par exemple, afficher une liste darticles par date :
<BOUCLE_blog(ARTICLES){par date} {inverse}{"<br>"}> [<hr> <h1>(#DATE|affdate_mois_annee| unique)</h1>] #TITRE ... </BOUCLE_blog>

cette balise naffichera la date qu chaque changement de mois. Voici un autre exemple :
<BOUCLE_blog2(ARTICLES){par date} {inverse}> [<hr /><h1>(#DATE|annee|unique)</h1>] [<h2>(#DATE|affdate{'Y-m'}|unique| nom_mois)</h2>] <a href="#URL_ARTICLE">#TITRE</ a><br /> affichera une liste ressemblant : </BOUCLE_blog2>

2005 mars article de mars autre article de mars fvrier


http://www.spip.net/fr_article901.html (3 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP

article de fvrier 2004 dcembre un article On utilise la notation affdate{'Y-m'} pour afficher le nom du mois chaque anne. En effet :
q

si lon ne faisait que #DATE|nom_mois|unique, les noms de mois ne seraient affichs que la premire anne. si le filtrage tait : #DATE|unique|nom_mois, on afficherait toutes les dates. En effet, #DATE retourne une date complte qui contient aussi lheure. Il y a donc une grande chance que les dates compltes de deux articles publis le mme jours soient diffrentes.

Cest pourquoi on garde juste le mois et lanne de la date avant de la passer au filtre unique. On peut passer un argument optionnel ce filtre pour diffrencier deux utilisations indpendantes du filtre. Par exemple : [(#DATE| affdate_mois_annee|unique{ici})] naura pas dincidence sur [(#DATE| affdate_mois_annee|unique{la})].

Filtres de texte
La plupart de ces filtres ont t introduits dans la version [SPIP 1.4] liens_ouvrants transforme les liens SPIP qui donnent vers des sites extrieurs en liens de type popup , qui ouvrent dans une nouvelle fenetre ; cest lquivalent du target=blank du HTML. N.B. : les dveloppeurs de SPIP estiment quil sagit en gnral dune impolitesse, car les internautes savent trs bien sils ont envie ou pas douvrir une nouvelle fentre - or ce systme le leur impose. Mais la demande tait trop forte, et nous avons craqu ;-) supprimer_numero sert liminer le numro dun titre, si par exemple on veut faire des tris darticles {par num titre} mais ne pas afficher les numros (car ils ne servent qu ordonner les articles). Le format des prfixes numerots est XX. titre , XX tant un nombre n chiffres (illimit). PtoBR transforme les sauts de paragraphe en simples passages a la ligne, ce qui permet de resserrer une mise en page, par exemple lintrieur dun sommaire

http://www.spip.net/fr_article901.html (4 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP

taille_en_octets permet de transformer un nombre doctets (25678906) en une chane de caractres plus explicite ( 24.4 Mo ). supprimer_tags est une suppression basique et brutale de tous les <...> textebrut sapparente au filtre supprimer_tags, mais il agit de manire un peu plus subtile, transformant notamment les paragraphes et <br> en sauts de ligne, et les espaces inscables en espaces simples. Utilisation, par exemple, pour faire un descriptif META partir du #DESCRIPTIF : [<meta name='description' content='(#DESCRIPTIF|textebrut)'>] texte_backend peut tre utiliser pour transformer un texte et le rendre compatible avec des flux xml. Ce filtre est utilis par exemple dans le squelette backend.html qui gnre le fil rss du site. couper coupe un texte aprs un certain nombre de caractres. Il essaie de ne pas couper les mots et enlve le formatage du texte. Si le texte est trop long, alors (...) est ajout la fin. La longueur par dfaut est de 50 caractres. Mais on peut spcifier une autre longueur en passant un paramtre au filtre, par exemple : [(#TEXTE|couper{80})].

Filtres de test
[SPIP 1.6] introduit le filtre |sinon, qui indique ce quil faut afficher si llment filtr est vide : ainsi [(#TEXTE|sinon{"pas de texte"})] affiche le texte ; si celui-ci est vide, affiche pas de texte . [SPIP 1.8] introduit le filtre |?{sioui,sinon} qui est une version volue de | sinon. Il prend un ou deux paramtre :
q

sioui est la valeur afficher la place de llment filtr si celui-ci est non vide. sinon est optionnel. Cest la valeur afficher si llment filtr est vide. [(#TEXTE|?{#TEXTE,"pas de texte"})] est quivalent lexemple donn pour le filtre |sinon.

[SPIP 1.8] introduit un jeu de filtres pour faire des comparaisons avec des valeurs :
q

|=={valeur} et |!={valeur} permettent de vrifier, respectivement, lgalit ou lingalit entre llment filtr et valeur. Par exemple : <li [(#TITRE|=={dito}|?{'id="edito"',''})]>#TITRE</li> |>{valeur}, |>={valeur}, |<{valeur} et |<={valeur} comparent

http://www.spip.net/fr_article901.html (5 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP

llment filtr (qui doit tre numrique) avec une valeur numrique. Par exemple :
[(#TOTAL_BOUCLE) [(#TOTAL_BOUCLE|> {1}|?{'articles','article'})] dans cette rubrique.]

Remarque : De manire gnrale, tous les oprateurs de comparaison de php peuvent tre utiliss comme filtres dans [SPIP 1.8].

Filtres de logos
fichier [SPIP 1.4]. Affect un logo, ce filtre permet de rcuprer directement le nom de fichier correspondant au logo. ||autres filtres Contrairement aux versions prcdentes, [SPIP 1.4] permet de passer des filtres maison sur les logos : la logique est un peu tordue, car il fallait respecter la compatibilit avec SPIP 1.3. Lanalyse se droule comme suit :
q

si le premier filtre nest pas un alignement, SPIP considre quil sagit dun URL et fait un lien du logo vers cette adresse ; si le premier filtre est un alignement, SPIP considre que le deuxime filtre est un URL ; les filtres suivants sont de vrais filtres au sens habituel (y compris des filtres maison dclars dans mes_fonctions.php3 ; pour appliquer un filtre quelconque sans mettre dURL, il faut mettre deux barres. Par exemple : <?php $logo = '[(#LOGO_RUBRIQUE|| texte_script)]'; ?> permet de rcuprer le logo dans la variable php $logo, pour traitement ultrieur (voir ci-dessous pour la signification de | texte_script).

[SPIP 1.8] introduit les filtres hauteur et largeur qui retournent les informations sur la taille (i.e. Hauteur et Largeur) de llment filtr si cest une image. Ces filtres nont quun intrt moyen tre appliqus directement un logo de document puisquil y a dj #HAUTEUR et #LARGEUR disposition pour les documents. Par contre, on peut les appliquer aprs le filtre reduire_image pour connatre la taille exacte de limage rduite. Plus gnralement, on peut les appliquer sur nimporte quelles balises (ou filtre) retournant un balise HTML <img ...>.

http://www.spip.net/fr_article901.html (6 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP

|reduire_image{largeur, hauteur} : SPIP 1.7.1 introduit le filtre | reduire_image, qui permet de forcer une taille maximale daffichage des images et des logos. Ce filtre sutilise par exemple sur un logo darticle de la faon suivante :
[(#LOGO_ARTICLE|right||reduire_image {130})]

Dans cet exemple, logo de larticle apparat align droite, une taille maximale de 130 pixels. Depuis [SPIP 1.8.2], ce filtre peut prendre deux arguments : largeur et hauteur. Si lun de ces deux arguments est gal 0, SPIP ne tient compte que de lautre et calcule cette dimension en conservant les proportions de limage. De plus, ce filtre sapplique aussi la balise #TEXTE et ce sont alors toutes les images que le rdacteur introduit dans le texte grce aux raccourcis SPIP qui sont alors rduites. Ainsi, par exemple,
[(#TEXTE|reduire_image{600,0})]

affiche totues les images insres dans le fil du texte une largeur maximale de 600 pixels. Cela permet de prserver la mise en page mme sans que le rdacteur ait se soucier de la taille des images quil tlcharge sur le site. NB. Si loption cration de vignettes est active dans la configuration du site, ces logos rduits seront des fichiers dimages spcifiques calculs automatiquement par le serveur (idalement, avec lextension GD2 installe sur le serveur), pour les formats accepts par le serveur (avec GD2, habituellement, les formats JPG et PNG). Sinon, cest une version complte de limage qui est affiche, mais avec une taille daffichage fixe directement en HTML.

Autres Filtres
traduire_nom_langue sapplique la balise #LANG et retourne un traduction du code de langue quelle retourne (fr, en, it, etc.) dans cette langue.

Remarque : Les traductions des codes sont faites dans la langue que reprsente ce code et suivent les conventions dcriture de cette langue.
http://www.spip.net/fr_article901.html (7 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP

Ainsi fr sera traduit franais en minuscule, alors que es sera traduit Espaol avec une majuscule. alterner{a,b,c,...} [SPIP 1.8.2] sapplique une balise numrique (en gnral #COMPTEUR_BOUCLE ou #TOTAL_BOUCLE) et affiche largument correspondant la valeur de cette balise . On peut ainsi alterner un affichage dans une boucle. Par exemple, [(#COMPTEUR_BOUCLE|alterner {'white','grey'})] affichera white la premire itration de la boucle, grey la deuxime, white la troisime, grey la quatrime, etc. Ainsi, on peut faire une liste darticle qui utilise une couleur diffrente pour les lignes paires et impaires :

<B_lesarticles> <ul> <BOUCLE_lesarticles(ARTICLES) {par titre}> <li style="background: [(#COMPTEUR_BOUCLE|alterner {'white','grey'})]">#TITRE</li> </BOUCLE_lesarticles> </ul> </B_lesarticles> inserer_attribut{attribut,valeur} [SPIP 1.8.2] permet dajouter un attribut html dans une balise html gnre par SPIP. Par exemple : [(#LOGO_DOCUMENT|inserer_attribut{'alt',#TITRE})] va ajouter un attribut alt avec le titre du document dans la balise img du logo. extraire_attribut{attribut} [SPIP 1.8.2] est linverse du filtre prcdent. Il permet de rcuprer un attribut dune balise html gnre par SPIP. Par exemple, on peut trouver le chemin de la vignette gnre par le filtre reduire_image : <div style="background: url([(#LOGO_ARTICLE||reduire_image {90}|extraire_attribut{src})]) left;"]>#TEXTE</div> parametre_url{parametre,valeur} [SPIP 1.8.2] est un filtre qui permet dajouter des paramtres dans une url gnre par une balise SPIP. Si valeur vaut '' le filtre supprime un paramtre actuellement dans lurl. Si valeur nest pas spcifi, le filtre retourne la valeur actuelle du paramtre. Par exemple, la balise #SELF retourne lurl de la page actuelle, donc :
q

[(#SELF|parametre_url{'id_article'})] rcuprera lid_article prsent dans lurl, [(#SELF|parametre_url{'id_article','12'})] placera une variable id_article gale 12 dans lurl,

http://www.spip.net/fr_article901.html (8 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP


q

[(#SELF|parametre_url{'id_article',''})] effacera lid_article actuellement dans lurl.

On peut par exemple lutiliser pour faire des boutons pour naviguer parmi les documents sur une page :

<BOUCLE_actuel(DOCUMENTS) {id_document}> #LOGO_DOCUMENT <ul> <BOUCLE_precede(DOCUMENTS) {par date} {age_relatif <= 0} {0,1} {exclus}> <li> <a href="[(#SELF|parametre_url{'id_document', #ID_DOCUMENT})]" title="prcdent"> [(#LOGO_DOCUMENT|reduire_image{70})] </a> </li> </BOUCLE_precede> <BOUCLE_suivant(DOCUMENTS) {par date} {age_relatif > 0} {0,1}> <li> <a href="[(#SELF|parametre_url{'id_document', #ID_DOCUMENT})]" title="suivant"> [(#LOGO_DOCUMENT|reduire_image{70})] </a> </li> </BOUCLE_suivant> </ul> </BOUCLE_actuel>

Filtres techniques
Ces filtres ont t introduits par [SPIP 1.4]. entites_html transforme un texte en entits HTML, que lon peut donc implanter dans un formulaire, exemple : [<textarea>(#DESCRIPTIF| entites_html)</textarea>] texte_script transforme nimporte quel champ en une chane utilisable en PHP ou Javascript en toute securit, exemple : <?php $x = '[(#TEXTE| texte_script)]'; ?>. Attention : utilisez bien le caractre ' et non " : en effet, dans le second cas, si votre texte contient le symbole $, le rsultat peut tre catastrophique (affichage partiel, affichage dautre chose, plantage php, etc.).
http://www.spip.net/fr_article901.html (9 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP

attribut_html rend une chane utilisable sans dommage comme attribut HTML ; par exemple, si lon veut ajouter un texte de survol au lien normal vers un article, on utilisera <a href="#URL_ARTICLE" [ title = "(#DESCRIPTIF| supprimer_tags|attribut_html)" ]>#TITRE</a>. liens_absolus [SPIP 1.8.2] sapplique sur une balise de texte et transforme tous les liens que celui-ci contient en liens absolus (avec lurl complte du site). Ce filtre est particulirement utile dans des squelettes de fil rss par exemple. url_absolue [SPIP 1.8.2] marche de la mme faon que le filtre prcdent, mais sapplique une balise qui retourne une url (par exemple #URL_ARTICLE). abs_url [SPIP 1.8.2] combine les deux balises prcdentes et peut donc sappliquer un texte ou une balise durl.

Ajouter ses propres fonctions


Les filtres de SPIP sont des fonctions PHP qui reoivent la balise sur laquelle ils sont appliqus en premier paramtre et retournent le texte afficher. Vous pouvez utiliser directement les fonctions habituelles de PHP, mais galement crer les vtres, sur le modle : <?php function mon_filtre($texte){ $texte = (bidouillages en PHP) ...; return $texte; } ?> Afin de ne pas avoir modifier des fichiers de SPIP (qui risqueraient dtre crass lors dune prochaine mise jour), vous pouvez installer vos fonctions personnelles dans un fichier mes_fonctions.php3 : si SPIP repre un fichier ayant ce nom, il linclut automatiquement. Par exemple, ARNO* a dvelopp le filtre enlettres, qui nest pas inclus dans la distribution standard de SPIP. Ce filtre crit un nombre en toutes lettres ( [(#DATE|annee|enlettres)] = deux mille deux ) ; ce filtre peut tre tlcharg sur http://www.uzine.net/spip_contrib/a... ; il suffit de lajouter dans votre fichier mes_fonctions.php3 pour lutiliser.

http://www.spip.net/fr_article901.html (10 of 11)2006.04.17 19.14.18

[SPIP] Les filtres de SPIP

Filtres avec des paramtres


Depuis [SPIP 1.5], il est possible de passer des paramtres dans les filtres. La syntaxe est :
[(#BALISE|filtre{arg1, arg2}|...)]

Le filtre doit tre dfini de la manire suivante dans mes_fonctions.php3 :


function filtre($texte, $arg1='valeur par defaut1', $arg2='valeur par dfaut 2') { ....calculs.... return (une chaine de caractres); }

On peut ainsi appeler nimporte quelle fonction php, ou sappuyer sur des fonctions dfinies dans SPIP ou dans mes_fonctions.php3, pour peu quelles respectent lordre des arguments (le texte traiter doit tre imprativement le premier argument). Par exemple, pour enlever les points la fin dun texte, on pourra faire : [(#TEXTE|rtrim{'.?!'})]. Depuis [SPIP 1.8], les arguments des filtres peuvent tre des balises (sans codes optionnels ni filtres). Par exemple :[(#TOTAL_BOUCLE|== {#COMPTEUR_BOUCLE}|?{'Fin.',''})] Depuis [SPIP 1.8.2] on peut mettre un balise avec notation tendue en paramtre. Par exemple : [(#DESCRIPTIF| sinon{[(#CHAPO|sinon{#TEXTE}|couper{300})]})]

tlcharger le squelette de cette page

http://www.spip.net/fr_article901.html (11 of 11)2006.04.17 19.14.18

[SPIP] Les boucles rcursives

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Les boucles rcursives


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

Les boucles rcursives sont une fonction trs puissante pour grer la mise en forme de linterface. Leur programmation est particulirement simple, mais leur utilisation demande une bonne matrise logique de lenchanement des boucles. Lappel dune boucle rcursive est trs simple : il suffit dindiquer dans le TYPE de la boucle le nom dune autre boucle :
<BOUCLEn(bouclex)></BOUCLEn>

Il ny a ici aucun critre : en ralit, la boucle n correspond une copie pure et simple de la boucle x. Lensemble de la boucle fonctionne comme si lon avait recopi lintgralit de la boucle x (toutes les balises et le code HTML, ainsi que les textes conditionnels avant, aprs et alternatif) lendroit o lon insre la boucle n. (Il faut bien entendu que la boucle x prcde la boucle n.) Lutilisation la plus simple consiste dupliquer une boucle sans avoir la recopier. Ainsi, toute modification de la boucle dorigine x sera automatiquement duplique dans la boucle n.

http://www.spip.net/fr_article914.html (1 of 2)2006.04.17 19.15.26

[SPIP] Les boucles rcursives

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

Tout lintrt, en ralit, consiste placer la boucle n lintrieur de la boucle x : on obtient ainsi un comportement rcursif : la boucle x contient une boucle n, qui elle-mme reproduit la boucle x qui contient la boucle n, et ainsi de suite, jusqu ce que la boucle x ne donne plus aucun rsultat. Cette technique permet de crer notamment laffichage des thread des forums. Cela devient trs simple : une premire boucle fabrique lentre des threads (les messages qui rpondent directement un article), une seconde boucle affiche les rponses ces messages, et une boucle rcursive provoque la rcursivit sur cette seconde boucle :
<BOUCLE_forum(FORUMS){id_article}> <p>#TITRE <B_reponses> <UL> <BOUCLE_reponses(FORUMS){id_parent} > <LI>#TITRE <BOUCLE_recursive(boucle_reponses)> </BOUCLE_recursive> </BOUCLE_reponses> </UL> </B_reponses> </BOUCLE_forum>

On peut ainsi, en trs peu de lignes, provoquer laffichage de lintgralit de la structure (rubriques, sous-rubriques...) du site.

tlcharger le squelette de cette page

http://www.spip.net/fr_article914.html (2 of 2)2006.04.17 19.15.26

[SPIP] La popularit des articles

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La popularit des articles


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

La notion de popularit, expose ci-dessous, apparat dans SPIP 1.4.

Comment dcompter des visites


Des centaines de mthodes statistiques existent pour dcompter des visites sur un site donn. La plupart donnent des courbes horaires, ou par jour, qui permettent de savoir si son site monte ou descend , et de vrifier quil y a plus de gens sur le net en fin daprs-midi et dans la semaine, que le week-end ou la nuit... Notre objectif est un peu diffrent : il sagit dattribuer chaque article une valeur de popularit refltant assez rapidement une tendance, et permettant de comparer lactivit de diffrents articles, soit de manire globale sur tout le site (hit-parade), soit lintrieur dune rubrique, soit parmi les articles dun mme auteur, etc. La mthode retenue est la suivante (rassurez-vous, vous pouvez sauter cette explication si vous ntes pas laise en maths) : chaque visite sur un article ajoute un certain nombre de points cet article ; 1

http://www.spip.net/fr_article1846.html (1 of 3)2006.04.17 19.15.42

[SPIP] La popularit des articles

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

point si cest un article que lon consulte depuis le site lui-mme en suivant un lien, et 2 points si cest une entre directe depuis un site extrieur (moteur de recherche, lien hypertexte, syndication...) toutes les 10 minutes, le score obtenu est multipli par un petit facteur descompte, qui fait quun point attribu par une visite 10h12 le mercredi ne vaut plus, le lendemain la mme heure, quun demi-point, et, le vendredi 10h12, un quart de point... ; le tout est calcul de manire ce que, dans lhypothse o larticle reoit toujours le mme nombre x de visites par unit de temps, son score se stabilise sur cette valeur x. Autrement dit, si la frquentation de larticle est stationnaire, sa popularit finira par reflter exactement son nombre de visites par jour (modulo le score 2 donn pour les entres directes) ; cette popularit sexprime de deux manires : lune, la popularit_absolue, exprime le score en question (valuation de la frquentation quotidienne de larticle) ; lautre, la popularit_relative, un pourcentage relatif larticle du site ayant la plus forte popularit (popularit_max) ; enfin, la somme de toutes ces valeurs (absolues) sur le site donne la popularit_site, qui permet de comparer la frquentation de deux sites sous spip...

Boucles et balises
Des balises permettent de rcuprer et dafficher ces valeurs dans vos squelettes. La boucle ci-dessous rsume lensemble de ces balises :
<BOUCLE_pop(ARTICLES){id_article} {popularite>0}> <h5>Popularit</h5> Cet article a une popularit absolue gale #POPULARITE_ABSOLUE, soit #POPULARITE % de #POPULARITE_MAX. Au total, ce site fait environ #POPULARITE_SITE visites par jour. La balise la plus utile est #POPULARITE puisquelle donne un pourcentage </BOUCLE_pop>

reprsentant la popularit de larticle relativement larticle le plus populaire du site. Cela permet ainsi de raliser facilement des classements comprhensibles par tous (avec des valeurs allant de 0 100). Les autres balises donnent des valeurs absolues, plus difficiles interprter par les visiteurs du site. Note : bien que les donnes soient reprsentes, dans la base de spip, sous forme de nombres rels, le rendu de toutes ces balises est toujours donn sous la forme dun nombre entier, ce qui donnera, sur des sites trs peu frquents (sites de tests, notamment), des choses amusantes du genre :

http://www.spip.net/fr_article1846.html (2 of 3)2006.04.17 19.15.42

[SPIP] La popularit des articles

Cet article a une popularit absolue gale 1, soit 17 % de 2. Au total, ce site fait environ 5 visites par jour. Enfin, un critre de tri peut se rvler utile : {par popularite}, que lon utilisera par exemple de la manire suivante pour afficher la liste des 10 articles les plus populaires de la rubrique courante :
<BOUCLE_hitparade(ARTICLES) {id_rubrique}{par popularite}{inverse}{0,10}> <li>#TITRE (popularit : #POPULARITE %)</ li> </BOUCLE_hitparade>

(On enlvera {id_rubrique} pour afficher un hit-parade du site entier.)

tlcharger le squelette de cette page

http://www.spip.net/fr_article1846.html (3 of 3)2006.04.17 19.15.42

[SPIP] La gestion des dates

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

La gestion des dates


franais Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION) La boucle catal Deutsch English Espaol italiano

[SPIP 1.6] introduit une srie de critres et de balises pour mieux grer les dates des articles. En voici une liste.

Afficher les dates


#DATE est la date de mise en ligne. (Modifiable aprs la mise en ligne de larticle, de la brve, etc. La date dune rubrique est celle de son lment le plus rcent.) #DATE_REDAC est la date de premire publication. (Modifiable volont, disponible sur les articles seulement.) #DATE_MODIF [SPIP 1.5] est la date de dernire dition de larticle : prcisment, il sagit de la dernire date laquelle cet article a t ouvert en dition quil ait t modifi ou pas. Pratique dans de nombreux cas, mais pas dune rigueur scientifique... (Non modifiable, sauf si on veut la fixer maintenant : il suffit alors... douvrir larticle en dition.)

http://www.spip.net/fr_article1971.html (1 of 4)2006.04.17 19.16.3

[SPIP] La gestion des dates

DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

#DATE_NOUVEAUTES [SPIP 1.6] permet dafficher la date du dernier envoi du mail prsentant les nouveauts. Les filtres |annee, |mois, |jour, |heures, |minutes, |secondes, mais aussi |affdate, |nom_mois, |nom_jour, |saison, etc. sappliquent pour permettre tous les affichages habituels sous divers formats. (Sans ces filtres, les balises #DATE... saffichent en effet au format MySQL : "2001-1201 03:25:02".)

Formater les dates


Une liste complte des filtres pouvant tre appliqus aux dates pour les formater est fournie dans larticle Les filtres de SPIP. Si les balises #DATE... sont utilises sans filtres, alors toutes les informations de date sont affiches dans un format numrique [1] : 2001-12-01 03:25:02 .

Contexte de date
[SPIP 1.6] fournit toutes les boucles un contexte de date. Si lon se trouve lintrieur dune boucle (ARTICLES), (BREVES) ou (RUBRIQUES), la date en question est la date de publication de larticle, de la brve ou la date de dernire modification de la rubrique. Si en revanche on se trouve au premier niveau du squelette (cest--dire en-dehors de toute boucle), la date considre est la date du jour - moins quon ait pass une date dans lURL de la page (voir lexemple plus bas). Dans ce dernier cas, et pour les versions de php suprieures 3.0.12, la date passe dans lURL est analyse avec la fonction strtotime : ainsi ? date=2003, ?date=2003/01 fonctionneront, mais aussi date=-1year (il y a un an), ?date=1march1970 (articles publis le 1er mars 1970), etc.

Critre de date, dge, et dge relatif


Le critre {age} permet de slectionner les articles en fonction de la dure qui spare leur date de publication en ligne avec la date courante. Ainsi {age<30} permettra de ne pas afficher les articles gs de plus de 30 jours.

http://www.spip.net/fr_article1971.html (2 of 4)2006.04.17 19.16.3

[SPIP] La gestion des dates

L{age_relatif} permet de comparer les dates de publication de deux articles : si lon vient de slectionner un article dans une boucle, une seconde boucle place lintrieur de la premire pourra demander les articles publis dans la semaine qui prcde celui-ci, via {age_relatif<=7}{age_relatif>=0}, etc. Les critres {age} et {age_relatif} permettent de distinguer deux articles publis le mme jour (ce ntait pas le cas avant [SPIP 1.6]). On peut donc dsormais programmer des boucles pour obtenir larticle prcdent ou le suivant :
<BOUCLE_art(ARTICLES){id_article}> <BOUCLE_precedent(ARTICLES) {age_relatif>=0}{par date}{inverse}{1,1}> prcdent : <a href='#URL_ARTICLE'>#TITRE</a> #DATE </BOUCLE_precedent> <br /> <b>#TITRE</b> - #DATE <br /> <BOUCLE_suivant(ARTICLES) {age_relatif<0}{par date}{0,1}> suivant : <a href='#URL_ARTICLE'>#TITRE</a> #DATE Attention ! Malgr les apparences les comparaisons de date sont dun </BOUCLE_suivant> maniement dlicat : en effet, cause des dates floues (un article publi un </BOUCLE_art>

mois donn, sans que le jour soit prcis), le calcul de lage_relatif peut donner la valeur zro dans un sens, et pas dans lautre ! Do la dissymtrie des boucles prsentes ci-dessus : dans un sens on cherche le second plus rcent des articles {age_relatif>=0} (car le plus rcent, avec la comparaison nonstricte, ne peut tre que larticle lui-mme) ; dans lautre le plus g des articles publis strictement plus tard. Les critres {jour_relatif}, {mois_relatif} et {annee_relatif} fonctionnent comme lage_relatif, mais prennent en compte des dates arrondies au jour, au mois et lanne respectivement ; par exemple, si lURL comporte la variable ?date=2003-01-01, la boucle suivante donnera tous les les articles du mois de mars 2003
<h3>Articles de [(#DATE|nom_mois)] [(#DATE|annee)] :</h3> <BOUCLE_blog(ARTICLES){mois_relatif=0} {par date}{"<br />"}> <a href='#URL_ARTICLE'>#TITRE</a> ([(#DATE|jour)]/[(#DATE|nom_mois)] </BOUCLE_blog>

La date de rdaction antrieure

Si vous avez activ lutilisation des dates de publication antrieure, la plupart des
http://www.spip.net/fr_article1971.html (3 of 4)2006.04.17 19.16.3

[SPIP] La gestion des dates

critres prsents ci-dessus fonctionnent : il suffit dajouter _redac au critre. Ainsi {age_redac>365} affichera les articles dont la date de publication antrieure remonte plus dun an. Si une boucle slectionne un article dont la date_redac est dfinie, une boucle interne comportant le critre {annee_relatif_redac=0} ira chercher les articles dont la date de publication antrieure appartient la mme anne.

Un exemple de sommaire de site tri par date


A titre dexemple, voici comment on peut afficher tous les articles dun site, tris par mois de publication :
<BOUCLE_articlem(ARTICLES){par date} {inverse}> <BOUCLE_premierdumois(ARTICLES) {id_article}{doublons}> <BR><UL><b> [(#DATE|nom_mois| majuscules)] [(#DATE|annee)] </b> <li><a href="#URL_ARTICLE">[(#TITRE| couper{50})]</a> - [(#DATE|jour)]/[(#DATE| mois)]</li> </BOUCLE_premierdumois> <BOUCLE_MOIS(ARTICLES) {mois_relatif=0}{doublons}{par date}{inverse} [1] le format MySQL. > <li><a href="#URL_ARTICLE">[(#TITRE| couper{50})]</a> - [(#DATE|jour)]/[(#DATE| mois)]</li> </BOUCLE_MOIS> </ul> </BOUCLE_articlem>

tlcharger le squelette de cette page

http://www.spip.net/fr_article1971.html (4 of 4)2006.04.17 19.16.3

[SPIP] Exposer un article dans une liste

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Mise en page : manuel de rfrence

Exposer un article dans une liste


franais catal Deutsch English occitan Trke Espaol italiano Principe gnral Des boucles et des balises La syntaxe des boucles La syntaxe des balises SPIP La boucle ARTICLES La boucle RUBRIQUES La boucle BREVES La boucle AUTEURS La boucle FORUMS La boucle MOTS La boucle SITES (ou SYNDICATION)

SPIP 1.8.2 introduit la balise #EXPOSE. Elle permet de mettre en vidence, dans un menu ou dans une liste, lobjet principal de la page o lon se trouve. Utilise simplement, elle permet de changer le mode daffichage du titre de larticle principal ; par exemple, dans le squelette article.html, on modifiera le style du lien de la manire suivante :
<BOUCLE_principale(ARTICLES){id_article} > <BOUCLE_menu(ARTICLES) {id_rubrique}> <li class='lien#EXPOSE'><a href="#URL_ARTICLE">#TITRE<a></li> </BOUCLE_menu> ... #TEXTE ...

avec les styles suivants :


</BOUCLE_principale>

http://www.spip.net/fr_article2319.html (1 of 3)2006.04.17 19.16.17

[SPIP] Exposer un article dans une liste

La boucle DOCUMENTS La boucle SYNDIC_ARTICLES La boucle SIGNATURES La boucle HIERARCHIE Les critres communs toutes les boucles Les balises propres au site Les formulaires Les boucles de recherche Les filtres de SPIP Les boucles rcursives La popularit des articles La gestion des dates Exposer un article dans une liste

a.lien { color: red; } a.lienon { color: blue; font-weight: bold; }

Lobjet qui est ainsi expos par un affichage diffrent est larticle, la brve, la rubrique, le mot-cl ou lauteur qui appartient au contexte courant. Dans le cas des rubriques, la traverse de la hirarchie est gre, ce qui permet d exposer larborescence des rubriques qui contient larticle affich. Par dfaut, SPIP remplace la balise #EXPOSE par on si lobjet correspond au contexte ; sinon la balise est simplement ignore. Toutefois la balise #EXPOSE accepte un ou deux arguments, qui permettent de prciser ce qui doit safficher sur larticle expos, et ce qui doit safficher sur les autres articles. Ainsi [(#EXPOSE{oui,non})] affichera oui sur larticle expos, et non sur les autres. Avec un peu dastuce il est possible de dsactiver le lien sur larticle expos et dans le mme temps de choisir la feuille de style :
<BOUCLE_menu(ARTICLES){id_rubrique} {"<br>"}> <a [(#EXPOSE{id,href})]="#URL_ARTICLE" class="lien[(#EXPOSE{desactive})]">#TITRE</a> crera le HTML suivant : </BOUCLE_menu> <a href="article1.html" class="lien">Tout sur ma soeur</a><br> <a id="article2.html" class="liendesactive">Tout sur moi</a><br> <a href="article3.html" class="lien">Tout sur ce qui saffiche ainsi : mon frre</a>

Tout sur ma soeur Tout sur moi Tout sur mon frre

Historique :
http://www.spip.net/fr_article2319.html (2 of 3)2006.04.17 19.16.17

[SPIP] Exposer un article dans une liste

Cette fonctionnalit a t introduite par SPIP 1.7.1 avec la balise #EXPOSER. La syntaxe complte de #EXPOSER tait la suivante :
[(#EXPOSER|oui,non)]

Celle-ci est dsormais obsolte. Il est donc conseill dutiliser #EXPOSE, dont la syntaxe complte est plus conforme au modle gnral des balises de SPIP.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2319.html (3 of 3)2006.04.17 19.16.17

[SPIP] SPIP pas pas

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur SPIP pas pas

SPIP pas pas


Pas pas, comment crer un SPIP qui dfie les limites. Mon premier squelette
(je le sors du placard) Comment crire un premier squelette qui marchouille
Rechercher
franais tout le site

Un squelette, plusieurs articles

cest a que a sert... Et voici le premier contexte.

Rechercher

Une rubrique

ou comment faire des listes du contenu de la base Faire des listes avec une boucle SPIP

Boucles en boucles

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral <INCLURE> dautres

plusieurs niveaux de lecture Affichons sur une mme page des lments en provenance de plusieurs endroits.

Grer le cache

et viter de faire ramer le serveur qui na pas que a faire

http://www.spip.net/fr_rubrique144.html (1 of 2)2006.04.17 19.17.47

[SPIP] SPIP pas pas

squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

Des filtres

Le cache, ou comment faire un site dynamique qui ne bouge pas trop.

Subtilits squelettiques Les filtres transforment le contenu de la base de donnes en code HTML prsentable.

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique144.html (2 of 2)2006.04.17 19.17.47

[SPIP] Mon premier squelette

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur SPIP pas pas

Mon premier squelette


franais g, catal occitan Deutsch polski English Portugus Espaol Trke italiano e

Mon premier squelette Un squelette, plusieurs articles Une rubrique Boucles en boucles Grer le cache Des filtres

Si le systme de squelettes peut de prime abord paratre intimidant, cest que ce quon lui demande est suffisamment riche pour lobliger tre complexe. Mais ! Complexe ne veut pas dire compliqu. Voici un exemple minimal de squelette. Matriel requis pour ce tutoriel Un SPIP install quelque part. On supposera, pour commencer, que votre base SPIP contient au minimum une rubrique et deux articles publis. Si ce nest pas le cas, vous pouvez trs vite y remdier en copiant-collant les premiers textes qui vous passent sous la main (vrifiez quand mme quil ne sagit pas de votre dclaration enflamme au petit ami de votre voisin de bureau). Un diteur de texte pour crer et modifier les fichiers utiliss par SPIP. Note : certaines personnes auront le rflexe de vouloir utiliser DreamWeaver (ou autre logiciel graphique) pour modifier les fichiers .html. Cependant pour des exemples simples DreamWeaver compliquera la tche et risque mme de modifier vos fichiers dans votre dos. Il est donc vraiment prfrable dutiliser un diteur de texte

http://www.spip.net/fr_article879.html (1 of 3)2006.04.17 19.17.58

[SPIP] Mon premier squelette

classique (par exemple le bloc-notes sous Windows). Avant dutiliser un squelette, il faut pouvoir lappeler : crez la racine de votre site un fichier tutoriel.php3 contenant les lignes suivantes
<?php $fond = "tutoriel"; $delais = 0; include "inc-public.php3"; ?>

Puis testez dans votre navigateur : http://votresite.net/tutoriel.php3. Pas trs glorieux, nest-ce pas ? Le message derreur vous informe quil manque un fichier. Cest le fameux squelette, que nous allons maintenant crer. A la racine du site, dposez un fichier tutoriel.html, qui contient ce qui suit :
<BOUCLE_article(ARTICLES){id_article=1}> #TITRE </BOUCLE_article>

Puis rechargez la page http://votresite.net/tutoriel.php3. Cest mieux, nest-ce pas ? SPIP est all chercher le titre de larticle n1 de votre base, et la inscrit la place de #TITRE. Si a ne fonctionne pas, vrifiez que votre article n1 est bien publi (et pas en attente ou en cours de rdaction ). Puis ajoutez du HTML et dautres appels de champs SPIP, et vous obtenez rapidement votre article n 1 :
<BOUCLE_article(ARTICLES){id_article=1}> <h1>#TITRE</h1> <b>#CHAPO</b> <div align="justify">#TEXTE</div> </BOUCLE_article>

Ajoutez ensuite les champs manquants pour parfaire laffichage de larticle : #SURTITRE, #LESAUTEURS, #SOUSTITRE, #NOTES, etc. Bien !

http://www.spip.net/fr_article879.html (2 of 3)2006.04.17 19.17.58

[SPIP] Un squelette, plusieurs articles

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur SPIP pas pas

Un squelette, plusieurs articles


franais catal eg, Deutsch polski English Portugus Espaol italiano Mon premier squelette Un squelette, plusieurs articles Une rubrique Boucles en boucles Grer le cache Des filtres

La leon prcdente nous a permis dextraire des donnes de larticle n1 de la base et den faire une page Web. Gnralisons... Notre squelette est bien inutile sil ne sert qu afficher larticle n1. Apprenons-lui afficher nimporte quel article : Pour cela nous allons appeler notre page Web avec un paramtre, du type id_article=2 : dirigez votre navigateur sur lURL http://votresite.net/ tutoriel.php3?id_article=2 . Saffiche... toujours larticle 1 (et pas 2). Modifions dans le squelette tutoriel. html la ligne qui dfinit la boucle article : <BOUCLE_article(ARTICLES){id_article}> (Comme vous le voyez, on remplace simplement {id_article=1} par {id_article} tout court.) Voil : http://votresite.net/tutoriel.php3?id_article=2 vous donne maintenant larticle 2. [1]

http://www.spip.net/fr_article880.html (1 of 2)2006.04.17 19.18.10

[SPIP] Un squelette, plusieurs articles

La BOUCLE_article sexcute dans un contexte o id_article est gal 2 (cest la valeur qui est passe dans lURL). Si on lui prcise {id_article=1} elle va chercher larticle n 1, mais si on lui demande juste {id_article}, elle va chercher larticle dont le numro est indiqu par le contexte (ici lURL). Cliquez maintenant sur : http://votresite.net/tutoriel.php3?id_article=1, http://votresite.net/tutoriel.php3?id_article=2 et http://votresite.net/tutoriel.php3. Voyez-vous la diffrence ? Les deux premires pages vous donnent les articles n1 et 2, la troisime na pas did_article dans son contexte, et gnre une erreur. Bravo ! Votre squelette est maintenant contextuel .
[1] Non ? Il devrait...

tlcharger le squelette de cette page

http://www.spip.net/fr_article880.html (2 of 2)2006.04.17 19.18.10

[SPIP] Une rubrique

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur SPIP pas pas

Une rubrique
franais catal Deutsch English Espaol g, polski Portugus Trke italiano e Mon premier squelette Un squelette, plusieurs articles Une rubrique Boucles en boucles Grer le cache Des filtres

La leon prcdente nous a appris afficher des lments en fonction du contexte. Nous allons ici voir comment ce contexte varie au fur et mesure des BOUCLES rencontres. Modifions notre squelette tutoriel.html de la manire suivante :
<BOUCLE_article(ARTICLES)> #TITRE<BR> </BOUCLE_article>

L, on supprime carrment la condition {id_article}. Attention : cette BOUCLE peut gnrer une page norme si votre base contient dj pas mal darticles : mieux vaut prendre nos prcautions et ajouter tout de suite {0,10} pour limiter aux 10 premiers articles... <BOUCLE_article(ARTICLES){0,10}> Rsultat : en appelant simplement http://votresite.net/tutoriel.php3 (plus besoin did_article dsormais, puisque cette condition a t supprime) les titres des 10 premiers articles publis saffichent, spars chacun par un saut de

http://www.spip.net/fr_article882.html (1 of 2)2006.04.17 19.18.23

[SPIP] Une rubrique

ligne. A partir de l, on voit comment on peut produire le sommaire dune rubrique : affichons les 10 articles les plus rcents appartenant cette rubrique.
<BOUCLE_article(ARTICLES){id_rubrique} {par date}{inverse}{0,10}> <a href="#URL_ARTICLE">#TITRE</a><br> </BOUCLE_article>

Prenons dans lordre : id_rubrique : ne prend que les articles appartenant la rubrique id_rubrique (cf. ci-dessous pour que cette variable soit dfinie dans le contexte de notre BOUCLE_article) ; {par date}{inverse} : trie par date dans lordre dcroissant... {0,10} : ... et prend les 10 premiers rsultats. Enfin, <a href="#URL_ARTICLE">#TITRE</a> va afficher non seulement le titre de larticle mais en plus crer un lien vers cet article. Reste invoquer le squelette, en lui passant le contexte id_rubrique=1 : http://votresite.net/tutoriel.php3?id_rubrique=1 La magie de SPIP tient dans la combinaison de ce type de fonctionnalits. Si vous tes arriv jusquici, cest gagn !

tlcharger le squelette de cette page

http://www.spip.net/fr_article882.html (2 of 2)2006.04.17 19.18.23

[SPIP] Boucles en boucles

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur SPIP pas pas

Boucles en boucles
franais catal polski Deutsch Portugus English Trke Espaol italiano Mon premier squelette Un squelette, plusieurs articles Une rubrique Boucles en boucles Grer le cache Des filtres

Nous savons gnrer une liste de titres dans une rubrique. Maintenant, nous allons afficher, sur la mme page, les lments de la rubrique elle-mme : son titre, son texte de prsentation, etc. Essayez ! Et voici une solution :
<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 http://votresite.net/tutoriel.php3?

id_rubrique=1. Que sest-il pass ici ?

http://www.spip.net/fr_article883.html (1 of 2)2006.04.17 19.18.34

[SPIP] Boucles en boucles

Notre boucle ARTICLES est intgre dans une boucle RUBRIQUES. Le contexte de la boucle ARTICLES est lid_rubrique donn par la boucle RUBRIQUES, qui ellemme va chercher le contexte donn par lURL (id_rubrique=1). Donc nous sommes bien, au niveau des ARTICLES, avec lid_rubrique demand. De ce point de vue rien ne change. En revanche, la boucle RUBRIQUES a permis SPIP de slectionner 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 mme si on appelait aussi #TEXTE dans la boucle ARTICLES. Le fonctionnement arborescent de SPIP garantit que le #TEXTE dun article ne dborde pas de la boucle ARTICLES... Dernire remarque : on a introduit un filtre |justifier sur le champ #TEXTE. Ce filtre modifie le contenu du texte avant de linstaller dans la page finale. Ca vous fait saliver ?

tlcharger le squelette de cette page

http://www.spip.net/fr_article883.html (2 of 2)2006.04.17 19.18.34

[SPIP] Grer le cache

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur SPIP pas pas

Grer le cache
franais catal Deutsch Portugus English Espaol italiano Mon premier squelette Un squelette, plusieurs articles Une rubrique Boucles en boucles Grer le cache Des filtres

Dans les leons prcdentes nous avons commenc laborer des squelettes. Le succs de notre site risque dtre fulgurant. Pensons tout de suite aux pauvres neurones de notre ordinateur. Dans cette leon, rien damusant, rien dessentiel non plus. Les flemmards en profiteront pour roupiller au fond prs du radiateur... Rsum pour ceux-ci et pour les gens presss : dans les fichiers dappel de type tutoriel.php3, rglez $delais = 3600 ; au lieu de 0.

...
Au moment o une page est demande SPIP, celui-ci regarde si, par hasard, il naurait pas dj calcul cette page auparavant. Si lURL demande est http:// votresite.net/tutoriel.php3?id_article=12, SPIP regarde dans son sous-rpertoire CACHE/ si ce fichier existe, et, le cas chant, compare lge du fichier cach aux $delais fixs dans le fichier dappel tutoriel.php3. Dans notre exemple nous avions fix des $delais=0 ; - do un recalcul systmatique des pages chaque consultation du site. Passons $delais=3600 ;

http://www.spip.net/fr_article886.html (1 of 3)2006.04.17 19.18.44

[SPIP] Grer le cache

(cest en secondes). Notre page web nest donc recalcule que si, lorsquun visiteur la demande, sa version cache date de plus dune heure (soit 3600 s.). Sinon, SPIP lit simplement le contenu du fichier cach [1], et renvoie le rsultat sans se connecter la base de donnes (sauf pour y insrer un hit dans les statistiques). Comment fixer ces $delais de manire optimiser le rapport ractivit/charge du serveur ? Pas de solution miracle, mais nhsitez pas fixer un dlai dune journe (i.e. $delais=24*3600 ;) ou plus pour les articles et les rubriques. Les pages de navigation les plus importantes peuvent avoir des $delais plus courts (vingt minutes ou une heure par exemple) si votre site est cens ragir la validation frquente de nouvelles brves et de sites syndiqus... Si vous tes sur un serveur partag avec dautres sites, soyez respectueux des autres et ne prenez pas tout le temps de calcul pour des pages qui changent rarement : ce serait dautant plus idiot que, sur les gros articles ou sur les sommaires, le calcul des pages peut prendre quelques secondes, ce qui ralentit la consultation de vos pages... Comment provoquer une mise jour hors dlai ? Nous venons de dcider de $delais extrmement longs, et nous reprons une fte dortografe dans une page. Correction dans lespace priv... Comment effacer tout de suite cette vilaine cicatrice du site ? Depuis lespace priv, cliquer sur Voir en ligne dclenche le recalcul pour les pages correspondant #URL_ARTICLE ou #URL_RUBRIQUE de larticle ou de la rubrique correspondante. Cest le cas le plus courant. Mais sinon ? Dans la partie Sauvegarde/Restauration de lespace priv, un bouton vider le cache efface tous les fichiers cachs (utile si vous faites plein de modifications et avez un site trs complexe, viter sinon). Toutefois, la solution la plus simple est de demander SPIP, dans la page daccueil de lespace priv, de vous poser un cookie dadministration . Ce cookie sincrustera sur votre navigateur, et SPIP vous reconnatra au moment de vous envoyer la page dans le site public : il vous proposera alors, en bas de page, un bouton Recalculer cette page . Retour au contexte : On revient ici la notion de contexte. Si le squelette est appel avec un contexte did_article, did_rubrique ou encore did_breve, un autre bouton vous est propos quand SPIP dtecte le cookie : Modifier cet article (ou rubrique, ou brve) , qui vous mne directement sur la page correspondante dans le back-office. Merci qui ?
http://www.spip.net/fr_article886.html (2 of 3)2006.04.17 19.18.44

[SPIP] Grer le cache

Derniers dtails : pour des raisons videntes, le moteur de recherche ne dclenche pas de cache, et les pages avec forum sont ractualises ds quune nouvelle contribution est envoye. le rpertoire CACHE/ dans larborescence du site est dcoup en 16 sousrpertoires numrots 0, 1, 2... 9, A, B... F, dans lesquels les fichiers cachs se distribuent quasi-alatoirement ; cela sappelle hasher le cache et rien que pour cela mrite bien quon le mentionne. les fichiers cachs sont exploits mme si la base de donnes est tombe , ce qui garantit le site contre des pannes transitoires du serveur mySQL.
[1] Pour les spcialistes, il sagit en fait dun include PHP du fichier correspondant, permettant dexcuter du code depuis le cache...

tlcharger le squelette de cette page

http://www.spip.net/fr_article886.html (3 of 3)2006.04.17 19.18.44

[SPIP] Des filtres

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur SPIP pas pas

Des filtres
franais catal Deutsch Portugus English Espaol italiano Mon premier squelette Un squelette, plusieurs articles Une rubrique Boucles en boucles Grer le cache Des filtres

Si les BOUCLES permettent de structurer la page de manire logique, reste prsenter les donnes de manire esthtique. Question dizahgne SPIP ne peut rien pour vous, mais sachez user de ses philtres... Une donne stocke dans la base de donnes se prsente comme un bloc de texte, et on peut avoir envie de manipuler sa valeur avant de lafficher lcran. Les filtres sont faits pour a : les filtres les plus utiliss (ils sont appels automatiquement) sont |typo et | propre ; le premier est un correcteur typographique, dont la mission principale est dajouter des espaces inscables o il en faut (cf. laide en ligne de SPIP) ; le second sintresse aux paragraphes, aux raccourcis SPIP (italiques, gras, intertitres, etc.) il nest appliqu par dfaut quaux textes longs (#TEXTE, #CHAPO, etc.) dautres filtres sont trs utiles : citons |majuscules ( la fonctionnalit vidente), |justifier ou |aligner_droite (qui dfinissent lalignement du texte par rapport aux bords verticaux), ou encore lsotrique |saison (qui affiche t si la variable est une date comprise entre le 21 juin et le 20 septembre)... Pour utiliser un filtre il faut entourer la variable de parenthses et de crochets (on

http://www.spip.net/fr_article889.html (1 of 3)2006.04.17 19.18.55

[SPIP] Des filtres

verra plus tard les implications) : [blah blah (#VARIABLE|filtre) bloh bloh] On peut enchaner les filtres les uns la suite des autres [1] : ainsi [(#DATE| saison|majuscules)] affichera-t-il HIVER . Exercice portant sur lensemble des leons prcdentes : Afficher en majuscules les titres des 10 articles les plus rcents de la rubrique passe en contexte, et mettre en tte de page la saison courante (cest--dire la saison laquelle a t publi larticle le plus rcent de toute la base).

...
Pourquoi ces crochets ? Supposons que votre base contient des articles dats et dautres non dats. La variable #DATE vaut 2001-07-01 10-53-01 (date au format mySQL) dans le premier cas, et 0000-00-00 00-00-00 dans le second. Pour afficher la date dans un joli (?) cadre, on va utiliser, dans le squelette, les lignes suivantes :
[<table border="1"><tr><td> (#DATE|affdate) </td></tr></table>]

Ici le filtre |affdate affiche la date en lettres (au format 1er juillet 2001 ), mais renvoie une chane vide si la date est inconnue (gale 0000... ). Les crochets dlimitent ce quil faut afficher autour de la date si le resultat entre parenthses nest pas une chane vide. Rsultat : seuls les articles dats provoquent laffichage dun tableau contenant la date. Un squelette bien construit dfinira prcisment ce quil faut afficher ou pas en fonction du contenu... Les filtres servent aussi a.
[1] On peut appeler a un pipeline ... Notons que certains filtres de prsentation peuvent tre avantageusement remplacs par des feuilles de style. Ainsi |majuscules est quivalent lattribut CSS texttransform: uppercase , et |justifier text-align: justify . Lire Spip et les feuilles de style pour plus de dtails sur les styles CSS offerts par SPIP.

http://www.spip.net/fr_article889.html (2 of 3)2006.04.17 19.18.55

[SPIP] Guide des fonctions avances

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Guide des fonctions avances


Au-del du manuel de rfrence, vous trouverez ici une description dtaille des fonctions plus avances la disposition du webmestre. Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface graphique Le calendrier de SPIP 1.8.2

Rechercher
franais tout le site

Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les

http://www.spip.net/fr_rubrique257.html (1 of 2)2006.04.17 19.20.44

[SPIP] Guide des fonctions avances

squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

Images typographiques
Titres graphiques avec la police de son choix

Couleurs automatiques Traitement automatis des images La structure de la base de donnes

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique257.html (2 of 2)2006.04.17 19.20.44

[SPIP] Spip et les feuilles de style

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Spip et les feuilles de style


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface catal Deutsch English Espaol italiano

SPIP 1.2 Lorsque lon utilise les raccourcis typographiques dans les articles dans SPIP (permettant par exemple de mettre en gras, en italique, crer des liens hypertextes, des intertitres, etc.), SPIP produit les balises HTML ncessaires ces effets, chacune de ces balises tant alors associe une classe de style CSS. Par exemple, Ceci est un [lien->http://www.uzine.net] est transform en code HTML ainsi : Ceci est un <a href="http://www.uzine.net" class="spip_out">lien</a> Le code HTML est ainsi complt par lappel un style CSS intitul spip_out . Lutilisateur peut donc pousser la personnalisation de son interface graphique en dfinissant ce style spip_out (couleur diffrente, fond color, police utilise...). La plupart des raccourcis typographiques de SPIP peuvent ainsi tre paramtrs avec des feuilles de style ; certains sont trs utiles, dautres seront rservs aux webmestres qui souhaitent obtenir des effets exotiques...

http://www.spip.net/fr_article1177.html (1 of 8)2006.04.17 19.21.0

[SPIP] Spip et les feuilles de style

graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

O se trouve la dfinition de ces feuilles de style ?


Lors de linstallation de SPIP, avec les squelettes fournis en standard, la dfinition des feuilles de style se trouve dans le fichier : spip_style.css Vous pouvez modifier ces styles (cest mme conseill), mais il est prfrable de le faire dans votre propre fichier CSS afin de pas voir vos ajouts crass lorsque vous installerez une nouvelle version de SPIP. Vous pouvez aussi bien sr intgrer directement des dfinitions de styles dans vos squelettes. Notez bien : la notion de feuille de style, ou cascading style sheets, nest pas une norme propre SPIP, il sagit dun standard du Web. De trs nombreuses documentations existent sur ce sujet par ailleurs ; consulter par exemple la page du W3C ce sujet. Afin de suivre la suite de la prsente explication, il est vivement conseill douvrir le fichier spip_style.css dans un diteur de texte.

Les liens hypertextes


Les deux premires dfinitions permettent de modifier le comportement de a et a :hover ; trs classiques, elles concernent tous les liens affichs sur votre page Web (afficher les liens sans soulignement, et rgler le survol des liens hypertextes). Viennent ensuite trois dfinitions propres aux raccourcis typographiques de SPIP : a.spip_in , a.spip_out , a.spip_url . a.spip_in concerne les liens lintrieur de votre propre site. Par exemple : Ceci est un [lien interne->article1177] a.spip_out concerne les liens vers lextrieur de votre site. Par exemple : Ceci est un [lien externe->http://www.uzine.net] a.spip_url traite les adresses URL transformes en lien hypertexte. Par exemple :

http://www.spip.net/fr_article1177.html (2 of 8)2006.04.17 19.21.0

[SPIP] Spip et les feuilles de style

[->http://www.uzine.net] (ce raccourci affiche directement lURL, avec un lien hypertexte vers cette adresse, ainsi : http://www.uzine.net). Le principal intrt de ces trois styles diffrents est de permettre de diffrencier graphiquement les liens internes au site et les liens vers dautres sites.

Les intertitres
Les intertitres, crs par le raccourci suivant : {{{Un intertitre}}} peuvent tre dfinis par le style h3.spip. Ce style est sans doute lun des plus importants, car il permet de dfinir la taille, la police et le positionnement des intertitres dans les articles : vous serez certainement amens le modifier en fonction de vos choix graphiques et typographiques. Par dfaut, la dfinition en est :
h3.spip { font-family: Verdana,Arial,Helvetica, sans-serif; font-weight: bold; font-size: 120%; text-align: center; margin-top: 2em; margin-bottom: 1.5em; padding: 0em; }

Notez en particulier les attributs margin et padding qui permettent dagir sur lespacement de lintertitre avec les paragraphes prcdent et suivant. Sans ce rglage, il y aurait de fortes chances que lintertitre serait soit trop coll au reste du texte, soit trop espac (selon les gots...).

Code et cadre
Les lments de code, dfinis par le raccourci : <code>Du code dans le texte</code>

http://www.spip.net/fr_article1177.html (3 of 8)2006.04.17 19.21.0

[SPIP] Spip et les feuilles de style

sont paramtrs par le style .spip_code. Peu utilis, sauf dans le cas dune documentation technique (comme celle-ci) o lon doit citer des morceaux de code informatique, des noms de fichiers ou de rpertoires... Introduit dans SPIP 1.3, la balise <cadre>...</cadre> permet de prsenter du code source dans un tableau (lment de formulaire) dans lequel il est facile copier-coller le texte. La feuille de style associe est : .spip_cadre, dfinie ainsi par dfaut :
.spip_cadre { width : 100%; background-color: #FFFFFF; padding: 5px; }

Les notes de bas de page


Les notes de bas de page, dfinies par le raccourci : Le texte[[Une note de bas de page]] sont paramtrs par le style p.spip_note. Souvent inutile, puisque les notes peuvent tre modifies directement en HTML lors de lemploi de la balise #NOTES dans vos squelettes.

Les tableaux
Les tableaux sont dfinis dans SPIP de la faon suivante : | | | | | {{Nom}} | {{Date de naissance}} | {{Ville}} | Jacques | 5/10/1970 | Paris | Claire | 12/2/1975 | Belfort | Martin | 1/31/1957 | Nice | Marie | 23/12/1948 | Perpignan |

ce qui donne : Date de naissance Jacques 5/10/1970 Nom Ville Paris

http://www.spip.net/fr_article1177.html (4 of 8)2006.04.17 19.21.0

[SPIP] Spip et les feuilles de style

Claire Martin Marie

12/2/1975 1/31/1957 23/12/1948

Belfort Nice Perpignan

Les feuilles de style permettent de paramtrer finement laffichage de tels tableaux :


table.spip { } table.spip tr.row_first { background-color: #FCF4D0; } table.spip tr.row_odd { background-color: #C0C0C0; } table.spip tr.row_even { background-color: #F0F0F0; } table.spip td { padding: 1px; text-align: left; vertical-align: center; }

table.spip permet de modifier le comportement gnral du tableau (notamment sa position, gauche, centr...) ; table.spip tr.row_first dfinit le comportement de la premire ligne du tableau (ici en jaune) (pour que la premire ligne soit prise en compte, il faut que les lments quelle contient soient placs en gras) ; table.spip tr.row_odd pour les lignes impaires ; table.spip tr.row_even pour les lignes paires ; table.spip td permet de modifier le comportement des cases du tableau. Un des intrts repose sur le choix de couleurs diffrentes pour row_odd et row_even , permettant de faire une prsentation de couleurs alternes pour les lignes dun tableau (ici, gris clair et gris fonc).

Ligne de sparation horizontale


http://www.spip.net/fr_article1177.html (5 of 8)2006.04.17 19.21.0

[SPIP] Spip et les feuilles de style

Une ligne de sparation horizontale, dfinie par : ---peut tre modifie par : hr.spip.

Gras et italique
Le gras et litalique sont dfinis par les raccourcis : Du texte {{en gras}}, du texte {en italique} Ils peuvent tre modifis par les styles : strong.spip et i.spip. Styles peu utiles. historique : dans les versions antrieures [SPIP 1.8], le texte en gras est dclar par le style b.spip>.

Les paragraphes
Les paragraphes crs par SPIP (en laissant des lignes vides entre les paragraphes) peuvent tre modifis par le style : p.spip. A priori, peu utile, car on peut directement paramtrer le comportement des lments de texte en HTML.

Les formulaires
Dans lespace public, diffrents formulaires sont utiliss pour le moteur de recherche interne, linterface de rdaction des messages des forums, les inscriptions lespace priv... Les feuilles de style sont : .forml, .spip_encadrer, .spip_bouton, . formrecherche. Par dfaut, ils sont dfinis ainsi :

http://www.spip.net/fr_article1177.html (6 of 8)2006.04.17 19.21.0

[SPIP] Spip et les feuilles de style

largeur de ces cases, et la couleur du fond ;

.forml { width: 100% ; background-color: #FFDDAA;} .spip_encadrer { background-color: #EEEEEE; } .spip_bouton { background-color: #FFCC00;} .formrecherche { width: 100% ; background.forml dfinit les cases de texte des formulaires ; utile pour dfinir la color: #FFDDAA;}

.spip_encadrer ; lorsquun formulaire propose diffrentes parties , la sparation entre ces diffrentes parties peut tre paramtres avec ce style (par exemple, encadrer chaque partie, crer un espace avant ou aprs...) ; .spip_bouton modifie laspect du bouton de validation du formulaire ; .formrecherche modifie laspect de la case Rechercher du moteur de recherche.

Les images et les documents


Depuis [SPIP 1.8], le style des images et des documents insrs automatiquement avec les raccourcis <docXX|left> et <imgXX|right> peut tre control avec les classes : .spip_documents pour la bote qui contient la vignette et les informations du document, .spip_doc_titre qui contrle laffichage du titre du document, .spip_doc_descriptif pour le descriptif du document.

Conclusion
Vous remarquerez que, par dfaut, certaines feuille de style ne sont pas dfinies. Elles peuvent tre considres comme trs accessoires (rserves aux webmestres voulant obtenir des effets graphiques trs spcifiques). En rgle gnrale, les styles qui provoquent des modifications graphiques spectaculaires sur un site, par ailleurs simples paramtrer, sont celles qui concernent : les liens de lensemble de la page, a et a:hover, le comportement des intertitres, h3.spip, les formulaires.

http://www.spip.net/fr_article1177.html (7 of 8)2006.04.17 19.21.0

[SPIP] <INCLURE> d'autres squelettes

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

<INCLURE> dautres squelettes


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface graphique catal English Espaol italiano

[SPIP 1.4] Lorsque lon a des lments de texte et des boucles communs plusieurs fichiers, on peut vouloir extraire ces lments des pages o ils se trouvent, les installer dans un fichier spar, et les appeler depuis les autres squelettes. De cette faon, le code commun est regroup dans un unique fichier, ce qui facilite notamment les modifications qui concernent plusieurs squelettes dun seul coup. Les habitus de PHP connaissent la fonction include, dont le principe est similaire ce qui est prsent ici. Dans SPIP, on peut appeler un squelette depuis un autre squelette grce la balise <INCLURE> (on peut aussi utiliser <INCLUDE>, qui est identique). Sa syntaxe gnrale est : <INCLURE(fichier.php3){paramtre}...> Le fichier.php3 est le nom du fichier que lon veut intgrer dans sa page. Par exemple, imaginons que toutes les pages du site affichent les mmes informations en bas de page. On regroupe alors le code SPIP et HTML de ce pied de page dans un fichier pied.html , squelette lui-mme appel par le fichier pied. php3 (toujours selon le principe des couples de fichiers destins appeler des squelettes). Il suffit dajouter la ligne suivante, lendroit voulu, dans chacun des squelettes voulant afficher le bas de page :

http://www.spip.net/fr_article1828.html (1 of 3)2006.04.17 19.21.14

[SPIP] <INCLURE> d'autres squelettes

Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

<INCLURE(pied.php3)>

Depuis [SPIP 1.8.2] la distribution inclut un fichier page.php3 qui permet dappeler tout squelette en passant en paramtre le fond . Ainsi on pourra sviter le fichier pied.php3 et remplacer avantageusement lappel ci-dessus par :
<INCLURE(page.php3){fond=pied}>

Pour une rflexion plus large sur ce quapporte cette nouvelle possibilit dappel de squelettes ainsi que la balise #DOSSIER_SQUELETTE, on pourra consulter cet article de Spip Contrib. Certaines inclusions peuvent dpendre du contexte. Par exemple, imaginons un squelette hierarchie , qui affiche le chemin menant une rubrique depuis la racine du site ; on appelerait cette page par une URL de la forme : hierarchie.php3?id_rubrique=xxx . Dans les squelettes voulant afficher la hirarchie partir de la rubrique courante, il faut donc indiquer que le paramtre concern est {id_rubrique} ; si ncessaire, on aura cr une boucle permettant de rcuprer le numro de la rubrique concerne, et on installera le code suivant lintrieur de cette boucle :
<INCLURE(hierarchie.php3){id_rubrique}>

Note : dans ce cas, le squelette hierarchie.html commencera certainement par une boucle rubriques avec le critre {id_rubrique}... On peut imaginer que, dans certains squelettes, on dsire rcuprer non pas la hirarchie en fonction dune rubrique variable (au gr du contexte, par exemple le paramtre pass dans lURL), mais en fonction dune rubrique dont on connat lavance le numro. Pour cela, on peut fixer la valeur du paramtre ainsi :
<INCLURE(hierarchie.php3){id_rubrique=5}>

N.B. Il est possible dindiquer plusieurs paramtres dans la balise <INCLURE> ; cependant ce cas est trs rare en pratique. Evitez dajouter des paramtres inutiles, qui rendront le cache moins efficace et votre site plus lent. N.B. Le fichier inclus tant lui-mme un squelette, il disposera donc de sa propre
http://www.spip.net/fr_article1828.html (2 of 3)2006.04.17 19.21.14

[SPIP] <INCLURE> d'autres squelettes

valeur de $delais [1]. Cela peut savrer pratique pour sparer des lments lourds du site, que lon recalculera peu souvent, et quelques lments dynamiques ncessitant une mise jour frquente (par exemple, syndication).

Dans un contexte multilingue


Si le multilingisme de SPIP est activ depuis SPIP 1.7.1 il est possible de dfinir la langue de lenvironnement dun squelette inclus en utilisant le paramtre {lang}. Sil ny a pas de paramtre de langue utilis, cest--dire sous la forme <INCLURE (pied.php3)>, le squelette inclus est appel en utilisant la langue par dfaut du site, <INCLURE(pied.php3){lang=es}> appelle le squelette en espagnol. Bien sr, vous pouvez remplacer es par le code ISO de la langue souhaite : en pour langlais, fr pour le franais, vi pour le vietnamien, etc. (voir Internationaliser les squelettes), et <INCLURE(pied.php3){lang}> appelle le squelette dans la langue courante du contexte dinclusion. Il convient de noter que cela rend possible dutiliser des codes de fichiers de langue dans les squelettes inclus (voir Internationaliser les squelettes). Les squelettes inclus supportent les mmes mechanismes de slection par langue que les squelettes de premier niveau . En dautres termes les squelettes inclus (ici pied.html) peuvent tre dtermins par rapport une certaine langue (pied.es.html, par exemple) de la mme manire que tout autre squelette. Encore une fois, voir Internationaliser les squelettes pour plus de details.
[1] Rappelons que la variable $delais dfinit la priodicit de mise jour du cache. Voir la section Le fichier .php3 dans Principe gnral .

tlcharger le squelette de cette page

http://www.spip.net/fr_article1828.html (3 of 3)2006.04.17 19.21.14

[SPIP] Raliser un site multilingue

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Raliser un site multilingue


franais catal English Espaol italiano

La modification la plus importante quapporte SPIP 1.7 est sa gestion naturelle des sites multilingues. La totalit de cet article de documentation concerne SPIP 1.7.
Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules

Pralable : quest-ce quun site multilingue ?


Il nest pas question dans cet article de rdiger un tutoriel complet sur les sites multilingues : dune part, il y a certainement plusieurs visions de ce quon appelle multilinguisme ; dautre part, nous manquons toujours de recul pour pouvoir dfinir la meilleure mthode . Vous trouverez donc ci-dessous une revue des diffrents outils que SPIP propose pour grer des sites multilingues ; vous de les utiliser, et discutons-en dans les espaces prvus cet effet (wiki, listes de discussion, etc.) Mais avant de lire, oubliez un peu votre projet du jour, et pensez aux situations suivantes : un site de posies, classes par thmes (rubriques) ; un site de documentation pour, par exemple, un logiciel comme SPIP ; un site institutionnel en 25 langues ; un site corporate bilingue ; le site dune association bulgare avec quelques pages en anglais.

http://www.spip.net/fr_article2124.html (1 of 8)2006.04.17 19.21.27

[SPIP] Raliser un site multilingue

mathmatiques en LaTEX SPIP 1.8 : linterface graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

Le site de posie choisira plutt ses langues article par article ; la documentation de SPIP, pour sa part, les ventile par secteurs (rubriques de premier niveau), et affiche les traductions disponibles pour chaque article, quand ces traductions sont disponibles. Le site institutionnel en 25 langues ne pourra sans doute pas fournir les 25 traductions en mme temps, mais cherchera tout de mme conserver des arborescences parallles ; le site corporate bilingue aura obligatoirement une traduction en face de chacun des articles, et une arborescence de rubriques en deux parties, la partie anglaise tant clone sur la partie en auvergnat ; lassociation bulgare affectera langlais un secteur particulier de son site, le reste des secteurs tant tous en bulgare (par dfaut).

Principe
Pour pouvoir autoriser ces situations diffrentes, et dautres encore, le modle mis en place dans SPIP consiste dterminer une langue pour chaque article, chaque rubrique et chaque brve. Dans lespace public comme dans lespace priv, cette langue dtermine le mode de correction typographique qui est appliqu aux textes ; dans lespace public cela dtermine galement la langue des lements insrs par SPIP autour de ces objets : dates et formulaires principalement. Pour crer un site multilingue avec SPIP, il faut dabord configurer le site en consquence : dans la configuration du site, la section langues bien entendu. L vous pourrez activer la gestion du multilingue, et choisir les langues que vous utiliserez sur votre site.

Configurer lespace priv


Pour grer plus facilement le site, on peut choisir dans la configuration du site avec quelle prcision seffectuera le rglage des langues, ce qui permet de masquer linterface l o elle nest pas ncessaire et de limiter les risques derreurs [1]. SPIP propose trois niveaux dinterface diffrents pour choisir les langues affectes aux articles (et brves, etc.) ; par ordre croissant de complexit : Par secteur (rubrique de premier niveau) : chaque rubrique de la racine du site correspond une langue modifiable par les administrateurs, qui concerne toutes ses sous-rubriques ainsi que les articles et les brves y publis ; ce rglage devrait satisfaire les besoins de la plupart des sites multilingues tout en conservant une structure et une interface simples. Par rubrique : de manire plus fine, avec ce rglage, on peut changer la langue pour chacune des rubriques du site, pas seulement celles de premier niveau.

http://www.spip.net/fr_article2124.html (2 of 8)2006.04.17 19.21.27

[SPIP] Raliser un site multilingue

Par article : la langue peut tre modifie au niveau de chaque article ; ce choix est compatible avec les prcdents (on peut par exemple choisir la langue par rubrique mais appliquer des exceptions de-ci de-l certains articles) et permet toutes les finesses imaginables, mais attention ne pas produire un site la structure incomprhensible...

Blocs multilingues
[SPIP 1.7.2] Certains objets, comme les auteurs ou les mots-cls, peuvent sorthographier diffremment selon quils sont affects un article dans une langue ou dans une autre. Cependant, il serait absurde de concevoir des traduction dun mot-cl ou traduction dun auteur , car cest bien le mme auteur qui signe les deux articles, ou le mme mot-cl (mme concept ) quon leur attache. Ces objets nont donc pas de langue au sens de SPIP, mais il est tout de mme possible, laide des blocs multi , de les faire safficher dans la langue du contexte dans lequel ils sont invoqus (pour le dire plus simplement : faire que le mot-cl Irak saffiche Iraq quand il est affect un article en anglais). Le bloc multi est un nouveau raccourci de SPIP, dont la structure est relativement intuitive :
<multi>chane 1 [xx] chane 2 [yy] chane 3 ... </multi>

Pour reprendre lexemple du mot-cl, son titre serait entr sous la forme :
<multi>[fr]Irak [en]Iraq</multi>

Si un bloc multi est appel safficher dans une langue qui nest pas prvue, cest toujours la premire partie du bloc qui saffiche ( chane 1 dans le premier exemple, Irak dans le second). Cela, afin de ne jamais avoir daffichage vide [2]. NB : les blocs multi peuvent aussi tre utiliss, selon la mme structure, dans les squelettes, cf. Internationaliser les squelettes.

Boucles et balises : comment faire


Une fois lespace priv rgl aux petits oignons, passons maintenant au site public. H oui, mme si chaque article dispose maintenant de sa propre langue judicieusement choisie (selon le mcanisme expliqu plus haut), les squelettes
http://www.spip.net/fr_article2124.html (3 of 8)2006.04.17 19.21.27

[SPIP] Raliser un site multilingue

doivent bien pouvoir en tenir compte dans laffichage du site. 1. Une bonne nouvelle pour commencer : le multilinguisme des squelettes est pour la plus grande part totalement naturel ; il nest pas ncessaire de faire des squelettes diffrents pour afficher des articles de langues diffrentes. Un mme squelette adapte automatiquement son affichage la lange courante. Ainsi tous les lments affichs autour et dans un article dune langue donne, seront affichs dans cette langue. Cela concerne aussi bien la date de publication de larticle que les formulaires de rponse au forum, de signature dune ptition, etc. Plus gnralement : toute balise SPIP incluse dans une boucle ARTICLES sera affiche dans la langue de larticle (de mme pour les rubriques et les brves). Exemple : si votre page daccueil contient un sommaire affichant les dix derniers articles publis ainsi que leur date de publication, la date des articles en vietnamien saffichera en vietnamien, celle des articles en crole de la Runion safficheront en crole de la Runion, etc. Note : ce fonctionnement suppose que la langue de larticle fait lobjet dune traduction dans SPIP. Ainsi, si un article est crit en volapck mais que votre version de SPIP nest pas encore traduite en volapck (nous vous invitons bien videmment corriger cette lacune en participant leffort de traduction), la date de larticle saffichera en toutes lettres certes, mais dans une langue par dfaut - le franais probablement. 2. Le sens de lcriture Si votre site contient des langues scrivant de gauche droite (la plupart des langues) mais aussi des langues scrivant de droite gauche (notamment larabe, lhbreu ou le farsi), il faudra de petits complments au code HTML pour que laffichage se fasse sans accroc [3]. SPIP offre cet effet une balise spcifique : #LANG_DIR, qui dfinit le sens dcriture de la langue courante. Cette balise est utilisable comme valeur de lattribut dir dans la plupart des tags HTML (cela donne donc ltr pour les langues scrivant de gauche droite, et rtl pour les autres [4]). Une boucle daffichage du sommaire devient donc :

http://www.spip.net/fr_article2124.html (4 of 8)2006.04.17 19.21.27

[SPIP] Raliser un site multilingue

<BOUCLE_sommaire(ARTICLES){par date} {inverse}{0,10}> <li dir="#LANG_DIR">[(#DATE|affdate)]: <a href="#URL_ARTICLE">#TITRE</a></li> </BOUCLE_sommaire>

Si la mise en page repose sur des lments aligns droite ou gauche, ceux-ci devront tre inverss pour les langues crites de la droite vers la gauche : on peut tout de suite penser remplacer tous [5] les lments du squelette marqus left ou right par les balises #LANG_LEFT et #LANG_RIGHT. Pour ce qui est de la dfinition de la page elle-mme, il est alors judicieux de commencer par donner la langue de llment demand, et la direction gnrale de la page :
<html lang="#LANG"> <body dir="#LANG_DIR"> ... </body> </html>

3. Les liens de traduction SPIP propose un systme de traduction entre articles : on peut spcifier quelles sont les diffrentes traductions dun article (note : ces traductions sont ellesmmes des articles part entire). Le critre {traduction} permet alors, dans une boucle ARTICLES, de rcuprer toutes les versions dun mme article. Par exemple, pour afficher toutes les traductions de larticle courant :
<BOUCLE_traductions(ARTICLES) {traduction}{exclus}> [<a href="#URL_ARTICLE" dir="#LANG_DIR">(#LANG| traduire_nom_langue)</a>] Notons le critre {exclus}, qui permet de ne pas afficher la version courante, et </BOUCLE_traductions>

le filtre {traduire_nom_langue} qui fournit le nom vritable de la langue partir de son code informatique (cela permet dafficher franais au lieu de fr , English au lieu de en ...).

Un critre complmentaire {origine_traduction} (pour les plus acharns) permet de slectionner uniquement la version originale de larticle courant. Une page du wiki de spip-contrib rassemble des exemples de boucles utilisant ces critres : http://www.spip-contrib.net/spikini.... 4. lments supplmentaires

http://www.spip.net/fr_article2124.html (5 of 8)2006.04.17 19.21.27

[SPIP] Raliser un site multilingue

[SPIP 1.7.2] introduit dautres lments permettant de fabriquer des sites multilingues : le critre {lang_select} sert forcer la slection de la langue pour la boucle (AUTEURS), qui normalement ne le fait pas ( linverse, le critre {lang_select=non} permet de dire aux boucles (ARTICLES), (RUBRIQUES) ou (BREVES) de ne pas slectionner la langue). la variable de personnalisation $forcer_lang indique SPIP quil doit vrifier si le visiteur dispose dun cookie de langue, et si oui le renvoyer vers la page correspondante. Cest ce que fait la page de connexion lespace priv livre en standard avec SPIP. les balises #MENU_LANG (et #MENU_LANG_ECRIRE) affichent un menu de langue qui permet au visiteur de choisir cette page en ... . La premire balise affiche la liste des langues du site ; la seconde la liste des langues de lespace priv (elle est utilise sur la page de connexion lespace priv). enfin, les critres optionnels (cf. SPIP 1.7, 1.7.2) permettent dutiliser une mme boucle (en fait, un mme squelette) pour afficher soit tous les articles du site dans toutes les langues, soit seulement les articles dans la langue passe dans lURL. a peut tre utile dans les backend, par exemple, ou dans les boucles de recherche :
<BOUCLE_recents(ARTICLES){lang?}{par date}{inverse}{0,10}> <BOUCLE_recherche(ARTICLES){lang?} {recherche}{par points}{inverse}{0,10}>

Des squelettes internationaux pour un site massivement multilingue


Ce qui prcde nous a permis de rendre multilingue la partie proprement SPIP de notre squelette : tout ce qui est issu des boucles saffiche dans le bon sens, avec la bonne typographie, et les lments produits par SPIP (formulaires, dates...) sont dans la langue demande. Pour un site prsentant un nombre modeste de langues (bilingue par exemple), ou pour lequel il existe une langue principale et quelques langues annexes, on pourrait en rester l. Les textes figs prsents dans les squelettes, cest--dire les mentions crites directement dans le HTML comme Plan du site , Espace de rdaction , Rpondre ce message ... peuvent dans certains cas rester dans une seule langue ; ou alors, un site bilingue pourra utiliser des squelettes spars pour chacune des deux langues.
http://www.spip.net/fr_article2124.html (6 of 8)2006.04.17 19.21.27

[SPIP] Raliser un site multilingue

Cependant, si vous voulez raliser et grer efficacement un site prsentant beaucoup de langues part entire, il devient illusoire de maintenir des squelettes spars, ou dimposer une navigation dans une langue unique (mme en anglais ou en espranto...). Pour raliser un jeu de squelettes unique fonctionnant dans toutes les langues, il faut internationaliser les squelettes afin de modifier les textes indpendamment du code HTML qui les contient (qui reste, lui, fig dune langue lautre). Cette tche ncessite de mettre un peu les mains dans le cambouis et fait lobjet dun article spar.

Dtails annexes
Les raccourcis typographiques <code> et <cadre> produisent toujours un texte crit de gauche droite, mme si la langue de larticle scrit normalement de droite gauche. En effet ces deux raccourcis sont destins afficher du code ou des donnes informatiques, qui sont peu prs toujours crits de gauche droite (et, la plupart du temps, en caractres occidentaux). Toujours en ce qui concerne le sens dcriture, notons que les attributs left et right du HTML sont aussi souvent prsents dans les feuilles de style. Cela veut dire que vous devrez peut-tre inclure la partie correspondante de la feuille de style dans vos squelettes (pour utiliser les balises #LANG_LEFT et #LANG_RIGHT) plutt que de la placer dans un fichier spar. Voici un rcapitulatif du comportement des balises SPIP lies au sens de lcriture : Langue langues crites de gauche droite arabe,farsi,hbreu... #LANG_LEFT #LANG_RIGHT #LANG_DIR left right right left ltr rtl

[1] On prcise ici que dans la configuration livre dorigine, SPIP reste monolingue, afin de ne pas compliquer du tout linterface. [2] Si lon veut au contraire un affichage vide, il faut crer explicitement une premire partie vide avec un nom de langue quelconque. [3] Thoriquement le HTML devrait rgler tous ces dtails automatiquement, mais le rsultat nest pas toujours la hauteur, surtout lors des passages la ligne ou si lon mlange des langues utilisant un sens dcriture diffrent.

http://www.spip.net/fr_article2124.html (7 of 8)2006.04.17 19.21.27

[SPIP] Raliser un site multilingue

[4] Malheureusement, les instances de normalisation semblent pour linstant ignorer le boustrophdon, ce qui empche son utilisation en HTML. [5] Tous, ou presque tous, nous vous laissons dcouvrir si votre mise en page prsente des cas particuliers...

tlcharger le squelette de cette page

http://www.spip.net/fr_article2124.html (8 of 8)2006.04.17 19.21.27

[SPIP] Internationaliser les squelettes

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Internationaliser les squelettes


franais catal Deutsch English Espaol italiano

Linternationalisation des squelettes, aborde dans cet article est disponible partir de SPIP 1.7.
Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface graphique

Pourquoi crer des squelettes multilingues ?


Ds la mise en ligne de documents, SPIP adapte certaines informations automatiques dans la langue dsire. Notamment les dates sont affiches dans la langue du site, ou dun article, ou dune rubrique, les formulaires sont affichs dans la langue correspondante (par exemple linterface pour poster des messages de forums)... Tout cela est dores et dj traduit par SPIP. Ce nest cependant pas suffisant : les webmestres insrent dans leurs squelettes un certain nombre dinformations, dcrivant notamment les principes de navigation dans le site. Il est ncessaire, par exemple, dafficher des textes du style Plan du site , Rpondre cet article , Articles du mme auteur , Dans la mme rubrique ... Pour un site dans une seule langue, ces diffrents lments sont faciles insrer : on les insre tels quels dans le code HTML des squelettes. Le problme apparat lorsque le site est multilingue : sous un article en franais, on veut afficher Rpondre cet article , mais sous un article en anglais, on a besoin dafficher un autre texte ( Comment on this article ). [SPIP 1.7.2] propose trois mthodes pour grer ces lments de texte diffrents selon les langues :

http://www.spip.net/fr_article2128.html (1 of 9)2006.04.17 19.21.40

[SPIP] Internationaliser les squelettes

Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

(1) une mthode consistant stocker les lments de texte des squelettes dans des fichiers de langue (un fichier diffrent par langue utilise sur le site), spars des squelettes ; un squelette unique (par exemple article.html appelant, selon des codes dfinis par le webmestre, ces lments de texte en fonction de la langue utilise ; de cette faon, un mme squelette article.html affichera automatiquement le texte Rpondre cet article ou Comment on this document en fonction de la langue de larticle. Cette mthode est vivement conseille, elle offre le plus de souplesse, elle facilite les mises jour du site (on travaille avec un squelette unique qui gre automatiquement plusieurs langues), et terme des outils seront ajouts SPIP facilitant le travail collectif de traduction de linterface de votre site (plusieurs administrateurs, parlant chacun une langue diffrente, pourront traduire linterface dun mme site depuis lespace priv, sans avoir besoin dintervenir sur les fichiers des squelettes) ; (2) une mthode plus rapidement accessible, techniquement trs simple, reposant sur la cration de fichiers de squelettes diffrents pour chaque langue. Dans cette mthode, on fabrique un fichier article.html pour grer les articles en franais, et un fichier article.en.html pour les articles en anglais (note : article.html gre en ralit toutes les langues sauf langlais). Cette mthode est dconseille si le site utilise de nombreuses langues et/ou si on utilise des squelettes distincts selon les rubriques. Par ailleurs, elle est dans tous les cas avantageusement remplace par la mthode 3 dcrite ci-dessous : (3) la mthode des blocs multilingues , introduite par [SPIP 1.7.2], fonctionne aussi bien dans les contenus que dans les squelettes. Il suffit de mettre dans le squelette la construction suivante :
<multi> [fr] Rpondre cet article [en] Comment on this article </multi>

et la phrase saffichera dans la langue voulue. Si ce systme est trs souple, il atteint toutefois ses limites ds que le nombre de langues est important, et que lon souhaite que diffrents traducteurs interviennent dans le site (il faut en effet quils puissent modifier le squelette, ce que la mthode des fichiers de langue permet dviter).

1. Mthode des fichiers de langue


Le principe des fichiers de langue consiste insrer dans un squelette unique un code, lequel correspondra dans chaque langue un lment de texte (une chane ) ; entre les diffrentes langues le code ne varie pas, mais le texte est traduit.

http://www.spip.net/fr_article2128.html (2 of 9)2006.04.17 19.21.40

[SPIP] Internationaliser les squelettes

Par exemple, nous pouvons dcider que le code telechargement correspond : en franais, la chane tlcharger ce fichier , en anglais, la chane download this file , en espagnol, la chane descargar este archivo , etc. Dans le fichier de squelette des articles (un seul fichier grera toutes les langues), article.html, il suffit dinsrer le code (notez la syntaxe) :
<:telechargement:>

Lors de laffichage dun article, ce code sera remplac par sa traduction dans la langue de larticle. Par exemple, dans le squelette article.html, nous insrons dans la boucle affichant les documents associs larticle, le code suivant :
<a href="#URL_DOCUMENT"><: telechargement:></a>

Si larticle en question est en franais, cela produira : <a href="/IMG/jpg/mondocument.jpg">tlcharger ce fichier</ a> si larticle est en anglais : <a href="/IMG/jpg/mondocument.jpg">download this file</a> et ainsi de suite. Un unique squelette, contenant un unique code, affiche un texte traduit dans toutes les langues utilises sur le site. Utiliser des textes dj traduits Pour faciliter le travail des webmestres, SPIP fournit un ensemble de chanes dj traduites (par les traducteurs de SPIP). En utilisant ces chanes, correspondant des lments de texte frquemment utiliss sur des sites Web, le webmestre peut rapidement raliser une interface fonctionnant dans diffrentes langues, mmes celles quil ne parle pas lui-mme. Vous pouvez lister les chanes disponibles depuis lespace priv : allez dans la section Gestion des langues de la partie Administration du site , puis cliquez sur longlet Fichiers de langues . Vous navez plus qu y piocher les codes de votre choix pour la ralisation de vos squelettes.

http://www.spip.net/fr_article2128.html (3 of 9)2006.04.17 19.21.40

[SPIP] Internationaliser les squelettes

Les fichiers de langue dans lespace priv

Exemple : un webmestre veut raliser linterface pour un site en franais, en espagnol et en arabe, mais il ne parle pas lui-mme lespagnol et larabe. En insrant dans ses squelettes les codes livrs avec SPIP, il na pas se soucier dobtenir des traductions en espagnol et en arabe, car le travail de traduction a dj t effectu en amont par les traducteurs de SPIP ; ainsi, en mettant au point linterface en franais avec les codes fournis par SPIP, il sait que ses pages safficheront immdiatement en espagnol et en arabe. Si par la suite on ajoute des articles en polonais, ils seront immdiatement affichs avec les lments de texte traduits en polonais, sans que le webmestre ait intervenir nouveau. Autre avantage de cette mthode : elle facilite la cration de squelettes distribuer immdiatement multilingues. Des squelettes raliss selon cette mthode seront immdiatement utilisables dans toutes les langues dans lesquelles sera traduit SPIP. Dun point de vue technique, les lments de texte fournis en standard avec SPIP sont stocks dans les fichiers de langue public : /ecrire/lang/public_fr.php3 contient les chanes en franais, /ecrire/lang/public_en.php3 en anglais etc. Crer ses propres codes Il est de plus possible de crer ses propres codes, correspondant des chanes que
http://www.spip.net/fr_article2128.html (4 of 9)2006.04.17 19.21.40

[SPIP] Internationaliser les squelettes

lon dsire ajouter soi-mme. Il sagit alors de crer des fichiers de langue personnels, sur le modle des fichiers public.... Pour crer ses propres fichiers, on installera, dans votre rpertoire de squelette ou dans le rpertoire /ecrire/lang : local_fr.php3 pour dfinir les chanes en franais, local_en.php3 en anglais, ... historique : Dans les versions antrieures [SPIP 1.8], les fichiers de langue personnels se plaaient seulement dans le rpertoire / ecrire/lang. Par exemple, on pourra crer les chanes suivantes : telechargement pour afficher Tlcharger la dernire version , quoideneuf pour afficher Modifications rcentes . Selon cette mthode, on insre dans les squelettes les codes <: telechargement:> et <:quoideneuf:>, ils seront ensuite affichs avec les traductions correspondantes, telles quelles sont dfinies dans les fichiers local_...php3. Notons que les codes sont arbitraires : cest vous qui les choisissez. Nous recommandons bien videmment de choisir des codes qui vous permettent de les retenir facilement (plutt que des numros par exemple). Comme souvent avec les codes informatiques, il est prfrable de nutiliser que des lettres de lalphabet latin, et sans accents... Les fichiers de langue contiennent les diffrentes traductions des codes que vous utiliserez ; ce sont des fichiers PHP contenant chacun un tableau associant aux codes les chanes correspondantes dans chaque langue. Ils contiendront par exemple : Version franaise :
<?php $GLOBALS[$GLOBALS['idx_lang']] = array( 'telechargement' => 'T&eacute;l&eacute; charger la derni&egrave;re version', 'quoideneuf' => 'Modifications r&eacute; centes' ); ?>
http://www.spip.net/fr_article2128.html (5 of 9)2006.04.17 19.21.40

[SPIP] Internationaliser les squelettes

Version catalane :
<?php $GLOBALS[$GLOBALS['idx_lang']] = array( 'telechargement' => 'Descarregar la darrera versi&oacute;', 'quoideneuf' => 'Modificacions recents' ); ?>

La construction est la suivante : au dbut du fichier :


<?php $GLOBALS[$GLOBALS['idx_lang']] = array(

la fin du fichier :
); ?>

la partie quil faut enrichir soit-mme consiste en plusieurs lignes de dfinitions, sur le modle :
'code' => 'La chane afficher',

N.B. Chaque ligne de dfinition se termine par une virgule, sauf la dernire ligne.

N.B.2. Le texte de la chane traduire doit tre convertie en codes HTML (les caractres accentus, par exemple, sont convertis en leur quivalent HTML, du type &eacute;). Les apostrophes lintrieur de la chane doivent tre chappes, cest--dire prcdes dun antislash. Par exemple, la chane sur linternet soit tre inscrit : sur l\'internet. Note : terme, il est prvu dinclure un outil permettant de grer et crer ses propres fichiers de langue sans avoir modifier la main des fichiers PHP. Un tel outil facilitera de plus lutilisation de caractres spciaux (caractres accentus, caractres dans des alphabets non occidentaux, chappement des apostrophes...), ainsi
http://www.spip.net/fr_article2128.html (6 of 9)2006.04.17 19.21.40

[SPIP] Internationaliser les squelettes

que la collaboration de plusieurs personnes au processus de traduction de linterface du site public. Pour linstant, loutil permettant de grer la traduction des chanes de texte nest pas livr directement avec SPIP, et son utilisation trs gnraliste (nous lutilisons pour traduire toute linterface de SPIP, et pas seulement des fichiers de langue de type local...php3) le rend un peu complexe par rapport cette tche. Ce programme, trad-lang, qui nous sert traduire le logiciel SPIP, le site spip.net, etc., est lui-mme disponible sous licence GNU/GPL, mais il nest pas intgr en standard SPIP. Vous pourrez le tlcharger, pour lutiliser pour votre site ou pour dautres projets de logiciels. Si vous lamliorez, ou avez des ides pour le transformer, venez en discuter sur la liste des traducteurs de SPIP, spip-trad.

2. Des squelettes spars pour chaque langue


La seconde mthode, plus accessible aux webmestres dbutants, consiste crer des squelettes diffrents pour chaque langue. Un peu sur le mme principe qui consiste crer des squelettes spcifiques pour diffrentes rubriques pour obtenir des interfaces graphiques diffrentes. Nous voulons raliser un site en franais (langue par dfaut), en anglais et en espagnol. Nous ralisons trois fichiers de squelette diffrents : article.html pour le franais (en ralit, pour toutes les langues qui nont pas de fichier de langue spcifique ci-aprs), article.en.html pour langlais, article.es.html pour lespagnol. (Note : si on publie un article en allemand, alors quil nexiste pas de squelette article.de.html sur notre site, cest le squelette article.html qui sera utilis.) Important : pour que les squelettes par langue , dfinis par lajout dun .lang la fin du nom, soient pris en compte, il faut obligatoirement quil existe la version par dfaut sur le site. Ici, si article.html nexiste pas (on aurait prfr nommer directement un article.fr.html), les fichiers anglais et espagnol ne seront pas pris en compte. On peut combiner cela avec le nommage par rubriques , et lordre suivant sera pris en compte :

http://www.spip.net/fr_article2128.html (7 of 9)2006.04.17 19.21.40

[SPIP] Internationaliser les squelettes

article=8.es.html (le squelette pour les articles en espagnol de la rubrique 8, mais pas ses sous-rubriques), article=8.html (le squelette pour les articles de la rubrique 8, mais pas ses sous-rubriques), article-2.es.html (le squelette pour les articles en espagnol de la rubrique 2 et ses sous-rubriques), article-2.html (le squelette pour les articles de la rubrique 2 et ses sousrubriques), article.es.html (le squelette pour les articles en espagnol), article.html (le squelette pour les articles), article-dist.html (le squelette pour les articles livr avec SPIP). Note : sauf pour quelques exceptions, il faut utiliser ici les codes de langues deux lettres normaliss par lISO, comme es . On en trouvera notamment la liste sur le site de la Bibliothque du Congrs des Etats-Unis (eh oui !). Pour sassurer dun maximum de compatibilit, il faut utiliser en priorit les codes ISO deux lettres ( iso 639-1 ), quand ils existent, et pour une dsignation plus spcialise dune langue dans sa famille linguistique les codes ISO trois lettres ( iso 639-2 T ). Par exemple, lallemand sera dsign comme de . Mais lISO ne prend en compte que 182 langues sur les 5 000 7 000 langues parles dans le monde ; pour les langues non encore rpertories, on peut sinspirer du rpertoire propos par le site ethnologue.com ; pour en savoir plus, rendez-vous sur la liste spip-trad. Se simplifier la vie. Une des mthodes de structuration trs simple quautorise SPIP pour grer un site multilingue consiste associer directement les langues aux rubriques (et non article par article). Ainsi, dans le cas o les articles dune mme langue sont regroups dans une mme rubrique (voire par secteurs), on peut se contenter de crer les squelettes spcifiques par rubrique, sans utiliser alors les noms de fichiers par langues. De cette faon, si, tous les articles en espagnol sont regroups dans la rubrique 8 (et ses sous-rubriques), on peut se contenter de nommer le fichier adapt lespagnol rubrique-8.html plutt que rubrique.es.html. On devine les problmes qui peuvent se poser avec cette mthode : le fichier article-2.html doit exister si on veut que article-2.es.html puisse tre slectionn ; on ne peut pas dcider, linverse, que article.es.html doit tre utilis la place darticle-2.html si article-2.es.html nexiste pas : la slection par rubriques a toujours la priorit sur la slection par langues ;
http://www.spip.net/fr_article2128.html (8 of 9)2006.04.17 19.21.40

[SPIP] Internationaliser les squelettes

une correction de mise en page dans un squelette implique de faire la mme correction dans les autres versions, on doit pouvoir insrer soi-mme des lments de texte dans les fichiers des squelettes, alors quon ne comprend pas forcment la langue (imaginez-vous crer ainsi les squelettes en arabe alors que vous parlez un peu le franais de louest et assez mal loccitan du nord...). Cette mthode est donc destine travailler rapidement sur des sites peu complexes (peu ou pas de squelettes spcifiques aux rubriques) et/ou comportant peu de langues diffrentes. Ds que votre projet multilingue devient un peu plus ambitieux, il est vivement conseill de travailler avec la mthode des fichiers de langue.

3. Les blocs multilingues


Les blocs multi dfinis dans larticle Raliser un site multilingue fonctionnent aussi bien dans le texte des auteurs ou mots-cls que dans les squelettes. Attention, ces blocs ne grent que du texte, et pas des boucles SPIP ! Pour grer rapidement un site multilingue, cest sans doute, dans un premier temps, la meilleure mthode, la fois accessible et efficace ; ensuite, une fois votre site stabilis, si vous avez besoin daffiner vos squelettes (par exemple, pour les ouvrir plus de langues ; ou pour les distribuer sous forme de contrib ; ou encore pour les professionnaliser ), il faudra transformer vos blocs multi en fichiers de langue.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2128.html (9 of 9)2006.04.17 19.21.41

[SPIP] Utiliser des URLs personnalises

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Utiliser des URLs personnalises


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface graphique catal Espaol italiano

Aprs linstallation, les pages gnres par SPIP utilisent des adresses relatives ressemblant article.php3?id_article=123, donnant des URLs du type http://www.spip.net/article.php3?id_article=123. Ce type de syntaxe, courant chez les sites dynamiques , nest cependant pas trs joli ni trs vocateur. Il y a possibilit davoir des adresses plus votre got par exemple article123.html ou Titre-de-l-article.html , et SPIP vous aide en partie dans cette tche. Cette fonctionnalit fait appel la distinction entre deux types dURLs : lURL apparente dune page, cest--dire telle quelle est tape et/ou affiche dans la barre dadresse du navigateur. Par exemple http://www.spip.net/ fr_article765.html. Ce sont ces URLs quon cherche rendre plus jolies ou plus signifiantes ; lURL relle de la page, cest--dire lURL qui est vue par SPIP lorsque la page est calcule sur le serveur. Par exemple http://www.spip.net/ article.php3?id_article=765 ; en gnral, cette URL peut aussi tre tape directement dans le navigateur (vous pouvez vrifier).

Choisir le type dURLs apparentes

http://www.spip.net/fr_article765.html (1 of 4)2006.04.17 19.21.50

[SPIP] Utiliser des URLs personnalises

Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

Dans le fichier ecrire/mes_options.php3 [1] ( crer le cas chant), vous pouvez dclarer une variable PHP contenant le type dURLs utiliser. En labsence de ce rglage, SPIP utilisera : $type_urls = "standard"; La variable $type_urls dtermine le nom du fichier PHP qui est appel pour grer les URLs. Avec la dclaration par dfaut ci-dessus, cest inc-urlsstandard.php3. Vous remarquerez que SPIP propose aussi les fichiers inc-urls-html.php3, inc-urls-propres.php3 et inc-urls-propres2.php3. Le fichier inc-urls-html.php3 permet de traiter des adresses du type ( article123.html ). Vous pouvez dcider dutiliser les URLs html en mettant dans ecrire/mes_options.php3 la ligne : $type_urls = "html"; Le fichier inc-urls-propres.php3 permet de traiter des adresses du type ( Titre-de-l-article ). Il faut alors ajouter : $type_urls = "propres"; Le fichier inc-urls-propres2.php3 est une variation du prcdent, qui donne des adresses du type ( Titre-de-l-article.html ). Il faut alors ajouter : $type_urls = "propres2";

Si vous voulez plutt utiliser vos propres adresses (ce pour quoi vous devez savoir programmer en PHP), il est fortement conseill de partir dun des fichiers existants et de le recopier sous le nom que vous aurez choisi : inc-urls-XXX.php3. Il est par exemple trs ais de modifier la fonction _generer_url_propre() dans inc-urls-propres.php3 pour obtenir des variations trs intressantes ; si vous faites cela, merci de partager vos modifications sur le site SPIP Contrib.

Programmer la traduction des adresses apparentes en adresses relles


Pour que ladresse article123.html appelle bien en ralit le fichier PHP
http://www.spip.net/fr_article765.html (2 of 4)2006.04.17 19.21.50

[SPIP] Utiliser des URLs personnalises

article.php3 avec comme paramtre id_article=123, il va falloir configurer le serveur Web qui hberge votre site, soit dans un fichier .htaccess (a ne marche pas toujours), soit dans le fichier de configuration centrale du serveur si vous y avez accs. Cela utilise, sous le serveur Apache (le plus utilis), ce quon appelle des Rewrite Rules : des rgles de rcriture dadresses Web. Savoir crire ces rgles nest pas simple pour les non-programmeurs, et nous ne pouvons pas vous donner de solutions infaillibles car cela dpend de votre configuration : cette partie est entirement entre vos mains (ou celles de votre hbergeur). Nanmoins, [SPIP 1.8.1] fournit un fichier htaccess.txt titre dexemple, qui fonctionne sur la plupart des hbergeurs avec les types dURLs cits prcdemment ( standard , html , propres et propres2 ). Pour lactiver il faut le recopier la racine du site sous le nom .htaccess. Il est fortement conseill de louvrir au pralable pour vrifier quelques aspects de configuration. Vous devrez ensuite tester la validit de ces adresses, en appelant la page Voir en ligne sur un article, un auteur, une brve, une rubrique, etc.

Gnrer les URLs apparentes dans les pages SPIP


Afin dafficher partout les URLs du type choisi, utilisez dans vos squelettes les balises #URL_ARTICLE, #URL_RUBRIQUE, #URL_BREVE, etc.

Transition dun type dURLs lautre


Depuis [SPIP 1.8.1], tout est prvu pour que la transition dun type dadresses lautre se fasse en douceur : installez le fichier htaccess.txt, et vous pouvez ensuite librement basculer des adresses standard aux adresses propres2 , propres ou html , et vice-versa, sans jamais provoquer derreur 404 pour les visiteurs (ou les moteurs de recherche) qui auraient mmoris les anciennes adresses. Dernier dtail pour facilliter la transition, si vous choisissez les URLs propres ou propres2, les visites des pages portant les anciennes adresses (standard ou html) sont rediriges automatiquement vers les nouvelles adresses.
[1] Remarque : les versions prcdentes de SPIP incluaient le fichier inc-urls.php3 la racine du site sil tait prsent ; cette mthode est encore valable mais est considre
http://www.spip.net/fr_article765.html (3 of 4)2006.04.17 19.21.50

[SPIP] Utiliser des URLs personnalises

comme obsolte...

tlcharger le squelette de cette page

http://www.spip.net/fr_article765.html (4 of 4)2006.04.17 19.21.50

[SPIP] Le moteur de recherche

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Le moteur de recherche
franais catal Espaol italiano

SPIP intgre un moteur de recherche, dsactiv par dfaut. Ce moteur, lorsquil est activ par un administrateur dans la page de configuration, permet deffectuer des recherches sur diffrents types dinformations prsentes dans la base de donnes : les articles, les rubriques, les brves, les mots-cls et les auteurs. Depuis SPIP 1.7.1 les fils de discussion des forums (threads) et les signatures de ptitions sont galement indexs.
Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP

Principe
Il y a deux grandes faons de faire un moteur de recherche. La premire est de chercher tout btement dans le type de stockage existant (fichiers HTML, base de donnes... selon le type de site). Cette mthode est trs lente car le type de stockage nest pas prvu cet effet. La seconde mthode, qui a t choisie pour SPIP (et qui est aussi celle de tous les moteurs professionnels), est dtablir un mode de stockage spcifique aux besoins de la recherche. Par exemple, le score de chaque mots dun article peut tre stock directement afin dtre facilement retrouv, et davoir le score total dune recherche par une simple addition. Lavantage est que la recherche est trs rapide : presque aussi rapide que nimporte quel calcul de page. Linconvnient est quil faut une phase de construction du dit stockage des informations : cela sappelle lindexation. Lindexation a un cot en termes de ressources (temps de calcul et espace disque), et elle introduit galement un lger dcalage temporel

http://www.spip.net/fr_article996.html (1 of 4)2006.04.17 19.22.8

[SPIP] Le moteur de recherche

Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

entre lajout ou la modification dun contenu, et la rpercussion de cet ajout ou de cette modification sur les rsultats de recherche. Dautre part, dans le cas de SPIP, nous sommes obligs dutiliser PHP et MySQL comme pour le reste du logiciel, ce qui ne permet pas de raliser un moteur trs performant, en termes de rapidit, mais aussi de pertinence ou denrichissements divers (indexation de documents extrieurs au site, cration de champs smantiques permettant de proposer des recherches plus fines, etc.). Lavantage du moteur interne, cependant, cest quil permet de grer laffichage des rsultats travers les mmes mthodes (squelettes) que le reste des pages de SPIP, et lintrieur du mme environnement visuel.

Lindexation
Lindexation est ralise lors des visites du site public. Afin dviter que le cumul dune indexation et dun calcul de page ne mne un timeout sur les serveurs particulirement lents, SPIP attend quune page soit affiche en utilisant le cache [1]. Lindexation traite une une les diffrentes donnes textuelles dun contenu donn : par exemple, pour un article, le chapo, le descriptif, le titre, le texte... Pour chaque donne textuelle, le score de chaque mot est calcul en comptant simplement le nombre doccurrences. A cet effet, les mots de trois caractres ou moins sont ignors (ils sont, pour la plupart, non significatifs, et alourdiraient la base de donnes) ; dautre part, les caractres accentus sont translittrs (convertis en leurs quivalents non-accentus), pour viter les problmes de jeux de caractres et aussi pour permettre deffectuer des recherches en version non accentue. Ensuite, les scores de chaque mot sont cumuls, de faon pondre, entre les diffrentes donnes textuelles du contenu index. La pondration permet, par exemple, de donner plus de poids aux mots prsents dans le titre dun article que dans le corps du texte ou le post-scriptum... Les fonctions dindexation peuvent tre tudies au sein du fichier ecrire/ inc_index.php3. Pour mieux visualiser la dynamique dindexation du site, vous pouvez ouvrir le fichier ecrire/data/spip.log, ou encore regarder la page ecrire/admin_index.php3 (nota : cette page, encore exprimentale, nest pas livre avec toutes les versions de SPIP, et nexiste quen franais). Dans la version [SPIP 1.6], dimportantes modifications ont t apportes au comportement du moteur :

http://www.spip.net/fr_article996.html (2 of 4)2006.04.17 19.22.8

[SPIP] Le moteur de recherche

meilleur comportement dans un environnement multilingue ; le tiret bas (underscore) nest plus considr comme un sparateur de mot, mais comme un caractre alphabtique (utile pour de la documentation informatique) ; les mots de deux lettres (et plus) ne contenant que des majuscules et des chiffres sont considrs comme des sigles, et sont indexs, ce qui supprime lun des principaux inconvnients de la limitation de lindexation aux mots de plus de 3 lettres (G8, CNT, ONU sont dsormais indexs).

La recherche
La recherche seffectue simplement en sparant le texte de recherche en ses diffrents mots ; le mme filtre est appliqu que lors de lindexation : suppression des mots de trois lettres ou moins (sauf sigles), et translittration. Pour chaque contenu recherch, le score des diffrents mots est ensuite rcupr puis additionn afin dobtenir le score total. Enfin, les rsultats sont en gnral affichs par ordre dcroissant de score ({par points}{inverse}), cest--dire de pertinence (mais cela est laiss la volont de la personne qui crit les squelettes de mise en page).

Performances
Rapidit Sur un serveur rcent et pas trop charg, lindexation dun texte long (plusieurs dizaines de milliers de caractres) prendra entre une et deux secondes : lattente est presque imperceptible, compare aux dlais de chargement via le rseau. Les contenus courts sont indexs de faon quasi-instantane. Bien sr, ces affirmations doivent tre modules selon la taille du site. Un site vraiment trs gros risque de voir les temps dindexation sallonger lgrement ; pour relativiser, signalons quun site comme Le Courrier des Balkans comporte, la date dcriture de ce texte, environ 3 800 articles publis, et plus de 7500 messages de forum, et que le moteur de recherche de SPIP ne donne aucun signe de faiblesse. Par ailleurs, statistiquement, on peut considrer de faon approximative que chaque contenu ne sera index quune seule fois : compte tenu quil y a en gnral beaucoup plus de visites sur un site que de mises jour de contenus, le surcrot de charge du serveur apparat ngligeable. Qualit

http://www.spip.net/fr_article996.html (3 of 4)2006.04.17 19.22.8

[SPIP] Le moteur de recherche

La qualit de lindexation est plus faible que sous des moteurs de recherche professionnels. PHP tant un langage plutt lent, la phase dextraction des mots a d tre simplifie au maximum pour que les temps dindexation restent minimes. Par consquent, les donnes dindexation comportent quelques dchets , cest-dire des morceaux de texte qui ne correspondent pas de vrais mots, mais ont t indexs comme tels (il sagit souvent de contenus techniques comme des noms de fichiers, ou de passages la ponctuation malmene). Lexemple duZine, o lon constate environ 2 % de tels dchets , nous laisse cependant penser que ces donnes sont quantit ngligeable, dautant quil y a peu de chance quelles dclenchent un rsultat positif lors dune recherche. La recherche noffre pas doprateurs boolens, loprateur implicite tant grosso modo un OU logique. Cependant, depuis SPIP 1.7.1, les articles trouvs saffichent dans un ordre qui privilgie les rsultats contenant le plus de mots orthographis prcisment selon la requte. Ainsi, une requte sur la main rouge mettra en vidence les articles contenant main et rouge , loin devant les articles ne contenant que maintenance ou rouget - ceux-ci apparatront, mais plus loin dans le classement. Espace disque MySQL ntant pas spcialement conu pour le stockage de donnes dindexation, lutilisation du moteur de recherche a tendance faire beaucoup grossir lespace disque utilis par la base de donnes. Pour donner quelque prcision, disons quun contenu gnre des donnes dindexation de taille comprise entre la taille du contenu et le double de celle-ci. Donc, si lon fait abstraction des donnes ne donnant pas lieu indexation (les forums par exemple), lindexation fait entre doubler et tripler la place prise par la base de donnes. Cela peut tre gnant si la place vous est trs compte. Si jamais vous dsactivez le moteur de recherche afin dconomiser de lespace disque, noubliez pas ensuite deffacer les donnes dindexation (dans la page de sauvegarde/restauration de la base de donnes) afin de rellement librer lespace disque occup par ces donnes.
[1] Si, donc, vous avez mis tous les $delais zro, ou si votre site nest pas visit (site de test), lindexation naura pas lieu.

tlcharger le squelette de cette page

http://www.spip.net/fr_article996.html (4 of 4)2006.04.17 19.22.8

[SPIP] Les variables de personnalisation

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Les variables de personnalisation


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface graphique catal English Espaol italiano occitan

Certains comportements des pages de votre site peuvent tre modifis au moyen de variables PHP. Ces variables sont normalement dfinies par SPIP, mais, pour obtenir une personnalisation plus fine du site, le webmestre peut les modifier.

O indiquer ces variables ?


Inutile dentrer dans le code source de SPIP lui-mme pour fixer ces variables (ouf !). Pour lensemble du site Si vous voulez fixer ces variables pour lintgralit du site, vous pouvez les indiquer comme globales, avec une syntaxe un peu diffrente, dans un fichier intitul mes_fonctions.php3, plac la racine du site. (Il faudra ventuellement crer ce fichier, et entourer les dfinitions de vos variables par les marqueurs <?php et ?>, voir les exemples ci-dessous.) Pour chaque type de squelette [SPIP 1.4] Vous pouvez aussi dfinir ces variables squelette par squelette. Pour cela, il faut les installer au dbut du fichier PHP appelant le squelette (par exemple article.php3, rubrique.php3...). Elles sinsrent naturellement

http://www.spip.net/fr_article1825.html (1 of 6)2006.04.17 19.22.25

[SPIP] Les variables de personnalisation

Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

ct des variables obligatoires $fond et $delais. Voir les exemples.

Les variables du texte


Ces variables sont utilises lors du calcul de la mise en page (correction typographique) par SPIP. $debut_intertitre fixe le code HTML insr en ouverture des intertitres (par le raccourci {{{). En standard, sa valeur est :
$debut_intertitre = "\n<h3 class=\"spip\">\n";

$fin_intertitre est le code HTML insr en fermeture des intertitres (raccourci }}}). Sa valeur normale est :
$fin_intertitre = "</h3>\n";

$ouvre_ref est le code douverture des appels des notes de bas de page ; par dfaut, cest une espace inscable et un crochet ouvrant ; $ferme_ref est le code de fermeture des appels des notes de bas de page ; par dfaut, cest un crochet fermant. $ouvre_note est le code douverture de la note de bas de page (telle quelle apparat dans #NOTES) ; par dfaut, un crochet ouvrant ; $ferme_note est le code de fermeture des notes de bas de page (un crochet fermant). Des choix alternatifs pourront tre par exemple dutiliser des parenthses ; ou, plus joliment, douvrir avec le tag HTML <sup>, et de fermer avec </sup>. Le fichier puce.gif et la variable $puce. Lorsque vous commencez une nouvelle ligne par un tiret, SPIP le remplace par une petite puce graphique. Cette puce est constitue par le fichier puce.gif install la racine du site ; vous pouvez modifier ce fichier selon vos besoins. Mais vous pouvez aussi dcider de fixer vous-mme le choix de la puce, au travers de la variable $puce. Par exemple pour indiquer un autre fichier graphique :
$puce = "<img src='mapuce.gif' alt='-' align='top' border='0'>";
http://www.spip.net/fr_article1825.html (2 of 6)2006.04.17 19.22.25

[SPIP] Les variables de personnalisation

ou par un lment HTML non graphique :


$puce = "<li>";

Les variables pour les forums publics


Il existe des variables permettant de fixer le comportement des forums publics avec des mots-cls. N.B. : Ces variables ne sont utilises que lorsque vous crez des forums publics dans lesquels les visiteurs peuvent slectionner des mots-cls ; leur utilisation est donc extrmement spcifique (et pas vidente...). $afficher_texte ( oui / non ). Par dfaut, les forums publics sont conus pour permettre aux visiteurs dentrer le texte de leur message ; mais lorsque lon propose le choix de mots-cls dans ces forums, on peut dcider quaucun message nest utile, seul la slection des mots-cls importe. Dans ce cas, on pourra indiquer :
$afficher_texte = "non";

$afficher_groupe permet dindiquer les diffrents groupes de mots-cls que lon souhaite proposer dans tel forum. En effet, tous les forums sur un site ne sont pas forcment identiques, et si, certains endroits, on peut vouloir afficher une slection de tous les groupes de mots-cls (ceux que lont a rendu accessibles aux visiteurs depuis lespace priv), dautres endroits, on peut vouloir nutiliser que certains groupes, voire aucune groupe (pas de slection de mots-cls du tout). La variable $afficher_groupe est un tableau (array), et se construit donc de la faon suivante :
$afficher_groupe[] = 3; $afficher_groupe[] = 5;

impose laffichage uniquement des groupes 3 et 5.


$afficher_groupe[] = 0;

interdit lutiliser des mots-cls dans ces forums (puisquil nexiste pas de groupe de mots-cls numrot 0).
http://www.spip.net/fr_article1825.html (3 of 6)2006.04.17 19.22.25

[SPIP] Les variables de personnalisation

Si lon nindique rien (on ne prcise pas $afficher_groupe), tous les groupes de mots-cls indiqus, dans lespace priv, comme proposs aux visiteurs du site public sont utiliss.

Interdire laffichage des boutons dadmin


Toutes les pages de squelette se voient ajouter des boutons damin (notamment : recalculer cette page ) lorsquon est administrateur et quon a activ le cookie de correspondance. Cette fonctionnalit, trs pratique pour grer le site, peut savrer malpratique dans certains cas ; par exemple pour des fichiers XML, que lon ne veut en aucun cas voir perturbs par de tels ajouts. [SPIP 1.7] La variable flag_preserver permet dinterdire ces affichages.
$flag_preserver = true;

On verra par exemple lutilisation de cette variable dans backend.php3.

Le dossier des squelettes


[SPIP 1.5] Si lon souhaite mettre les squelettes de son site dans un dossier particulier, par exemple pour faire des essais de diffrents jeux de squelettes trouvs sur Internet, ou parce quon aime que les choses soient bien ranges, etc., il est possible de fixer dans mes_fonctions.php3 la variable $dossier_squelettes.
<?php $GLOBALS['dossier_squelettes'] = 'design'; ?>

partir de ce moment-l, SPIP ira chercher en priorit les squelettes prsents dans le dossier design/ (que vous aurez cr la racine du site). Si, de plus, vous utilisez <INCLURE(xxx.php3)>, SPIP ira chercher le fichier xxx.php3 dabord dans design/, puis, sil ny figure pas, la racine du site. Les avantages de ce rangement peuvent sembler vidents (meilleure sparation du code de spip et de la structure du site, possibilit de changer tout un ensemble de squelettes dun seul coup, etc.) ; linconvnient principal est quil sera plus difficile de visualiser les squelettes via un simple navigateur. En effet, mme sils

http://www.spip.net/fr_article1825.html (4 of 6)2006.04.17 19.22.25

[SPIP] Les variables de personnalisation

sont situs dans ce sous-dossier, lHTML contenu dans ces fichiers de squelette doit tre conu comme sils taient la racine. Ainsi, les liens vers les images ou les CSS, notamment, risquent de casser .

Exemples
Pour modifier des variables uniquement pour un certain type de squelettes (par exemples pour les pages de rubriques), il suffit de les dfinir dans le fichier dappel de ces squelettes. Par exemple, pour les rubriques, on peut fixer des valeurs directement dans rubrique.php3 :
<?php $fond = "rubrique"; $delais = 2 * 3600; $espace_logos = 20; include ("inc-public.php3"); ?>

Ici, on a modifi la valeur de lespace autour des logos. Pour modifier des valeurs de variables pour lensemble du site, on peut les dfinir dans le fichier mes_fonctions.php3. Attention, lorsquon dfinit des valeurs dans ce fichier, il faut imprativement utiliser la syntaxe $GLOBALS['xxx'] pour chacune des variables personnaliser. Par exemple, pour dfinir la valeur de $debut_intertitre, on utilise la syntaxe $GLOBALS['debut_intertitre']. Lutilisation de cette syntaxe est impose par des impratifs de scurit des sites.
<?php $GLOBALS['debut_intertitre'] = "<h3 class='mon_style_h3'>"; $GLOBALS['fin_intertitre'] = "</h3>"; $GLOBALS['ouvre_ref'] = '&nbsp;('; $GLOBALS['ferme_ref'] = ')'; $GLOBALS['ouvre_note'] = '('; $GLOBALS['ferme_note'] = ') '; $GLOBALS['espace_logos'] = 0; ?>

http://www.spip.net/fr_article1825.html (5 of 6)2006.04.17 19.22.25

[SPIP] Tidy : validation XHTML 1.0

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Tidy : validation XHTML 1.0


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface catal Espaol italiano

[SPIP 1.8.1] permet aux webmestres qui le dsirent dutiliser sur leurs pages loutil Tidy, introduisant ainsi une fonction de validation XHTML sur leur site.

Principe gnral
Tidy est un outil (externe SPIP) qui permet de transformer du code HTML 4 relativement propre en code XHTML 1.0 transitional valide. SPIP exploite cet outil pour permettre aux webmestres de proposer des sites conformes aux recommandations du XHTML 1.0 transitional.

Important : Tidy nest pas un outil magique : il est incapable de transformer du code trs sale en code conforme. Face certaines erreurs de code, il refuse purement et simplement de fonctionner. Loutil est donc intgr dans SPIP pour, la fois, crer du code conforme, et permettre de traquer les erreurs de code dans vos pages. tape 1 : il convient, avant tout, de crer du code aussi propre et conforme que possible, avant mme le passage par Tidy. Cela se fait plusieurs niveaux : tout dabord, SPIP produit, dans ses traitements typographiques, du code

http://www.spip.net/fr_article3070.html (1 of 7)2006.04.17 19.22.38

[SPIP] Tidy : validation XHTML 1.0

graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

propre, et chaque version plus conforme ( compliant ) ; notez bien : SPIP vise la conformit HTML 4.01 transitional ; les squelettes du site public doivent eux-mmes tre aussi conformes que possible (pour rester cohrent, on visera la conformit HTML 4.01). tape 2 : si Tidy est prsent sur le serveur, et si le webmestre active cette option (voir plus loin), alors SPIP fait passer les pages produites par Tidy, qui va alors tenter de nettoyer les pages et de les transformer en pages conformes au XHTML 1.0 transitional. tape 3 : si le traitement a bien fonctionn (Tidy na pas rencontr derreur bloquante ), alors la page affiche est bien du XHTML 1.0, dont on peut dailleurs faire valider la conformit par le W3C validator ; en revanche, si Tidy na pas fonctionn (voir plus loin), alors cest la page dorigine qui est affiche dans ce cas (cest un outil important prendre en compte), SPIP affiche un bouton dadministration signalant l erreur Tidy , et cr un fichier rcapitulant les diffrentes pages ayant rencontr des erreurs.

Encore une fois, afin de ne pas prter loutil des possibilits magiques quil na pas, et ses dveloppeurs des intentions qui ne sont pas les leurs, il est important de noter que SPIP ne se contente pas de se reposer sur un outil (Tidy, dont les limites sont connues), mais de lintgrer dans une logique plus large de mise en conformit : dabord en amliorant le code produit par SPIP, en utilisant ensuite Tidy la fois comme outil de nettoyage du code, mais aussi en proposant une indication des erreurs pour permettre au webmestre damliorer son code. La mise en conformit du code ne peut reposer sur une solution purement technique, mais sur un travail personnel pour lequel, avec Tidy, SPIP offre un outil de suivi.

Installer Tidy
Tidy, extension de PHP Tidy existe en tant quextension de PHP. Cest la faon la plus simple de lutiliser, loutil tant alors directement utilisable par le webmestre. Pour dterminer sa prsence, on pourra consulter la page /ecrire/info.php3 de son site pour obtenir la configuration de son serveur et la liste des extensions de PHP
http://www.spip.net/fr_article3070.html (2 of 7)2006.04.17 19.22.38

[SPIP] Tidy : validation XHTML 1.0

disponibles. N.B. : lheure actuelle, lutilisation de Tidy en tant quextension de PHP na pas pu tre teste en situation de production dans SPIP. En thorie, cela fonctionne, mais tout retour dexprience de la part de webmestres intresse les dveloppeurs sur la liste spip-dev. (Nous avons besoin de retours dexprience sur les versions 1 et 2 de Tidy, cest--dire sur des sites en PHP 4, en PHP 5, mais galement des installations via PEAR.) Tidy comme programme indpendant Il est par ailleurs possible dutiliser Tidy en ligne de commande (cest--dire en tant que programme indpendant de PHP sexcutant directement sur le serveur).

Cette version est particulirement pratique, puisque : il existe des versions de Tidy dj compiles pour la plupart des systmes dexploitation, il est souvent possible et simple dinstaller ces versions de Tidy sur un hbergement sans avoir daccs root, certains administrateurs de sites ont subi des incompatibilits lors de linstallation de Tidy en extension PHP (avec, semble-t-il, ImageMagick) ; la version en ligne de commande ne provoque pas ce genre de problme. Avant toute chose, vrifiez que Tidy nest pas dj prsent sur votre serveur. Pour cela, installez dans le fichier /ecrire/mes_options.php3 les lignes suivantes :
define('_TIDY_COMMAND', 'tidy'); $xhtml = true;

Et vrifiez sur votre site public si les pages sont modifies (soit transformes en XHTML, soit affichage du message Erreur tidy ). Si cela ne fonctionne pas, pensez supprimer ces deux lignes, et essayez dinstaller Tidy selon la mthode suivante (ou demandez la personne responsable de votre hbergement de le faire). Vous pouvez installer une version dj compile de Tidy correspondant votre systme. On trouvera ces versions sur le site officiel de Tidy ; il en existe pour Linux, divers *BSD, MacOS X, etc. Dcompressez larchive tlcharge, et installez le fichier tidy sur votre site. Vrifiez les droits dexcution de ce fichier sur le serveur (si ncessaire, passez

http://www.spip.net/fr_article3070.html (3 of 7)2006.04.17 19.22.38

[SPIP] Tidy : validation XHTML 1.0

les droits en 777 ). (Si vous avez un accs SSH votre serveur, vous pouvez tester le programme directement depuis le terminal. Si vous navez pas un tel accs, rien de grave, passez aux tapes suivantes, sachant que vous serez plus dmuni si cela ne fonctionne pas du premier coup.) Configurez laccs ce fichier en indiquant le chemin daccs en le dfinissant ainsi :
define('_TIDY_COMMAND', '/usr/bin/tidy'); $xhtml = true;

Si le chemin indiqu dans _TIDY_COMMAND est correct, alors Tidy sera dclench lors des affichages des pages de votre site public.

Important. La dfinition de _TIDY_COMMAND doit se trouver dans /ecrire/mes_options.php3 et non la racine du site dans /mes_fonctions.php3. Cela est d au fonctionnement assez spcifique du systme (post-traitement des fichiers tirs du cache de SPIP). La partie $xhtml = true;, en revanche, fonctionne comme une variable de personnalisation ; vous pouvez, si vous souhaitez faire des essais ou restreindre le fonctionnement une partie du site, dfinir cette variable au niveau du fichier dappel, par exemple article.php3 si vous ne voulez passer tidy que sur les articles.

Nettoyez votre code...


Encore une fois, il faut bien comprendre que Tidy nest capable de rendre conforme que du code qui est dj, lorigine, trs propre. Avec les squelettes livrs avec SPIP (eux-mmes dj conformes HTML 4) et le code produit par dfaut par SPIP, cela ne pose aucun problme : le code est trs proche du HTML 4 conforme ( compliant ), aussi Tidy na aucun mal en faire du XHTML 1.0 transitional parfaitement conforme. Lorsque Tidy a bien fonctionn, vous constatez dans le code source de vos pages : que le DOCTYPE de votre page est devenu XHTML... , que le code est joliment indent, que lensemble passe la validation W3C sans difficult. Si le DOCTYPE nest pas modifi, cest que Tidy a renonc corriger la page, dans laquelle il a rencontr des erreurs impossibles (pour lui) corriger.
http://www.spip.net/fr_article3070.html (4 of 7)2006.04.17 19.22.38

[SPIP] Tidy : validation XHTML 1.0

Les erreurs peuvent avoir deux sources : les squelettes, et le texte des articles. Vos squelettes ne sont eux-mmes pas conformes ; dans ce cas, il faut les corriger. Cest le cas le plus frquent. Vous pouvez, ici, commencer par dsactiver Tidy (passer la variable $xhtml false), et passer vos pages au Validator en visant le conformit HTML 4.01 transitional (SPIP visant, dans ses traitements typographiques, cette conformit, autant rester cohrent). Le W3C Validator est un outil trs pratique pour nettoyer son code. Une fois vos squelettes aussi proches que possible du HTML 4, Tidy naura pas de difficult produire du XHTML trs compliant. Si ces pages sont compltement conformes, cest encore mieux ! (Et pas impossible : les squelettes livrs avec SPIP sont dj conformes). Certaines articles contiennent des codes errons SPIP laissant les rdacteurs travailler en code source , ceux-ci peuvent insrer du code non conforme lintrieur de leurs articles. (Par exemple, dans la documentation de www.spip.net, on trouve certains endroits lutilisation de balises HTML <tt>...</tt> que Tidy considre comme inacceptables.) Aussi, une fois les squelettes nettoys, on pourra chercher corriger les textes de certains articles (cela concerne, donc, les insertions de HTML directement dans les articles ; encore une fois, le code produit par SPIP est essentiellement conforme, et ne provoque pas de blocage de Tidy).

Pour cela, outre lapparition, sur les pages concernes, dune bouton daministration intitul Erreur Tidy , SPIP tient jour en permanence un fichier /ecrire/data/w3c-go-home.txt qui contient la liste des pages impossibles valider [1]. Une fois vos squelettes rendus propres (paragraphe prcdent), le nombre de pages dfaillantes devrait tre limit aux articles contenant du code HTML non accept par Tidy.

Il est assez difficile de dfinir prcisment ce que Tidy considre comme une erreur insurmontable . Par exemple, les balises mal fermes ne sont pas rellement considres comme impossible
http://www.spip.net/fr_article3070.html (5 of 7)2006.04.17 19.22.38

[SPIP] Tidy : validation XHTML 1.0

corriger (par exemple, passer en italique dans un paragraphe et fermer litalique dans un autre paragraphe fabrique du code HTML non conforme, que Tidy parvient cependant bien corriger). Le plus souvent, il sagit de balises insres la main totalement inexistantes (par exemple : taper <bt> la place de <br>), ou de balises HTML considres comme obsoltes dans le HTML 4 (telles que <tt> ou <blink>), que Tidy refusera purement et simplement de traiter.

Conclusion
Encore une fois, loutil Tidy ne doit surtout pas tre considr comme un produit miracle : il ne transforme pas du code sale en code conforme. Son intgration dans SPIP suit donc une logique daccompagnement dun processus de nettoyage : SPIP lui-mme continue produire du code de plus en plus propre ; Tidy sert alors mettre la dernire touche de nettoyage sur du code dj trs compliant (au passage, en rsolvant quelques incompatibilits difficiles grer avec un code unique entre le HTML et le XHTML, telles que certaines balises auto-fermantes en XHTML, et non fermes en HTML, telles que <br / >) ; Tidy est ensuite utilis pour identifier les erreurs de codage dans le code source des articles eux-mmes (lors de linsertion, assez frquent, de code HTML la main dans le corps des articles).

Encore une fois, ces fonctionnalits sont toutes rcentes, et demandent sans doute des tests supplmentaires. Nhsitez pas faire part de votre exprience sur spip-dev.
[1] Ce fichier titre son nom de larticle W3C go home!, publi sur sur uZine, qui critiquait lacharnement des prophtes de la compliance emm... les webmestres qui se contentent de faire des pages Web ; lessentiel, rappelons-le, est de publier sans se casser la tte. Si en plus on peut le faire de manire conforme, tant mieux, et cest lobjet de cette passerelle SPIP-Tidy.

http://www.spip.net/fr_article3070.html (6 of 7)2006.04.17 19.22.38

[SPIP] Le support LDAP

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Le support LDAP
franais catal Espaol italiano

Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des

Attention, cet article est vraiment destin des utilisateurs avancs, qui matrisent lusage de LDAP et souhaitent appuyer SPIP sur un annuaire LDAP existant. LDAP (Lightweight Directory Access Protocol) est un protocole permettant dinterroger un annuaire contenant des informations dutilisateurs (nom, login, authentification...). Depuis la version [SPIP 1.5] il est possible de vrifier si un rdacteur est dans la base LDAP avant de lui donner accs lespace priv. A linstallation, SPIP dtecte si PHP a t compil avec le support LDAP. Si oui, la cinquime tape ( crer un accs ), un bouton permet dajouter un annuaire LDAP la configuration SPIP. La configuration qui suit est relativement simple, elle essaie de deviner les paramtres au maximum. Notamment, elle permet de choisir le statut par dfaut des auteurs venant de lannuaire : ceux-ci peuvent tre rdacteurs (conseill), administrateurs ou simples visiteurs. Note : par dfaut, lextension LDAP de PHP nest gnralement pas active, donc SPIP naffichera pas le formulaire correspondant lors de linstallation. Pensez activer lextension LDAP dans votre installation de PHP si vous voulez utiliser LDAP avec SPIP. Si SPIP est dj install et que vous voulez configurer lannuaire LDAP, il faudra reprendre linstallation en effaant le fichier ecrire/inc_connect.php3.

http://www.spip.net/fr_article1910.html (1 of 3)2006.04.17 19.22.49

[SPIP] Le support LDAP

formules mathmatiques en LaTEX SPIP 1.8 : linterface graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

Une fois la configuration correctement effectue, tous les utilisateurs de lannuaire LDAP seront identifis en tapant leur login (ou nom) dans lannuaire LDAP, puis leur mot de passe. Notez que cela nempche pas de crer directement des auteurs dans SPIP ; ces auteurs ne seront pas recopis dans lannuaire mais grs directement par SPIP. Dautre part les informations personnelles (biographie, cl PGP...) des auteurs authentifis depuis LDAP ne seront pas non plus recopies dans lannuaire. Ainsi SPIP na besoin que dun accs en lecture seule lannuaire LDAP. Important : crez toujours un premier administrateur normal (non LDAP) lors de linstallation de SPIP. Cest prfrable pour viter dtre bloqu en cas de panne du serveur LDAP.

Pour en savoir plus


Les infos de connexion au serveur LDAP sont crites dans inc_connect.php3. Corollaire : il faut supprimer ce fichier et relancer linstallation pour activer LDAP sur un site SPIP existant. Dans la table spip_auteurs, est ajout un champ "source" qui indique do viennent les infos sur lauteur. Par dfaut, cest "spip", mais a peut aussi prendre la valeur "ldap". Ca permet de savoir notamment quels champs ne doivent pas tre changs : en particulier, on ne doit pas autoriser la modification du login, car sinon il y a une perte de synchronisation entre SPIP et LDAP. A lauthentification, les deux mthodes sont testes la suite : SPIP puis LDAP. En fait un auteur LDAP ne pourra pas tre authentifi par la mthode SPIP (mthode standard avec challenge md5) car le pass est laiss vide dans la table spip_auteurs. Un auteur SPIP, quant lui, sera authentifi directement depuis la table spip_auteurs. Dautre part, si le login entr ne vient pas de SPIP, le mot de passe est transmis en clair. Quand un auteur LDAP se connecte pour la premire fois, son entre est ajoute dans la table spip_auteurs. Les champs remplis sont : nom, login et email qui viennent de LDAP (champs cn, uid et mail respectivement) et le statut dont la valeur par dfaut a t dfinie linstallation (rdacteur, admin ou visiteur). Important : on peut modifier le statut par la suite, afin de choisir ses admins la main par exemple. Une fois un auteur connect, il est authentifi par la voie classique, cest--dire simplement avec le cookie de session. Ainsi on ne se connecte LDAP que lors du login (spip_cookie.php3). De mme, les infos prises en compte dans laffichage et les boucles sont celles de spip_auteurs, pas celles de lannuaire.

http://www.spip.net/fr_article1910.html (2 of 3)2006.04.17 19.22.49

[SPIP] Le support LDAP

Pour les auteurs SPIP, rien ne change. On peut les crer et les modifier comme lhabitude.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1910.html (3 of 3)2006.04.17 19.22.49

[SPIP] Le traitement des images

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Le traitement des images


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface catal English Espaol italiano occitan

[SPIP 1.8] permet dutiliser les systmes de traitement dimages installs sur votre site dhbergement. Introduites dans la version 1.7, ces fonctions de SPIP sont compltes et plus puissantes. SPIP utilise le traitement dimages de trois manires diffrentes : la cration de vignettes de prvisualition pour les images installes comme documents joints ; cela tait dj prsent dans la version 1.7 ; [SPIP 1.8] permet de plus, dans ces portfolios , de faire subir chaque image une rotation 90 (cela est particulirement intressant lorsquon installe une srie de photographies depuis un appareil photo numrique) ;

http://www.spip.net/fr_article3024.html (1 of 5)2006.04.17 19.23.5

[SPIP] Le traitement des images

graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

de nombreux endroits dans lespace priv, laffichage de vignettes destines illustrer la navigation, partir des logos des articles, des rubriques et mme des auteurs (par exemple, si lon dote les participants un site de logos dauteurs, des vignettes de ces logos accompagneront tous les messages de ces auteurs dans les forums de lespace priv) ;

dans les squelettes, les webmestres disposent dune fonction reduire_image particulirement utile pour contrler sa mise en page, et crer diffrentes versions (de diffrentes tailles) dune mme image. Nous ne pouvons quencourager les webmestres jouer avec cette fonction pour enrichir et contrler leur interface graphique ; on en tirera avantage pour obtenir :
q

des alignements dimages parfaits (par exemple : toutes les images de la mme largeur), sans sobliger installer des images de dimensions prdfinies ; la garantie de ne pas faire exploser sa mise en page lorsquune image trop grande est installe par un rdacteur,

http://www.spip.net/fr_article3024.html (2 of 5)2006.04.17 19.23.5

[SPIP] Le traitement des images


q

des effets de survol et danimation raliss simplement en utilisant la mme image des tailles diffrentes (sans devoir jouer avec les logos de survol ), des interfaces de portfolios (galeries de photos) patantes...

Mais, pour raliser ces oprations de traitement dimages, SPIP fait appel des systmes qui ne peuvent pas tre installs automatiquement avec SPIP, mais doivent tre prsents sur le serveur qui hberge votre site. Il faut donc que ces systmes soient prsents en plus de SPIP (dit autrement : il ne suffit pas que SPIP soit install pour que les fonctions de traitement dimages soient disponibles ; il faut en fait que ces fonctions soient prsentes par ailleurs).

Le choix dun systme de traitement dimages se fait dans la partie Configuration (configuration avance) de lespace priv. SPIP permet de choisir parmi 5 mthodes diffrentes de traitement des images.

Imagemagick
Imagemagick en tant quextension de PHP (php-imagick) est le choix privilgi par SPIP. SPIP est capable de dterminer seul sa prsence. Si Imagemagick est prsent sur votre serveur, alors SPIP lutilisera automatiquement. Si Imagemagick nest pas prsent sur votre serveur, alors SPIP vous proposera de choisir parmi dautres mthodes. Ces mthodes ntant pas dtectables par SPIP (et, en tout cas, pas parfaitement), une vignette vous est propose pour chaque mthode ou, ventuellement, pas de vignette si la mthode ne fonctionne pas sur votre site. Vous tes alors invit slectionner votre mthode prfre (parfois : slectionner la seule rellement disponible !).

http://www.spip.net/fr_article3024.html (3 of 5)2006.04.17 19.23.5

[SPIP] Le traitement des images

GD, GD2
GD (et sa version 2, nettement plus puissante) est une extension de PHP dsormais frquemment prsente sur les serveurs, y compris les hbergeurs mutualiss. Si GD2 est prsente, vous pouvez lutiliser, elle donne des rsultats de bonne qualit. En revanche, GD (comprendre : version 1 de GD ) est propose comme pisaller : le traitement des images se fait en 256 couleurs, et introduit de fortes dgradation des images ; elle nest donc slectionner que si aucune autre mthode ne fonctionne sur votre site.

Imagemagick par convert


Convert est le logiciel en ligne de commande de Imagemagick. La qualit est absolument patante, cependant son installation est relativement complexe. Une fois convert install sur votre site, vous devez configurer le chemin daccs dans mes_options.php3 (il sagit dun appel en ligne de commande) par la variable suivante :
$convert_command = '/bin/convert';

Il convient ici dindiquer le chemin complet daccs au programme. Sous Linux, ce chemin est souvent
$convert_command = '/bin/convert';

sous MacOS X, sil est install avec Fink :


$convert_command = '/sw/bin/convert';

(ces valeurs sont fournies titre indicatif ; comme tout programme, il peut tre install quasiment nimporte o...).

NetPBM
http://www.spip.net/fr_article3024.html (4 of 5)2006.04.17 19.23.5

[SPIP] Le traitement des images

Cette mthode consiste en trois programmes, dj anciens, qui permettent de raliser le redimensionnement de limage. Lavantage de cette mthode est que ces programmes peuvent tre installs sans accs root sur la plupart des hbergements. On trouvera, sur le site du logiciel gallery, une explication claire et des versions prcompiles de NetPBM. Dans SPIP, on configure le chemin daccs pnmscale (lun seulement des trois programmes installs - les deux autres chemins sen dduiront, puisque les programmes sont installs dans le mme rpertoire) par la variable suivante :
$pnmscale_command = '/bin/pnmscale';

(encore une fois, cest--vous de dterminer le chemin daccs rel de votre installation).

**
Pour rappel, vous pouvez obtenir nombre dinformations utiles sur votre systme via la page /ecrire/info.php3, notamment : le systme utilis (utile pour installer NetPBM prcompil) ; la version de PHP ; la prsence ventuelle des extensions GD, GD2 et Imagemagick. Enfin, en cas de difficult, la meilleure solution consiste contacter votre hbergeur pour quil installe les extensions ncessaires si aucune nest prsente. La prsence dau moins une extension graphique de PHP est dsormais une norme chez les hbergeurs, nhsitez pas demander leur installation pour en bnficier sur votre site.

tlcharger le squelette de cette page

http://www.spip.net/fr_article3024.html (5 of 5)2006.04.17 19.23.5

[SPIP] Insrer des formules mathmatiques en LaTEX

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Insrer des formules mathmatiques en LaTEX


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX catal Espaol italiano

[SPIP 1.8] introduit une puissante fonctionnalit permettant dinsrer dans les textes des formules de mathmatique complexes, en utilisant la syntaxe de TEX/ LaTEX. Cette fonctionnalit permet par exemple dafficher une formule comme celle-ci :

en la codant directement dans le texte, comme on peut le faire avec TEX.

Notez bien : lutilisation de cette mthode ncessite, videmment, de connatre la syntaxe des formules dans TEX. Syntaxe qui nest pas simple...

Des images dans le texte

http://www.spip.net/fr_article3016.html (1 of 4)2006.04.17 19.23.30

[SPIP] Insrer des formules mathmatiques en LaTEX

SPIP 1.8 : linterface graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

Le principe technique de cette mthode consiste transformer chacune des formules en image, image qui est ensuite affiche dans le texte. Cest actuellement la mthode la plus simple et efficace pour afficher des formules mathmatiques complexes sur une page Web.

Pour lheure, laffichage de formules mathmatiques sur des pages Web grce au standard MathML nest absolument pas viable, limplmentation de MathML dans les navigateurs tant totalement erratique. La solution retenue par SPIP (lintgration dimages reprsentant les formules) est actuellement la seule qui garanti que tous les visiteurs dun site verront correctement les formules mathmatiques. Il est important de comprendre que, dans SPIP, seules les formules sont transformes. Il nest pas question, en particulier, dutiliser les macro-fonctions de TEX pour raliser la mise en forme du document. Il sagit ici dun outil destin intgrer des formules mathmatiques lintrieur dun document cod selon les habitudes de SPIP.

Syntaxe dans SPIP


La syntaxe dans SPIP consiste placer la partie de texte concerne par le traitement entre les pseudo-tags suivants :

<math> ... Ici ... </math>

on extrait les formules mathmatiques...

Puisque seules les formules mathmatiques sont traites, on peut en ralit ajouter <math>...</math> de manire trs large (en clair : on peut ajouter <math> tout au dbut du texte, et </math> tout la fin...). La seule incompatibilit sera le cas o lon souhaite afficher le symbole dollar ($) dans le texte, ce symbole tant utilis pour dlimiter les formules. (Cest la raison, en ralit, de lexistence des codes <math></math>.)
http://www.spip.net/fr_article3016.html (2 of 4)2006.04.17 19.23.30

[SPIP] Insrer des formules mathmatiques en LaTEX

lintrieur de ces pseudo-tags, on code ensuite les formules de mathmatiques selon les normes de TEX, en les encadrant de dollars ($) ou de double-dollars ($ $) pour les formules centres. Voici un exemple :

On peut insrer des matrices :

; on peut placer des

fractions, telles que , ,

; utiliser des lettres grecques

; centrer des formules complexes :

que lon pourra coder ainsi :


On peut insrer des matrices: $\pmatrix{1&0&0\cr 0&a&0\cr 0&0&b\cr}$; on peut placer des fractions, telles que ${1 \over z}$, ${1\over\displaystyle 1+{1\over x}}$; utiliser des lettres grecques $\alpha$, $\beta $, $\gamma$, $\Gamma$, $\varphi$; centrer des formules complexes: $$\left|{1\over N}\sum_{n=1}^N \gamma(u_n) -{1\over 2\pi}\int_0^{2\pi}\gamma(t){\rm d}t \right| Le systme est limit laffichage de formules mathmatiques. De ce fait, toutes \le autres fonctions de les {\varepsilon\over 3}.$$ T X sont dsactives. Parmi la plus importante
E

interdiction : il nest pas possible de dfinir ses propres macros (\def...{...} est dsactiv) et les macros utilises en dehors des formules mathmatiques ne seront pas reconnues. lusage, on trouvera dautres limitations, en se souvenant toujours que le but est dintgrer des formules mathmatiques dans ses textes, et rien de plus...

http://www.spip.net/fr_article3016.html (3 of 4)2006.04.17 19.23.30

[SPIP] Insrer des formules mathmatiques en LaTEX

Pour les webmestres


Le traitement des quations se fait sur le mode client-serveur : les formules sont envoyes un serveur centralis, qui retourne votre site les fichiers graphiques de ces quations. (videmment, les fichiers sont sauvegards sur votre systme, et lchange na lieu quune seule fois par quation.) Pour plus dinformations sur le systme utilis, vous pouvez consulter la page du Wiki de SPIP. Vous y trouverez notamment les explications pour monter votre propre serveur dquations, afin de ne plus dpendre de notre serveur central.

tlcharger le squelette de cette page

http://www.spip.net/fr_article3016.html (4 of 4)2006.04.17 19.23.30

[SPIP] SPIP 1.8 : l'interface graphique

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

SPIP 1.8 : linterface graphique


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface graphique catal English Espaol italiano

Linterface graphique de lespace priv a t, dans la version 1.8, largement remanie. Au dl de laspect purement graphique de linterface (quil est inutile de dtailler), nous prsentons ci-dessous quelques-uns des lments dergonomie introduits, destins faciliter le travail la fois des utilisateurs dbutants et des utilisateurs confirms.

The Un-seul-click interface for the SPIP-user


Lune des principales tches effectues sur cette version a consist tenter de rduire le nombre de clics ncessaires pour accder aux diffrentes pages. Il est destin la fois aux utilisateurs confirms (ils gagnent du temps) mais aussi aux utilisateurs dbutants en rendant visible toutes les informations ncessaires (telle page nest pas cache comme sous-option dune autre page, elle est accessible directement). videmment, on a tent ici, selon lhabitude de SPIP, de ne pas rendre plus confuse linterface pour les dbutants en voulant faciliter le travail des utilisateurs confirms. La modification la plus visible par rapport aux versions prcdentes (depuis la version 1.4) est la disparition du second bandeau de navigation. Dsormais tous les lments de ce second bandeau apparaissent en popup par survol des

http://www.spip.net/fr_article3037.html (1 of 9)2006.04.17 19.24.22

[SPIP] SPIP 1.8 : l'interface graphique

Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

lments principaux (eux-mmes rorganiss selon des principes simplifis comme un retour linterface de SPIP 1.0 !). Ainsi chacune des pages de ce second bandeau devient accessible en un clic depuis toutes les pages de lespace priv.

Selon la mme logique, le bandeau color accueille, outre les options dinterface (couleur, taille de lcran, etc.), quelques popups rcapitulant en permanence certaines informations utiles : une navigation dans lintgralit de la hirarchie des rubriques, par un systme de menus droulants, un rappel des articles en cours de rdaction et proposs la publication, ainsi quun des boutons crer un article, une brve... , linterface de recherche, les raccourcis lis au calendrier interne et la messagerie.

diffrents endroits de linterface (notamment sur la page suivre ), on pourra reprer des petits boutons Plus . Destins aux utilisateurs confirms (labsence de descriptif explicite de ces boutons faisant quon en dcouvre lusage au fur et mesure), ils envoient des pages spcifiques. Par exemple, ct dune liste darticles, ce bouton mne la page Tous vos articles ; ct dune liste

http://www.spip.net/fr_article3037.html (2 of 9)2006.04.17 19.24.22

[SPIP] SPIP 1.8 : l'interface graphique

de brves, le bouton mne la page de gestion des brves, etc.

Changements de statut dans les listes


Une interface de changement de statut lintrieur mme des listes (darticles, notamment) permet aux administrateurs de modifier le statut dune srie dlments sans changer de page. Cette manipulation, immdiate, permet de changer, par exemple, le statut de tous les articles dune mme rubrique (tous les publier, tous les dpublier) sans changer de page.

http://www.spip.net/fr_article3037.html (3 of 9)2006.04.17 19.24.22

[SPIP] SPIP 1.8 : l'interface graphique

Des vignettes et des rotations


Si vous disposez de fonctions de traitement dimages sur votre serveur, SPIP peut en tirer partie pour illustrer graphique lespace priv : vignettes des logos dans les listes darticles, brves, sous-rubriques, vignettes des auteurs dans les forums internes. Ces fonctions graphiques rendent linterface plus agrable, mais aussi plus lisible (les lments des listes tant ainsi mieux diffrencis graphiquement par laffichage dun petit logo).

Ces fonctions permettent aussi deffectuer des rotations de photographies dans la nouvelle interface de portfolio.

http://www.spip.net/fr_article3037.html (4 of 9)2006.04.17 19.24.22

[SPIP] SPIP 1.8 : l'interface graphique

Le calendrier
Outre les changements graphiques de linterface du calendrier interne, on remarquera lapparition de cinq petits boutons de rglage ergonomique : les petites horloges permettent de dvelopper plus ou moins laffichage de la matine ou de laprs-midi ; des loupes plus et moins permettent de zoomer sur cet affichage.

Interface purement textuelle


SPIP 1.8 introduit une version nouvelle de linterface, destine aux malvoyants. Par rapport la version texte de linterface (introduite dans SPIP 1.4), cette nouvelle interface est nettement allge (linterface texte de linterface, elle, convient aux connexions relativement lentes, mais pour une lecture lcran par un utilisateur voyant). On peut accder cette interface par ladresse /ecrire/oo, ou bien en suivant le lien Afficher linterface textuelle simplifie qui apparat sur les butineurs ne comprenant pas Javascript.

http://www.spip.net/fr_article3037.html (5 of 9)2006.04.17 19.24.22

[SPIP] SPIP 1.8 : l'interface graphique

Il est possible de revenir linterface habituelle en suivant le lien propos en bas de page ( Retour linterface graphique complte ). Notez qualors vous revenez en interface dite simplifie .

Lquipe des dveloppeurs (liste de discussion spip-dev) est trs intresse par des retours dexprience de la part dutilisateurs concerns par cette interface. Nous manquons cruellement de tmoignages pour amliorer le systme en fonction de tels utilisateurs. On notera que cette interface est galement particulirement adapte aux connexions sur supports mobiles dots de connexions trs lentes et/ou dcrans de petite taille (smartphones, PDA communiquants).

http://www.spip.net/fr_article3037.html (6 of 9)2006.04.17 19.24.22

[SPIP] SPIP 1.8 : l'interface graphique

Espaces plus grands (ou pas...)


La zone Texte du formulaire de modification darticles sadapte pour occuper toute la hauteur de la fentre. Ce qui, ds quon utilise une dfinition dcran suprieure 800x600, permet dagrandir notablement lespace pour saisir son texte. Selon le mme principe, les fentres de Navigation rapide occupent toute la hauteur de lcran.

Formulaires dynamiques
De nombreux formulaires deviennent dynamiques : des boutons de validation, des cases de slection, ainsi que des zones de texte, apparaissent ou disparaissent en fonction des choix des utilisateurs. Ainsi, dans laffichage dun article, certains boutons de Validation napparaissent que lorsquon modifie le menu droulant attenant. On pourra galement voir de tels formulaires dans lespace de configuration du site (par exemple, dans la zone Rfrencement de sites , selon quon slectionne Grer un annuaire de sites Web ou Dselectionner , et Utiliser la syndication ou non, on voit les options de configuration changer immdiatement).

Statistiques
Les pages daffichage des statistiques ne changent pas dans leur principe. On notera lapparition de boutons de zoom pour lvolution des statistiques. Les pages des rpartitions de visites devient nettement plus comprhensible !

Pour les webmestres...


http://www.spip.net/fr_article3037.html (7 of 9)2006.04.17 19.24.22

[SPIP] SPIP 1.8 : l'interface graphique

Les adeptes de HTML pourront se demander comment les grandes icones de navigation de lespace priv changent de couleur selon le choix de lutilisateur. Cet effet est ralis en utilisant des icones au format PNG 24, et en profitant de la transparence fine autorise par ce format (couche alpha). Or, il est habituellement expliqu que Microsoft Explorer est incapable dexploiter la couche alpha du PNG24. Lespace priv de SPIP utilise une astuce permettant cependant de faire utiliser cette couche alpha par Microsoft Explorer. Les webmestres intresss pourront avantageusement lexploiter pour la partie publique de leur site, lors de la cration de leurs propres squelettes...

Il convient de crer une classe de style, classe que lon attribuera aux images concernes (notez bien : on peut appliquer sans risque cette classe des images dans dautres formats que le PNG, la classe sera alors simplement inutile, mais sans dterioration de ces images). Cette classe pourra se dfinir ainsi :
.format_png { behavior: url("win_png.htc"); }

quon applique dans les balises <img src="..." class="format_png">. On constate que cette classe utilise une caractristique de Microsoft Explorer, lappel dun behavior. Celui-ci est un fichier Javascript, prsent dans lespace priv (/ecrire/win_png.htc), que lon recopie la racine du site pour lexploiter en dehors de lespace priv. En ouvrant ce fichier de comportement (behavior), on verra quil fait appel un fichier /img_pack/rien.gif dans son fonctionnement. On doit donc recopier ce fichier la racine du site (depuis /ecrire/img_pack/rien.gif), et remplacer le chemin dans la version de win_png.htc installe la racine du site.

Vous naimez pas le vert ?

http://www.spip.net/fr_article3037.html (8 of 9)2006.04.17 19.24.22

[SPIP] SPIP 1.8 : l'interface graphique

Les gots et les couleurs... Les couleurs de linterface peuvent tre compltes dautres couleurs, ou remplaces. Pour cela, il suffit dinstaller des variables dans un fichier /ecrire/ mes_options.php3 :
global $couleurs_spip; $couleurs_spip[1] = array ( "couleur_foncee" => "#508A72", "couleur_claire" => "#A5DFC7", "couleur_lien" => "#657701", "couleur_lien_off" => "#A6C113" );

$couleurs_spip[] = array ( "couleur_foncee" => "#949064", "couleur_claire" => "#DFDBA5", "couleur_lien" => "#657701", "couleur_lien_off" => "#A6C113" );

Ici, on a remplac le vert (variable 1 ; les couleurs de linstallation normale sont numrotes de 1 6, on peut donc toutes les modifier), et ajout une nouvelle couleur ($couleurs_spip[] indiquant quon ajoute une valeur au tableau (array) $couleurs_spip.

tlcharger le squelette de cette page

http://www.spip.net/fr_article3037.html (9 of 9)2006.04.17 19.24.22

[SPIP] Le calendrier de SPIP 1.8.2

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Le calendrier de SPIP 1.8.2


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface catal Espaol italiano

SPIP 1.8.2 permet de visualiser dans lespace public des calendriers avec le mme affichage que celui de lespace priv, et plus gnralement de construire des agendas quelconques bnficiant des outils de mises en pages de ces calendriers. Cette possibilit est fournie par un nouveau critre de boucle et trois nouveaux filtres. Le critre agenda possde un nombre variable darguments et peut donc scrire de deux faons : {agenda datetime, type, AAAA, MM, JJ} {agenda datetime, periode, AAAA, MM, JJ, AAAA2, MM2, JJ2} Les deux premiers arguments sont : 1. un nom de champ SQL de type datetime (par exemple date ou date_redac pour la table Articles et date_time pour les Breves) ; cet argument est obligatoire. 2. un type de calendrier (jour, semaine, mois ou periode) ; la valeur par dfaut est mois. Ces deux arguments doivent tre littraux (autrement dit ils ne peuvent tre calculs dynamiquement par #ENV ou toute autre balise). Les trois prochains arguments sont optionnels et peuvent tre indiqus par des

http://www.spip.net/fr_article3182.html (1 of 5)2006.04.17 19.24.40

[SPIP] Le calendrier de SPIP 1.8.2

graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

balises (avec et sans filtre) : 1. YYYY une chane dexactement 4 chiffres indiquant une anne ; 2. MM une chane dexactement 2 chiffres indiquant un mois ; 3. JJ une chane dexactement 2 chiffres indiquant un jour. Si ces valeurs sont omises ou nulles, elles sont remplaces par celle de la date courante. Ces paramtres reprsentent la date dun jour dans la priode choisie : si le type est jour, on affichera les lments dont la date correspond au jour spcifi, si le type est semaine, on affichera les lments dont la date est dans la semaine qui contient le jour spcifi, si le type est mois, on affichera les lments dont la date est dans le mois qui contient le mois spcifi (dans ce cas, le paramtre de jour JJ est facultatif). Par exemple :
<B_semaine> <ul> <BOUCLE_semaine(ARTICLES) {agenda date, semaine} {par date}> <li>#TITRE</li> </BOUCLE_semaine> </ul> </B_semaine>

affiche une liste des articles publis dans la semaine actuelle.


<BOUCLE_art_principale(ARTICLES) {id_article}> <B_mememois> <ul> <BOUCLE_mememois(ARTICLES) {agenda date, mois, (#DATE|annee), (#DATE|mois)} {par date}> <li>#TITRE</li> </BOUCLE_mememois> </ul> </B_mememois> affiche une liste des articles publis le mme mois que larticle actuel. </BOUCLE_art_principale>

Dans le cas o largument type (le deuxime argument) vaut periode, trois autres arguments peuvent tre spcifis la fin du critre. Alors : YYYY, MM, JJ correspondront la date de dbut de la priode, YYYY2, MM2, JJ2 correspondront la date de fin de la priode. Si le deuxime trio spcifiant la date de fin est omis, la date courante sera prise comme date de fin, et si le premier trio est galement absent, la priode de slection couvrira toute la vie du site (pour les sites avec beaucoup darticles, le
http://www.spip.net/fr_article3182.html (2 of 5)2006.04.17 19.24.40

[SPIP] Le calendrier de SPIP 1.8.2

temps dexcution risque dtre excessif si dautres critres nen limitent pas le nombre). Par exemple :
<BOUCLE_art_principale(ARTICLES) {id_article}> <B_apres> <ul> <BOUCLE_apres(ARTICLES) {agenda date, periode, (#DATE|annee), (#DATE|mois), (#DATE|jour)} {par date}> <li>#TITRE</li> </BOUCLE_apres> </ul> </B_apres> liste les articles qui ont t publis aprs larticle actuel. </BOUCLE_art_principale>

Pour mettre en page les lments slectionns par une boucle (en particulier une boucle avec un critre agenda) sous forme de calendrier, SPIP fournit trois filtres. Ces filtres fournissent un affichage similaire au calendrier de lespace priv avec le mme systme de navigation. Le filtre agenda_memo sapplique sur une balise de date (par exemple #DATE ou #DATE_MODIF) et prend quatre paramtres : 1. un descriptif 2. un titre 3. une URL reprsentant llment ayant ce titre et ce descriptif (par exemple #URL_ARTICLE) 4. un nom de classe CSS Si la balise sur laquelle agenda_memo sapplique nest pas nulle, il se contente de mmoriser la date et les trois premiers arguments dans un tableau index par le dernier argument (le nom de classe CSS) et ne retourne rien (aucun affichage). Lutilisation du dernier argument comme index pour llment mmoriser permet davoir plusieurs calendriers par page. De plus, la classe spcifie ici sera attribue cet lment dans laffichage en calendrier fourni par agenda_affiche. Ainsi, on peut donner des styles diffrents aux lments. La feuille calendrier.css fournit 28 styles diffrents qui donnent un exemple de diffrents styles de calendrier. Le filtre agenda_affiche sapplique sur une balise retournant le nombre

http://www.spip.net/fr_article3182.html (3 of 5)2006.04.17 19.24.40

[SPIP] Le calendrier de SPIP 1.8.2

dlments afficher (en gnral #TOTAL_BOUCLE) et prend trois paramtres : 1. un texte qui sera affich si la balise filtre ne retourne rien (0 lment afficher) ; 2. un type de calendrier (jour, semaine, mois ou periode) ; 3. des noms de classes CSS utilises dans lappel du filtre prcdent qui permettent de filtrer les lments afficher. Si la balise filtre est nulle, ce filtre retourne son premier argument. Sinon il retourne les lments mmoriss par le filtre agenda_memo mis en page dans un calendrier du type demand. Seul les lments indexs par agenda_memo avec une des classes CSS indiques dans le dernier argument seront affichs (ou alors tous les lments si ce paramtre est omis). Ainsi on peut filtrer les lments pour les rpartir dans plusieurs calendriers sur la mme page. Le type periode restreindra laffichage la priode comprise entre le plus vieil lment et le plus rcent effectivement trouvs, ce qui permet de donner dans le critre une priode trs large sans rcuprer un affichage trop long. Exemple :
<BOUCLE_memorise(ARTICLES) {agenda date, semaine}{par date}>[ (#DATE|agenda_memo{#DESCRIPTIF, #TITRE,#URL_ARTICLE}) ]</BOUCLE_memorise> [(#TOTAL_BOUCLE|agenda_affiche{<: aucun_article:>,semaine})] affiche les articles publis dans la semaine actuelle sous forme de calendrier. <//B_memorise>

Enfin, le filtre agenda_connu teste si son argument est lun des quatre types de calendriers connus (jour, semaine, mois ou periode).

Ce critre et ces filtres sont utiliss par les nouveaux squelettes agenda_jour.html, agenda_semaine.html, agenda_mois. html et agenda_periode.html, appels partir du squelette agenda.html qui indique dans son en-tte les feuilles de style et fonctions javascript ncessaires (mais remplaables volont). Ces squelettes fournissent donc un exemple reprsentatif dutilisation.

http://www.spip.net/fr_article3182.html (4 of 5)2006.04.17 19.24.40

[SPIP] Images typographiques

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Images typographiques
franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface catal italiano

[SPIP 1.9 et GD2] Si GD2 est install sur votre site [1], SPIP peut fabriquer, de lui-mme, des images partir de titres (ou tout lment de la base de donne) en utilisant une police de caractres de votre choix. La fonction qui ralise cet effet est image_typo. La prsente page va vous prsenter les diffrentes variables que lon peut utiliser avec cette fonction.
[(#TITRE|image_typo)]

Si vous ne prcisez aucune variable, image_typo va utiliser la police par dfaut fournie avec SPIP : Dustismo, une police GPL de Dustin Norlander.

police
Vous pouvez prciser le nom dune autre police, que vous aurez pris soin dinstaller sur votre site.

http://www.spip.net/fr_article3325.html (1 of 6)2006.04.17 19.25.4

[SPIP] Images typographiques

graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

[(#TITRE|image_typo{police=dustismo_bold. ttf})]

(Dustismo-bold est galement livr avec SPIP.) En thorie, vous pouvez utiliser de nombreux formats de police : TrueType, PostScript Type 1, OpenType... Selon la configuration de votre site, il est possible que certains formats ne soient pas accepts. Les polices doivent tre installes dans un sous-dossier /polices du dossier / ecrire, ou du dossier contenant vos squelettes. Si nous installons, par exemple, un fichier TrueType ainsi : /ecrire/polices/stencil.ttf il est possible dutiliser cette nouvelle police [2].
[(#TITRE|image_typo{police=stencil.ttf})]

taille
On peut prciser la taille daffichage de la police. Cela sutilise avec la variable taille.
[(#TITRE|image_typo{police=stencil.ttf, taille=36})]

Note : on ne prcise pas 36pt , on indique seulement 36 , sans indication de lunit.

couleur

http://www.spip.net/fr_article3325.html (2 of 6)2006.04.17 19.25.4

[SPIP] Images typographiques

Cette variable permet dindiquer la couleur. Par dfaut, le rendu est noir. Cette variable est une couleur RVB hexadcimale, toujours de la forme 3399BB . Notez : on omet le # qui prcde habituellement ce type de code couleur.
[(#TITRE|image_typo{police=stencil.ttf, taille=36,couleur=4433bb})]

largeur
La variable largeur permet de fixer la largeur maximale de limage. Notez bien : cest une valeur maximale ; limage relle est recadre automatiquement, ensuite, pour adopter les dimensions du texte rellement compos. Le premier pav ci-dessous est compos avec une largeur maximale de 300 pixels, le second avec une largeur de 400 pixels.
[(#TITRE|image_typo{police=stencil.ttf, largeur=300})] [(#TITRE|image_typo{police=stencil.ttf, largeur=400})]

align
La variable align permet de forcer lalignement de plusieurs lignes de texte (lorsque cest le cas) gauche, droite, ou au centre. Exceptionnellement, on utilise ici une syntaxe anglaise, proche de ce qui se fait pour les feuilles de style.

http://www.spip.net/fr_article3325.html (3 of 6)2006.04.17 19.25.4

[SPIP] Images typographiques

[(#TITRE|image_typo{police=stencil.ttf, align=left})] [(#TITRE|image_typo{police=stencil.ttf, align=center})] [(#TITRE|image_typo{police=stencil.ttf, align=right})]

hauteur_ligne
hauteur_ligne permet de fixer la hauteur entre chaque ligne de texte (dans le cas o limage comporte plusieurs lignes).
[(#TITRE|image_typo{police=stencil.ttf, taille=36,hauteur_ligne=80})]

padding
Certaines polices dpassent de leur bote de rendu, et on obtient un effet dsastreux (polices coupes ). La variable padding permet, exceptionnellement, de forcer un espace supplmentaire autour du rendu
http://www.spip.net/fr_article3325.html (4 of 6)2006.04.17 19.25.4

[SPIP] Images typographiques

typographique.
[(#TITRE|image_typo{police=stencil.ttf, padding=5})]

Filtrer limage
Le rsultat de image_typo tant une image, il est tout fait possible de lui appliquer des filtres dimages. Par exemple, ci-aprs, on rend limage semitransparente, ou on lui applique une texture.
[(#TITRE|image_typo{police=stencil.ttf, couleur=aa2244}|image_alpha{60})] [(#TITRE|image_typo{police=stencil.ttf, couleur=aa2244}|image_masque{carre-mur. png})]

[1] GD2 est une extension graphique de PHP, qui permet de nombreuses manipulations dimages. En cas de doute, demandez votre hbergeur si GD2 est install. [2] Attention : si vous ne protgez pas ce dossier, votre fichier de police sera accessible par le Web. Si vous utilisez des polices commerciales, faites attention ne pas vous retrouver, ainsi, diffuser des polices pour lesquelles cela nest pas autoris. N.B.1. Limage cre par image_typo est au format PNG 24 avec une couche alpha pour raliser la transparence. Pour forcer Microsoft Explorer afficher correctement cette transparence, SPIP utilise une classe de feuille de style spcifique, format_png, dfinie dans spip_style.css ; celle-ci appelle un comportement (behavior) rendant laffichage possible sous MSIE. On a donc, encore une fois, tout intrt intgrer le spip_style.css standard dans ses propres squelettes, quitte le surcharger avec ses
http://www.spip.net/fr_article3325.html (5 of 6)2006.04.17 19.25.4

[SPIP] Images typographiques

propres styles. N.B.2. Laffichage de certaines polices (notamment les anglaises et certaines italiques) est problmatique. Les techniques de rendu typographique dans GD2 sont, visiblement, encore en dveloppement (nous rencontrons bugs sur bugs de ce ct). Esprons que les fonctions GD2 progresseront rapidement. N.B.3. De larabe, du farsi, de lhbreu ? Malheureusement : non ! Nous rencontrons pour lheure deux difficults qui ne permettent pas de proposer de solution propre pour laffichage de lhbreu et de larabe. Tout dabord, la gestion de laffichage bidirectionnel nest pas assur par GD2 ; il nest donc pas possible pour linstant de crer des images typographiques pour des chanes scrivant de droite gauche. Pour larabe (et le farsi), les ligatures ne sont pas gres. En particulier : les ligatures dOpenType sont purement et simplement ignores.

tlcharger le squelette de cette page

http://www.spip.net/fr_article3325.html (6 of 6)2006.04.17 19.25.4

[SPIP] Couleurs automatiques

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Couleurs automatiques
franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface catal italiano

[SPIP 1.9 et GD2] SPIP permet dextraire automatiquement une couleur dune image, afin de lappliquer dautres lments dinterface. Par exemple, ct du logo dun article, nous allons afficher le titre du mme article dans une couleur tire de ce logo. De cette faon, tout en rendant laffichage plus vari (dun article lautre, la couleur utilise change en fonction du logo), le fait que la couleur soit extraite de limage assure une certaine cohrence graphique. Cette fonction consistant rcuprer une couleur dans une image est complte par toute une srie de fonctions permettant de manipuler cette couleur, principalement claircir et foncer la couleur. La liste de fonctions est longue, de faon permettre un nombre trs important deffets.

couleur_extraire
partir dune image (logo darticle, logo de rubrique..., mais aussi images de portfolio), on demande SPIP de tirer une couleur.
[(#LOGO_RUBRIQUE||couleur_extraire)]

http://www.spip.net/fr_article3326.html (1 of 6)2006.04.17 19.26.14

[SPIP] Couleurs automatiques

graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

Attention : il ne sagit pas pour SPIP de dterminer la couleur dominante de limage, mais dextraire une couleur de limage. Pour que cette couleur soit rellement reprsentative , limage est rduite une taille de 20 pixels maximum ; ainsi les diffrentes couleurs de limage sont relativement moyennes . Cette valeur de 20 pixels est exprimentale : elle est suffisamment basse pour viter dextraire une couleur trs peu prsente dans limage ; elle est suffisamment leve pour viter que la couleur soit systmatiquement gristre. Utilise sans paramtres, la fonction couleur_extraire retourne une couleur situe lgrement au-dessus du centre de limage. Il est possible dindiquer un point prfr pour le sondage, en passant deux valeurs (x et y) comprises entre 0 et 20 (conseil : entre 1 et 19 pour viter les effets de marges). Par exemple :
[(#LOGO_RUBRIQUE||couleur_extraire {15,5})]

retourne une couleur situe en haut droite du centre de limage. Pour bien comprendre le principe, appliquons ce filtre sur un logo de couleur uniforme :

Le rsultat est : ff9200. Notez bien : les valeurs retournes sont systmatiquement en codage RVB hexadcimal, en omettant le # qui prcde habituellement ces codes. On pensera donc insrer ce dise quand on utilise ces valeurs.

http://www.spip.net/fr_article3326.html (2 of 6)2006.04.17 19.26.14

[SPIP] Couleurs automatiques

On peut, par exemple, appliquer cette couleur au fond dun pav :


<div style="background-color: # [(#LOGO_RUBRIQUE||couleur_extraire)]; width: 100px; height: 100px;"></div>

Appliquons ce filtre une photographie :

En bas gauche, la couleur extraire sans paramtres, cest--dire prsente un peu au dessus du centre de limage (marron clair de la pierre du btiment). En bas droite, on force une couleur situe en haut droite de limage (bleu clair du ciel).
[(#LOGO_RUBRIQUE||couleur_extraire)] [(#LOGO_RUBRIQUE||couleur_extraire {15,5})]

Lutilisation de ce filtre est, techniquement, trs simple. En revanche, crativit et inventivit seront ncessaires pour lexploiter... Voici quelques utilisations : couleur de texte ; couleur de fond dun pav ; couleur dune image typographique ; modifier la couleur dune image (image_sepia)...

Modifier la couleur
http://www.spip.net/fr_article3326.html (3 of 6)2006.04.17 19.26.14

[SPIP] Couleurs automatiques

Une fois la couleur extraite, il est utile de la manipuler, afin de jouer avec diffrentes variantes de la couleur, tout en respectant la cohrence graphique. couleur_foncer, couleur_eclaircir partir de la couleur extraite dune image, nous souhaitons afficher des couleurs plus fonces et plus claires.
[(#LOGO_RUBRIQUE||couleur_extraire)] [(#LOGO_RUBRIQUE||couleur_extraire| couleur_foncer)] [(#LOGO_RUBRIQUE||couleur_extraire| couleur_eclaircir)]

Appliqu aux couleurs extraites des exemples prcdents, cela donne :

On constate quon a ainsi des camaeux de couleurs faciles obtenir, lensemble tant trs cohrent. couleur_foncer_si_claire, couleur_eclaircir_si_foncee Si nous appliquons la couleur extraite au fond dun pav de texte, il faut dterminer dans quelle couleur nous voulons crire ce texte (par exemple : noir sur orange ou blanc sur orange ?) ; cest ce que nous verrons avec les fonctions suivantes.

http://www.spip.net/fr_article3326.html (4 of 6)2006.04.17 19.26.14

[SPIP] Couleurs automatiques

Pour linstant, nous dcidons que le texte sera dune certaine couleur. Nous voulons par exemple que le texte soit noir. Il faut donc choisir la couleur du fond en fonction de ce texte noir : il faut que la couleur du fond soit claire (donc : texte noir sur fond clair). Si nous appliquons le filtre couleur_eclaircir notre couleur extraite, nous avons deux cas : si la couleur est fonce, alors elle est claircie et nous obtenons leffet voulu ; si la couleur est dj claire, alors nous lclaircissons encore, et nous obtenons un fond qui peut devenir quasiment blanc. Or, la couleur tant dj claire , nous aurions voulu lutiliser telle quelle. Cest ici que nous appliquons le filtre couleur_eclaircir_si_foncee : si la couleur est fonce, nous lclaircissons ; si la couleur est claire, nous lutilisons telle quelle. Le filtre couleur_foncer_si_claire a la logique exactement inverse. Il est trs utile, par exemple, pour crire en blanc sur un fond systmatiquement fonc, mais en vitant de rendre ce fond quasiment noir quand la couleur dorigine est dj fonce. couleur_extreme, couleur_inverser Le filtre couleur_extreme passe une couleur fonce en noir, et une couleur claire en blanc. Cela est utile pour crire en noir ou blanc sur un fond color. En ralit, rcuprer la couleur extrme est habituellement utilis avec couleur_inverser, il inverse la couleur RVB. Elle transforme notamment du noir en blanc, et du blanc en noir. En pratique, cela permet dassurer un bon contraste, quelle que soit la couleur du fond du bloc (alors que, dans lexemple prcdent, nous choisissions la couleur du fond du bloc en fonction dune couleur de texte). Appliquons, en couleur de fond, la couleur extraite de limage :
<div style="background-color: # [(#LOGO_ARTICLE||couleur_extraire)];"> ... </div>

On obtient donc, selon le logo de larticle, soit un fond fonc, soit un fond clair. Appliquons, pour la couleur du texte, la couleur extraite, rendue extrme :
[(#LOGO_ARTICLE||couleur_extraire| couleur_extreme)]
http://www.spip.net/fr_article3326.html (5 of 6)2006.04.17 19.26.14

[SPIP] Couleurs automatiques

Si la couleur est fonce, la couleur extrme est noire ; nous crivons en noir sur fond fonc. Si la couleur est claire, la couleur extrme est blanche ; nous crivons en blanc sur fond clair. Dans les deux cas, cest peu lisible. On pourra utiliser cette couleur pour un autre effet (par exemple : une bordure autour du div). Il nous reste inverser cette couleur pour lappliquer au texte ;
<div style="color: #[(#LOGO_ARTICLE|| couleur_extraire|couleur_extreme| couleur_inverser)]; background-color: # [(#LOGO_ARTICLE||couleur_extraire)];"> ... Si la couleur extraite est fonce, la couleur extrme est noire, et linverse est </div>

alors blanche. On crit en blanc sur fond fonc. Si la couleur extraite est claire, la couleur extrme est blanche, et linverse est noire. On crit en blanc sur fond clair. Dans les deux cas, le contraste assure une bonne lisibilit.

tlcharger le squelette de cette page

http://www.spip.net/fr_article3326.html (6 of 6)2006.04.17 19.26.14

[SPIP] Traitement automatis des images

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

Traitement automatis des images


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface italiano

[SPIP 1.9 et GD2] SPIP permet faire subir aux images des effets automatiss. Ces effets ont deux vocations : tout simplement assurer la cohrence graphique du site, en fabriquant automatiquement des lments de navigation qui seront toujours raliss selon les dsirs du graphiste ; crer des effets relativement spectaculaires, sans pour autant demander aux auteurs des articles de traiter les images eux-mmes, et sans non plus interdire les volutions graphiques du site par la suite. Par exemple : on veut, pour interface graphique, que les logos de navigation des articles aient deux aspects : dans tous les cas, ils sont poss sur le sol , avec un reflet sous eux ; au repos, ils sont en noir et blanc, assez foncs ; survols, ils sont en couleur. Sans les automatismes qui suivent, les webmestres ont pris lhabitude de crer, la main, deux versions de ces images, et dinstaller deux logos sur le site. Deux inconvnients (particulirement gnants) : la manipulation est longue ; par ailleurs elle ne peut pas tre confie un tiers, qui serait de toute faon incapable de la raliser correctement ; lorsquon voudra faire voluer linterface graphique du site, on sera bloqu avec ces logos trs typs. Avec les automatismes qui suivent, on travaillerait autrement : les auteurs

http://www.spip.net/fr_article3327.html (1 of 13)2006.04.17 19.26.48

[SPIP] Traitement automatis des images

graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

installeraient un simple logo darticle (par exemple, une photographie), sans aucun traitement spcifique ; et, automatiquement, les squelettes de SPIP fabriqueraient : une vignette la bonne taille ; la mme vignette en noir et blanc, lgrement fonce ; les reflets de limage sur le sol.

Avertissement lenteur
Avant de commencer, signalons que ces fonctions sont lourdes. Voire trs lourdes si vous utilisez de grosses images. Le calcul dune image est relativement long, et sil faut calculer, dans vos squelettes, plusieurs images, voire plusieurs effets pour chaque image, vous risquez dobtenir des erreurs de timeout (temps maximum dexcution des scripts dpass). Cela dit, mme interrompu, le script aura certainement calcul quelques images
http://www.spip.net/fr_article3327.html (2 of 13)2006.04.17 19.26.48

[SPIP] Traitement automatis des images

avant de sarrter, et ces images seront sauvegardes en cache. Ainsi, quand les pages seront recalcules, les images seront directement rutilises depuis le cache et on naura plus derreurs. Cet avertissement concerne, en priorit, les hbergeurs mutualiss.

Transparences
Dans [SPIP 1.9], si lon utilise GD2, outre les fonctions exposes dans cet article, vous constaterez que les rductions dimage (reduire_image) respectent la transparence des fichiers GIF et PNG 24 (transparence par couche alpha). Dans la configuration du site, pensez slectionner GD2 comme mthode de rduction dimage.

Limage dorigine
Toute image gre par SPIP peut se voir appliquer les filtres suivants. Sont donc concerns les logos (darticles, de rubriques...), mais aussi les images de portfolio (images en tant que fichiers joints aux articles), sans oublier les nouvelles images typographiques. Voici, pour nos exemples, une image traiter.

http://www.spip.net/fr_article3327.html (3 of 13)2006.04.17 19.26.48

[SPIP] Traitement automatis des images

image_nb
Le filtre image_nb passe une image en niveaux de gris (ce quon appelle noir et blanc lorsquon voque des photographies).

Sans paramtres (image de gauche), le filtre calcule les niveaux de gris en pondrant les composantes de limage dorigine ainsi :

http://www.spip.net/fr_article3327.html (4 of 13)2006.04.17 19.26.49

[SPIP] Traitement automatis des images

luminosit = 0,299 rouge + 0,587 vert + 0,114 bleu. On peut forcer la pondration des trois composantes RVB en passant les valeurs en pour-mille. Par exemple (image de droite) :
[(#FICHIER|image_nb{330,330,330})]

On a pris chaque composante R, V et B niveau gal.

image_sepia
Le filtre image_sepia applique un filtre Spia . Appliqu une photographie, ce genre deffet donne une tonalit de vieille photographie.

Sans paramtres (image de gauche), la valeur spia est, par dfaut, 896f5e (en RVB hexadcimal). On peut passer la valeur de la couleur de spia en paramtre. Par exemple (image de droite) :
[(#FICHIER|image_sepia{ff0033})]

image_gamma
Le filtre image_gamma change la luminosit dune image. Il rend une image plus claire ou plus fonce. Son paramtre est compris entre -254 et 254. Les valeurs suprieures zro rendent limage plus claire (254 rend toute image entirement blanche) ; les valeurs ngatives rendent limage plus fonce (-254 rend limage compltement noire).
http://www.spip.net/fr_article3327.html (5 of 13)2006.04.17 19.26.49

[SPIP] Traitement automatis des images

[(#FICHIER|image_gamma{70})] [(#FICHIER|image_gamma{150})] [(#FICHIER|image_gamma{254})] [(#FICHIER|image_gamma{-70})] [(#FICHIER|image_gamma{-150})] [(#FICHIER|image_gamma{-254})]

image_alpha
Le filtre image_alpha rend limage semi-transparente, en PNG 24 avec couche alpha. Si limage tait dj semi-transparente, les deux informations sont mlanges.

http://www.spip.net/fr_article3327.html (6 of 13)2006.04.17 19.26.49

[SPIP] Traitement automatis des images

[(#FICHIER|image_alpha{50})] [(#FICHIER|image_alpha{90})]

Le paramtre est une valeur entre 0 et 127 : 0 laisse limage inchange (aucune transparence), 127 rend limage compltement transparente.

image_flou
Le filtre image_flou rend limage... floue. On peut lui passer en paramtre un nombre compris entre 1 et 11, dfinissant lintensit du floutage (de 1 pixel de floutage 11 pixels de floutage).
[(#FICHIER|image_flou)] [(#FICHIER|image_flou{6})]

Sans paramtre, la valeur de floutage est 3.

Attention : ce filtre est particulirement lourd (cest--dire ncessite beaucoup de puissance). Plutt que de tenter un floutage important, on peut prfrer flouter plusieurs fois avec des valeurs faibles. Par exemple, remplacer :
[(#FICHIER|image_flou{6})]

par :
[(#FICHIER|image_flou|image_flou)]

Au pire, le calcul se fera en deux recalcul de squelette, le premier floutage


http://www.spip.net/fr_article3327.html (7 of 13)2006.04.17 19.26.49

[SPIP] Traitement automatis des images

tant sauvegard en cache. Attention (2) : ce filtre agrandit limage, en ajoutant tout autour de limage une marge quivalente la valeur de floutage. Ainsi, avec le paramtre 3 (par dfaut), on ajoute 3 pixels de chaque ct de limage, et le rsultat aura donc 6 pixels de large et de haut de plus que limage dorigine.

image_rotation
Le filtre image_rotation fait tourner limage dun angle gal au paramtre pass. Les valeurs positives sont dans le sens des aiguilles dune montre.

[(#FICHIER|image_rotation{20})] [(#FICHIER|image_rotation{-90})]

Sauf pour les rotations angle droit, la rotation provoque un effet descalier. Nous avons tent de le limiter, mais il reste toujours prsent. Une solution pour rduire cet effet consiste rduire limage aprs avoir appliqu la rotation. Attention : ce filtre est relativement lourd ! Attention (2) : ce filtre modifie les dimensions de limage.

image_flip_vertical et image_flip_horizontal
http://www.spip.net/fr_article3327.html (8 of 13)2006.04.17 19.26.49

[SPIP] Traitement automatis des images

Le filtre image_flip_vertical applique un effet de miroir selon un axe vertical ; image_flip_horizontal selon un axe horizontal. Trs simple dutilisation, il ny a pas de paramtre.
[(#FICHIER|image_flip_vertical)] [(#FICHIER|image_flip_horizontal)]

image_masque
image_masque est le filtre le plus puissant de cette srie. De fait, sa logique est nettement plus complexe que les autres filtres. Il permet, partir dun fichier PNG 24 en niveaux de gris et avec couche de transparence alpha, de modifier : le cadrage de limage ; la transparence dune image ; la luminosit dune image. Dimensions de limage Si limage dorigine est plus grande que le fichier masque, alors limage dorigine est rduite et dcoupe au format du masque, puis on applique les informations de transparence et de luminosit du masque. Utile pour crer les vignettes de navigation. Si limage dorigine est plus petite que le masque, alors on ne recadre pas, on applique simplement les informations de luminosit et de transparence du masque (lui-mme non redimensionn). Voici notre image dorigine :

http://www.spip.net/fr_article3327.html (9 of 13)2006.04.17 19.26.49

[SPIP] Traitement automatis des images

Masque de transparence Les informations de transparence du masque sont directement appliques limage dorigine. Un pixel transparent du masque rend le pixel correspondant de limage dorigine transparent, selon la mme valeur de transparence. (Si limage dorigine est dj transparente, les informations sont mlanges de faon conserver les deux infos de transparence.) Si on a le fichier masque suivant, nomm decoupe1.png :

quon applique ainsi :


[(#FICHIER|image_masque{decoupe1.png})]

http://www.spip.net/fr_article3327.html (10 of 13)2006.04.17 19.26.49

[SPIP] Traitement automatis des images

on obtient limage suivante :

Limage dorigine a t redimensionne aux dimensions de decoupe1.png , et les zones transparentes du masque sont devenues les zones transparentes du rsultat. Masque de luminosit Dans lexemple ci-dessus, limage masque est entirement en gris 50%. Les couleurs de limage dorigine sont alors laisses inchanges (on sest content de dcouper limage. En faisant varier les couleurs du masque, on va appliquer ces diffrences de luminosit limage traite. Lorsquun pixel du masque est plus clair, alors le fichier rsultant est clairci ; si le pixel du masque est fonc, alors on fonce le fichier rsultant. Par exemple, si notre masque est decoupe2.png :

http://www.spip.net/fr_article3327.html (11 of 13)2006.04.17 19.26.49

[SPIP] Traitement automatis des images

[(#FICHIER|image_masque{decoupe2.png})]

on obtient limage suivante :

Dans ces deux exemples, le masque est plus petit que limage dorigine, on obtient donc une sorte de vignette de limage. Si le masque est plus grand que limage dorigine, on lapplique limage non redimensionne. Cela est pratique pour texturer une image. On peut ainsi raliser leffet suivant :

en appliquant un masque en niveau de gris, masque que nous avons cr plus grand que limage dorigine. Attention : limpact sur la luminosit est plus important sur limage finale que
http://www.spip.net/fr_article3327.html (12 of 13)2006.04.17 19.26.49

[SPIP] Traitement automatis des images

dans le fichier masque. Attention (2) : en ralit, le masque de luminosit est un masque de coloration. Si limage masque est colore, alors on modifiera non seulement la luminosit, mais aussi les couleurs de limage. Mais cet effet est particulirement difficile matriser, notamment en partant dimages en couleur.

tlcharger le squelette de cette page

http://www.spip.net/fr_article3327.html (13 of 13)2006.04.17 19.26.49

[SPIP] La structure de la base de donnes

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Guide des fonctions avances

La structure de la base de donnes


franais Spip et les feuilles de style <INCLURE> dautres squelettes Raliser un site multilingue Internationaliser les squelettes Utiliser des URLs personnalises Le moteur de recherche Les variables de personnalisation Tidy : validation XHTML 1.0 Le support LDAP Le traitement des images Insrer des formules mathmatiques en LaTEX SPIP 1.8 : linterface catal Espaol italiano

La structure de la base de donnes est assez simple. Certaines conventions ont t utilises, que vous reprerez assez facilement au cours de ce document. Par exemple, la plupart des objets sont indexs par un entier autoincrment dont le nom est du type id_objet, et qui est dclar comme cl primaire dans la table approprie. NB : cet article commence dater, et personne na encore pris la peine den faire la mise jour. Il faut le lire comme un lment permettant de comprendre le fonctionnement de SPIP, mais plus comme un outil de rfrence. Si vous souhaitez contribuer la documentation en refondant cet article, surtout nhsitez pas !

Contenu rdactionnel
Les rubriques : spip_rubriques

http://www.spip.net/fr_article713.html (1 of 7)2006.04.17 19.27.12

[SPIP] La structure de la base de donnes

graphique Le calendrier de SPIP 1.8.2 Images typographiques Couleurs automatiques Traitement automatis des images La structure de la base de donnes

Chaque rubrique est identifie par son id_rubrique. id_parent est lid_rubrique de la rubrique qui contient cette rubrique (zro si la rubrique se trouve la racine du site). titre, descriptif, texte parlent deux-mmes. id_secteur est lid_rubrique de la rubrique en tte de la hirarchie contenant cette rubrique. Une rubrique dpend dune rubrique qui dpend dune rubrique... jusqu une rubrique place la racine du site ; cest cette dernire rubrique qui dtermine lid_secteur. Cette valeur prcalcule permet dacclrer certains calculs de lespace public (en effet, les brves sont classes par secteur uniquement, et non selon toute la hirarchie). maj est un champ technique mis jour automatiquement par MySQL, qui contient la date de la dernire modification de lentre dans la table. export, id_import sont des champs rservs pour des fonctionnalits futures. Les articles : spip_articles Chaque article est identifi par son id_article. id_rubrique indique dans quelle rubrique est rang larticle. id_secteur indique le secteur correspondant la rubrique susmentionne (voir le paragraphe prcdent pour lexplication de la diffrence entre les deux). titre, surtitre, soustitre, descriptif, chapo, texte, ps parlent deux-mmes. date est la date de publication de larticle (si larticle na pas encore t publi, cest la date de cration). date_redac est la date de publication antrieure si vous rglez cette valeur, sinon elle est gale 0000-00-00 . statut est le statut actuel de larticle : prepa (en cours de rdaction), prop (propos la publication), publie (publi), refuse (refus), poubelle ( la poubelle). accepter_forum : permet de rgler manuellement si larticle accepte des forums (par dfaut, oui). maj : mme signification que dans la table des rubriques. export est un champ rserv pour des fonctionnalits futures. images est un champ contenant la liste des images utilises par larticle, dans un format particulier. Ce champ est gnr par spip_image.php3.

http://www.spip.net/fr_article713.html (2 of 7)2006.04.17 19.27.12

[SPIP] La structure de la base de donnes

visites et referers sont utiliss pour les statistiques sur les articles. Le premier est le nombre de chargements de larticle dans lespace public ; le deuxime contient un extrait de hash des diffrents referers, afin de connatre le nombre de referers distincts. Voir inc-stats.php3. Les auteurs : spip_auteurs Chaque auteur est identifi par son id_auteur. nom, bio, nom_site, url_site, pgp sont respectivement le nom de lauteur, sa courte biographie, son adresse e-mail, le nom et lURL de son site Web, sa cl PGP. Informations modifiables librement par lauteur. email, login sont son e-mail dinscription et son login. Ils ne sont modifiables que par un administrateur. pass est le hash MD5 du mot de passe. htpass est la valeur crypte (i.e. gnre par crypt()) du mot de passe pour le .htpasswd. statut est le statut de lauteur : 0minirezo (administrateur), 1comite (rdacteur), 5poubelle ( la poubelle), 6forum (abonn aux forums, lorque ceux-ci sont rgls en mode par abonnement ). maj a la mme signification que dans les autres tables. Les brves : spip_breves Chaque brve est identifie par son id_breve. id_rubrique est la rubrique (en fait, le secteur) dans laquelle est classe la brve. titre, texte, lien_titre, lien_url sont le titre, le texte, le nom et ladresse du lien associ la brve. date_heure est la date de la brve. statut est le statut de la brve : prop (propose la publication), publie (publie), refuse (refuse). maj : idem que dans les autres tables. Les mots-cls : spip_mots Chaque mot-cl est identifi par son id_mot. Le type du mot-cl est le type, ou groupe, choisi pour le mot-cl. En dfinissant plusieurs types, on dfinit plusieurs classifications indpendantes (par exemple sujet , poque , pays ...). titre, descriptif, texte parlent deux-mmes. maj : idem que dans les autres tables.

http://www.spip.net/fr_article713.html (3 of 7)2006.04.17 19.27.12

[SPIP] La structure de la base de donnes

Les sites syndiqus : spip_syndic Chaque site syndiqu est identifi par son id_syndic. id_rubrique et id_secteur dfinissent lendroit dans la hirarchie du site o viennent sinsrer les contenus syndiqus. nom_site, url_site, descriptif sont le nom, ladresse et le descriptif du site syndiqu. url_syndic est ladresse du fichier dynamique utilis pour rcuprer les contenus syndiqus (souvent il sagit de url_site suivi de backend.php3). Les articles syndiqus : spip_syndic_articles Chaque article syndiqu est identifi par son id_syndic_article. id_syndic rfre au site syndiqu do est tir larticle. titre, url, date, lesauteurs parlent deux-mmes.

Elments interactifs
Les messages de forums : spip_forum Chaque message de forum est identifi par son id_forum. Lobjet auquel est attach le forum est identifi par son id_rubrique, id_article ou id_breve. Par dfaut, ces valeurs sont gales zro. Le message parent (cest--dire le message auquel rpond ce message) est identifi par id_parent. Si le message ne rpond aucun autre message, cette valeur est gale zro. titre, texte, nom_site, url_site sont le titre et le texte du message, le nom et ladresse du lien y attach. auteur et email_auteur sont le nom et le-mail dclars par lauteur. Dans le cas des forums par abonnement, ils ne sont pas forcment identiques aux donnes enregistres dans la fiche de lauteur (i.e. dans la table spip_auteurs). id_auteur identifie lauteur du message dans le cas de forums par abonnement. statut est le statut du message : publie (lisible
http://www.spip.net/fr_article713.html (4 of 7)2006.04.17 19.27.12

[SPIP] La structure de la base de donnes

dans lespace public), prive (crit en raction un article dans lespace priv), privrac (crit dans le forum interne dans lespace priv), off (supprim ou valider, selon la modration des forums - a priori ou a posteriori). ip est ladresse IP de lauteur, dans les forums publics. maj a la mme signification que dans les autres tables. Les ptitions : spip_petitions id_article identifie larticle auquel est associe la ptition (une seule ptition par article). email_unique, site_obli, site_unique, message dfinissent la configuration de la ptition : ladresse e-mail des signataires doit-elle tre unique dans les signatures, ladresse Web est-elle obligatoire, est-elle unique, un message attenant aux signatures est-il autoris (oui ou non). texte est le texte de la ptition. maj : pareil que dans les autres tables. Les signatures de ptitions : spip_signatures Chaque signature est identifie par son id_signature. id_article identifie larticle, donc la ptition sur laquelle est appose la signature. nom_email, ad_email, nom_site, url_site sont le nom, ladresse e-mail, ainsi que le site Web dclars par le signataire. message est le message ventuellement entr par le signataire. statut est le statut de la signature : publie (accepte), poubelle (supprime) ; toute autre valeur donne la valeur de la cl de validation utilise pour la confirmation par e-mail. maj a la mme signification que dans les autres tables.

Les relations entre objets


Ces tables ne grent aucun contenu, simplement une relation entre les objets prsents dans dautres tables. Ainsi : spip_auteurs_articles spcifie la relation entre auteurs et articles. Si un id_auteur y est associ un id_article, cela veut dire que lauteur en question a
http://www.spip.net/fr_article713.html (5 of 7)2006.04.17 19.27.12

[SPIP] La structure de la base de donnes

crit ou co-crit larticle (il peut y avoir plusieurs auteurs par article, et vice-versa bien sr). spip_mots_articles dfinit de mme la relation de rfrencement des articles par des mots-cls.

Gestion du site
La table spip_meta est primordiale. Elle contient des couples (nom, valeur) indexs par le nom (cl primaire) ; ces couples permettent de stocker diffrentes informations telles que la configuration du site, ou la version installe de SPIP. La table spip_forum_cache est utilise afin dadapter le systme de cache linstantanit des forums. Pour chaque fichier du cache ayant donn lieu une requte sur la table spip_forum, la table spip_forum_cache stocke les paramtres de la requte (article, rubrique, brve et ventuel message parent du forum). Lorsquun message est post, les paramtres du message sont compars avec ceux prsents dans spip_forum_cache, et pour chaque correspondance trouve le fichier cache indiqu dans la table est effac. Ainsi les messages nattendent pas le recalcul rgulier de la page dans laquelle ils sinsrent pour apparatre dans lespace public.

Indexation (moteur de recherche)


Six tables sont utilises par le moteur de recherche. Elles se divisent en deux catgories. Le dictionnaire dindexation : spip_index_dico Chaque mot rencontr au cours de lindexation est stock dans cette table, ainsi que les 64 premiers bits de son hash MD5. Cest le mot qui sert de cl primaire, permettant ainsi deffectuer trs rapidement des requtes sur un dbut de mot ; on rcupre alors le(s) hash satisfaisant la requte, afin deffectuer la recherche proprement dite dans les tables dindexation. Les tables dindexation : spip_index_* Ces tables, au nombre de cinq, grent chacune lindexation dun type dobjet : articles, rubriques, brves, auteurs, mots-cls. Une entre par mot et par objet est stocke. Chaque entre contient le hash du mot (en fait les 64 bits de poids fort du hash MD5, cf. ci-dessus), lidentifiant de lobjet index (par exemple lid_article
http://www.spip.net/fr_article713.html (6 of 7)2006.04.17 19.27.12

[SPIP] La structure de la base de donnes

pour un article), et le nombre de points associ lindexation du mot dans lobjet. Ce nombre de points est calcul en fonction du nombre doccurences du mot, pondr par le champ o ont lieu les occurences : une occurence dans le titre dun article gnre plus de points quune occurence dans le corps de larticle. Le mcanisme dindexation est expliqu plus en dtail ici.

tlcharger le squelette de cette page

http://www.spip.net/fr_article713.html (7 of 7)2006.04.17 19.27.12

[SPIP] Initiation : utiliser les feuilles de style avec SPIP

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Initiation : utiliser les feuilles de style avec SPIP

Initiation : utiliser les feuilles de style avec SPIP


Pour tirer parti de toute la souplesse de SPIP, il est recommand dutiliser les feuilles de style. Pas de panique, cette petite initiation permettra aux dbutants de raccrocher les wagons... Introduction Des styles qui ont de la class Une typographie personnalise Ils sont beaux, mes formulaires ! Pour en savoir plus
Rechercher

Rechercher
franais tout le site

Modifications rcentes

http://www.spip.net/fr_rubrique269.html (1 of 2)2006.04.17 19.28.38

[SPIP] Initiation : utiliser les feuilles de style avec SPIP

Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique269.html (2 of 2)2006.04.17 19.28.38

[SPIP] Introduction

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Initiation : utiliser les feuilles de style avec SPIP

Introduction
franais catal Deutsch Trke English Espaol italiano

Cette prsentation considre que vous connaissez le systme des squelettes SPIP et que vous tes capables de comprendre des squelettes simples. Dans le cas contraire, nous vous conseillons de relire le tutorial et/ou le manuel de rfrence.
Introduction Des styles qui ont de la class Une typographie personnalise Ils sont beaux, mes formulaires ! Pour en savoir plus

Pourquoi les feuilles de style ?


Si vous ralisez des pages Web de manire traditionnelle , les indications graphiques sont insres dans le code HTML de votre page. Ainsi chaque fois que vous voulez mettre un texte en rouge, vous crivez <font color="red">. Pour afficher un tableau avec des bordures paisses, vous crivez <table border="2">. Avec cette mthode et un site statique (o chaque article a une page HTML spcifique), changer la maquette de tout un site est un cauchemar : il faut dans tous les fichiers HTML rechercher les morceaux de HTML modifier, et effectuer les modifications une par une (par exemple remplacer <font color="red"> par <b> si lon dcide que les lments anciennement affichs en rouge seront dsormais en gras). Comme vous le savez dj, SPIP amliore beaucoup la situation : vous navez plus

http://www.spip.net/fr_article2330.html (1 of 3)2006.04.17 19.28.52

[SPIP] Introduction

modifier des centaines de fichiers HTML, juste quelques squelettes ; et votre mise en page est remise jour automatiquement sur lensemble du site. Cependant le problme nest pas entirement rsolu. Par exemple, mettons que vous ayez dcid demployer un certain bleu pastel sur beaucoup dlements du site, afin de donner une identit graphique votre site : les liens, les encarts, certains lments de navigation... sont affichs en bleu pastel. Le jour o vous voudrez remplacer ce bleu pastel par un vert ple, vous devrez modifier tous les endroits du squelette o ce bleu apparaissait pour le remplacer par le vert ple. Cela peut tre dcourageant : il nest pas ais dans ces conditions de changer rapidement le rendu des pages, ne serait-ce que pour faire des essais. La solution rside dans lutilisation des feuilles de style. Une feuille de style est un fichier o vous dfinissez un ensemble de proprits graphiques, et les endroits o elles sappliquent. On note deux avantages capitaux des feuilles de style : la feuille de style est un fichier unique et centralis, que vous pouvez appliquer autant de fichiers HTML (et de squelettes SPIP) que vous le dsirez ; les proprits graphiques sont dfinies une seule fois dans la feuille de style, quel que soit le nombre dendroits o ces proprits sont appliques dans le HTML.

Concrtement
La feuille de style, lorsque vous lappliquez un fichier HTML (qui peut tre un squelette SPIP), doit tre dclare dans le tag <head> du fichier HTML - aux cts du titre et autres champs <meta>. De la faon suivante :

<head> ... <link rel="stylesheet" type="text/css" href="mes_styles. css"> </head>

Ici le fichier mes_styles.css contient les proprits graphiques que je veux appliquer la page HTML (dans toute la suite du tutorial, on supposera que mes_styles.css est le nom que vous avez choisi pour ce fichier). Ce fichier porte lextension css . En effet, CSS [1] est le nom du langage utilis pour les feuilles de style, de la mme manire que HTML est le nom du langage utilis
http://www.spip.net/fr_article2330.html (2 of 3)2006.04.17 19.28.52

[SPIP] Introduction

pour la ralisation de pages Web.

Note : une feuille de style peut sappliquer aussi bien une page HTML classique ( statique ) qu un squelette SPIP. Cela veut dire que toute astuce CSS valable dans du HTML classique sera aussi utilisable dans un squelette de votre site... Si vous avez bien lu les paragraphes prcdents, vous serez peut-tre dubitatifs : oui, il faut apprendre un nouveau langage pour utiliser les feuilles de styles (SPIP ny est pour rien !). Les CSS nutilisent pas, en effet, la syntaxe du HTML. Cependant ce langage est trs simple, et il suffit de quelques exemples pour se mettre le pied ltrier...
[1] Cascading Style Sheets : littralement, feuilles de style en cascade .

tlcharger le squelette de cette page

http://www.spip.net/fr_article2330.html (3 of 3)2006.04.17 19.28.52

[SPIP] Des styles qui ont de la class

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Initiation : utiliser les feuilles de style avec SPIP

Des styles qui ont de la class


franais catal Deutsch English Espaol italiano

Dans larticle prcdent, nous avons expos de manire gnrale les avantages des feuilles de style. Ici nous expliquons les apports supplmentaires des feuilles de style lorsquelles sont utilises en conjonction avec SPIP.
Introduction Des styles qui ont de la class Une typographie personnalise Ils sont beaux, mes formulaires ! Pour en savoir plus

Les styles dfinis par SPIP


Comme vous le savez dsormais, les feuilles de style permettent de centraliser et de grer de manire beaucoup plus aise les indications graphiques que lon insrait traditionnellement dans le HTML. Cela rend leur utilisation apprciable, sans tre forcment indispensable : vous pouvez continuer insrer, par endroits, des indications graphiques directement dans le HTML tout en utilisant aussi une feuille de style. Dans SPIP, les feuilles de style acquirent une fonction supplmentaire, fondamentale : elles servent modifier les proprits graphiques des lments qui ne sont pas dfinis dans votre HTML (celui de votre squelette) ! En effet, SPIP gnre de lui-mme une multitude de styles daffichage divers et varis. Ainsi, les raccourcis typographiques (liens hypertexte, intertitres, gras, italique, tableaux...) sont transforms en code HTML afin de les reprsenter lcran. Cela vaut aussi pour les formulaires automatiques (rpondre un forum, signer une ptition...) et dautres encore.

http://www.spip.net/fr_article2331.html (1 of 3)2006.04.17 19.29.5

[SPIP] Des styles qui ont de la class

Afin que vous puissiez tout de mme modifier lapparence graphique de ces styles, SPIP leur donne un nom spcifique, immuable (ces noms font lobjet dune liste exhaustive dans Spip et les feuilles de style ). Par exemple, les {{{intertitres}}} ne gnrent pas un simple tag <h3>, mais un tag <h3 class="spip">. Quel est lintrt ? Ces tags portent un nom spcifique dans lattribut class : ce nom dfinit quelle classe ils appartiennent, cest--dire un ensemble dlments HTML qui hriteront des mmes proprits graphiques dfinies dans la feuille de style. Comment fait-on alors pour changer lapparence de tous les intertitres SPIP ? Cest trs simple, il suffit douvrir votre fichier mes_styles.css (ou tout autre nom que vous avez dcid de lui donner) dans un diteur de texte et dy ajouter les lignes suivantes :

h3.spip { color: red; font-size: 18px; }

Rechargez la page et tous les intertitres SPIP apparatront comme par magie en rouge ; remarquez de plus que les autres tags <h3> de votre page, sil y en a, ne sont pas affichs en rouge... Si rien de tout cela napparait, vrifiez bien que vous avez dclar la feuille de style dans le squelette (dans le tag <head> comme expliqu dans larticle prcdent), et recalculez la page... Expliquons brivement la syntaxe de cette rgle de mise en page : h3.spip juste avant les accolades signifie que la rgle qui suit ne sappliquera quaux tags <h3> qui ont un attribut class gal spip . Notez bien : ni les tags <h3> nayant pas cet attribut, ni les tags ayant cet attribut sans tre des tags <h3>, ne seront concerns. Les accolades contiennent la liste des proprits graphiques associes au style ainsi dfinies. Notons que toutes les proprits non dfinies dans cette liste garderont leur valeur habituelle pour le tag considr ; dans le cas prsent, le tag <h3> gnrera toujours un texte en gras, car rien dans le style ne dit le contraire.

http://www.spip.net/fr_article2331.html (2 of 3)2006.04.17 19.29.5

[SPIP] Des styles qui ont de la class

Les proprits listes entre accolades sont chacunes termines par un pointvirgule. Elles sont constitues dun nom (ce nom est standardis par le langage CSS), suivi dun deux-points et dune ou plusieurs valeurs. Ici nous voyons que la couleur est rgle rouge et que la police de caractres doit tre affiche avec une taille de 18 pixels.

Important : si vous ajoutez vos propres styles, sachez que la valeur donne lattribut class est totalement arbitraire. Votre navigateur ne fera aucune diffrence, que cet attribut soit nomm spip, menu-rubriques ou cheval321. La seule chose qui compte est que cette valeur corresponde bien la rgle que vous aurez nonce dans votre feuille de style. Comme vous le remarquerez, le langage CSS est trs simple et utilise le mme type de vocabulaire que les attributs HTML classiques. Quand vous progresserez dans le langage des feuilles de style, vous continuerez retrouver des notions plus ou moins hrites du HTML traditionnel (border, width, height...).

La gestion du cache
Le fait que votre feuille de style soit dfinie dans un fichier spar (le fameux mes_styles.css) a une consquence importante. En effet, ce fichier, au contraire de vos squelettes nest pas gr par SPIP (il nen a pas besoin !). Cela signifie que si vous modifiez votre feuille de style, vous navez pas besoin de vider le cache de SPIP : il suffit de recharger la page dans votre navigateur. Cela rend le rglage de la mise en page encore plus ais. Rappelons tout de mme que votre feuille de style doit tre dclare dans vos fichiers HTML, et que ceux-ci doivent tre recalculs une premire fois pour que cette dclaration soit prise en compte : la ligne <link rel="stylesheet" type="text/css" href="mes_styles.css"> doit se trouver dans le cache pour que votre navigateur puisse en tenir compte.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2331.html (3 of 3)2006.04.17 19.29.5

[SPIP] Une typographie personnalise

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Initiation : utiliser les feuilles de style avec SPIP

Une typographie personnalise


franais catal Deutsch English Espaol italiano

Introduction Des styles qui ont de la class Une typographie personnalise Ils sont beaux, mes formulaires ! Pour en savoir plus

Aprs une introduction gnrale sur les feuilles de style, nous allons maintenant passer en revue quelques-uns de leurs usages les plus courants sous SPIP. Intressons-nous ici aux styles crs lorsque des raccourcis typographiques sont insrs dans un texte entr sous SPIP. Que lon affiche un article, une brve, une rubrique ou autre na aucune importance : les styles portent toujours les mmes noms. Cela ne nous empchera pas de dcouvrir comment y appliquer ventuellement des habillages graphiques distincts...

Le texte de base
Mme le texte de base sous SPIP, celui que vous entrez dans un formulaire en tapant au kilomtre, gnre des tags HTML particuliers. En effet, il est dcoup en paragraphes ; chaque paragraphe correspond un tag <p class="spip">. Nous pouvons donc associer ces paragraphes un style bien prcis, qui ne sera pas appliqu au reste du texte de la page. Commenons par choisir une police de caractres. Pour cela on utilise la proprit font-family, qui prend pour valeur un ou plusieurs noms de polices de caractres utiliser. Pour un corps de texte comme celui dun article il vaut mieux

http://www.spip.net/fr_article2332.html (1 of 6)2006.04.17 19.29.18

[SPIP] Une typographie personnalise

une fonte empattements ; mettons que vous vous dcidiez pour Bookman Old Style . Ajoutez donc votre fichier mes_styles.css la rgle suivante : p.spip { font-family: "Bookman Old Style"; } (notez quun nom de fonte en plusieurs mots doit tre entour de guillemets...) Un problme peut survenir si la police Bookman Old Style nest pas installe sur lordinateur de vos visiteurs : chaque ordinateur a une configuration diffrente, et noubliez pas que les fontes gratuites de Microsoft sont rarement installes sur Linux et Macintosh... Il est prfrable de prvoir ce cas et spcifier une ou plusieurs polices de remplacement successives :

p.spip { font-family: "Bookman Old Style", "Times New Roman", serif; }

On spcifie ici comme remplaantes successives de Bookman, la classique Times New Roman , et en dernier recours serif . serif nest pas une police en soi, cest un code gnrique qui indique au navigateur de prendre la police empattements par dfaut de lordinateur ; de mme sans-serif spcifie la police sans empattements par dfaut (en gnral Arial ou Helvetica).

On retiendra cette rgle importante : dans la proprit font-family, il convient toujours de proposer plusieurs choix successifs pour sadapter aux polices de caractres installes sur lordinateur du visiteur. Notons que cette rgle est aussi valable pour le tag <font face="..."> du HTML traditionnel. Bien videmment dautres proprits sont votre disposition. Vous pouvez par exemple rgler la taille du texte avec la proprit font-size. Notez cependant que les navigateurs disposent dun rglage pour configurer la taille du texte par dfaut, et le texte principal de vos pages ne devrait pas outrepasser ce rglage, pour des raisons de confort visuel : cest lutilisateur qui choisit la taille de base, non le webmestre.

http://www.spip.net/fr_article2332.html (2 of 6)2006.04.17 19.29.18

[SPIP] Une typographie personnalise

Notez bien que les styles que vous appliquez aux tags <p> sappliquent chaque paragraphe en tant quobjet autonome. Cela autorise certains effets intressants, comme par exemple dindenter la premire ligne des paragraphes en utilisant la proprit text-indent. Par dfaut, cette proprit prend pour valeur zro, cest-dire quil ny a pas dindentation. On peut la modifier pour obtenir, sur chaque premire ligne, un dcalage de soixante pixels droite : p.spip { text-indent: 60px; }

Les liens hypertexte


Ceux qui ont dj ralis leurs premires armes en CSS savent quon peut modifier lhabillage des liens de faon globale : a { color: green; text-decoration: none; } Cette rgle de style spcifie que tous les liens hypertexte (cest--dire tous les tags <a ...>, quils aient ou non un attribut class) seront affichs en vert sans soulignement. SPIP permet daller plus loin. Les liens hypertexte, lorsquils sont gnrs par les raccourcis typographiques, utilisent en effet plusieurs styles diffrents : lorsque le lien est interne (il renvoie vers une autre page de votre site), le tag est <a class="spip_in"> ; lorsque le lien est externe (il renvoie vers un autre site Web), le tag est <a class="spip_out"> [1] ; enfin, lorsque lURL est entre sans titre, le tag est <a class="spip_url">. Il devient donc trs simple de manifester par une apparence graphique diffrente ces trois types de liens. Ainsi :

a { color: green; text-decoration: none;


http://www.spip.net/fr_article2332.html (3 of 6)2006.04.17 19.29.18

[SPIP] Une typographie personnalise

} a.spip_in { color: blue; } a.spip_out { color: red; }

affiche les liens internes en bleu et les liens externes en rouge. Tous les autres liens, y compris ceux qui ne sont pas gnrs par SPIP, safficheront en vert. De plus tous les liens seront affiches sans surlignement : en effet la proprit textdecoration, spcifie dans la premire rgle, na pas t modifie dans les suivantes ; elle sapplique donc automatiquement tous les lments de type <a ...>.

On note ici une proprit fondamentale des feuilles de style : les rgles graphiques sappliquent dans lordre allant de la plus gnrique la plus spcifique. Cela permet de spcifier un comportement gnral pour la plupart des lments, et de modifier ce comportement pour un plus petit sous-ensemble dlments. Cette caractristique fait toute la puissance des feuilles de style.

Appliquer un traitement diffrenci


Plutt que de nous tendre sur la panoplie de styles gnrs automatiquement par les raccourcis typographiques de SPIP, et que vous pourrez habillez votre guise (ils sont numrs dans Spip et les feuilles de style ), tudions ici le cas o vous voulez appliquer un habillage diffrent un mme style, selon sa position dans ce squelette. Ce besoin est lgitime : on veut par exemple afficher le corps de texte dans une police empattements avec indentation en dbut de paragraphe, mais le post-scriptum dans une police plus lisse (sans empattements) et plus petite, sans indentation. Cette opration est en ralit trs simple. Il faut dabord modifier votre squelette afin dintroduire les lments qui permettront de discriminer le texte et le postscriptum. Cela prendra par exemple, lintrieur de la boucle ARTICLES principale, la forme suivante :

http://www.spip.net/fr_article2332.html (4 of 6)2006.04.17 19.29.18

[SPIP] Une typographie personnalise

<div class="texte">#TEXTE</div> <div class="ps">#PS</div>

Il faut ici recalculer la page (car on a modifi le HTML...). Laffichage du navigateur est toujours le mme : normal, nos nouveaux styles ne faisant lobjet daucune rgle dans la feuille de style, ils sont ignors par le navigateur. Remdions-y :

.texte p.spip { font-family: "Times New Roman", serif; text-indent: 50px; } .ps p.spip { font-family: Tahoma, Arial, sans-serif; font-size: 90%; }

La grande nouveaut ici ne rside pas dans les proprits graphiques mais dans la faon dont on les applique au code HTML. En effet, .texte p.spip signifie : cette rgle sapplique tous les tags <p class="spip"> qui sont contenus dans un tag ayant un attribut class gal texte . On pourrait restreindre un peu cette rgle en spcifiant que le tag parent doit en plus tre un tag <div> (le dbut de la rgle scrirait alors div.texte p.spip ) ; mais comme nous matrisons la structure de nos propres squelettes, il nest pas utile de rendre la feuille de style trs restrictive. Toujours est-il que cette feuille de style a le rsultat voulu : les paragraphes du corps de texte saffichent avec une indentation, ceux du post-scriptum dans une fonte plus petite et sans indentation. Pour vrifier que ces rgles sappliquent bien chacun des paragraphes <p class="spip"> et non au <div class="..."> englobant, on peut samuser dfinir un cadre noir : .texte p.spip { border: 1px solid black; }
http://www.spip.net/fr_article2332.html (5 of 6)2006.04.17 19.29.18

[SPIP] Une typographie personnalise

On note que chaque paragraphe du corps de texte (mais pas du post-scriptum) est entour de son propre cadre noir. Si on avait simplement crit .texte au lieu de .texte p.spip , cest le texte tout entier qui serait entour dun unique cadre noir englobant. Remarquons en passant lapparition de la proprit border...

Note : cette astuce, consistant tracer un cadre de couleur pour savoir quels lments sapplique prcisment une rgle, peut tre trs utile quand votre feuille de style senrichit. Nhsitez pas lutiliser si vous commencez perdre pied... Cette mthode est trs puissante et se gnralise avec profit pour la structuration de votre mise en page.
[1] Que les amateurs de liens ouvrants ne se rjouissent pas trop vite : il est impossible, dans une feuille de style, de spcifier quun lien doit souvrir une nouvelle fentre... Rat !

tlcharger le squelette de cette page

http://www.spip.net/fr_article2332.html (6 of 6)2006.04.17 19.29.18

[SPIP] Ils sont beaux, mes formulaires !

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Initiation : utiliser les feuilles de style avec SPIP

Ils sont beaux, mes formulaires !


franais catal Deutsch English Espaol italiano

Introduction Des styles qui ont de la class Une typographie personnalise Ils sont beaux, mes formulaires ! Pour en savoir plus

Vous avez personnalis la mise en page et la typographie de votre site, mais maintenant ce sont les formulaires SPIP qui jurent totalement sur le reste ! Pas de panique, l aussi les feuilles de style remdient au problme. Vous vous souvenez que les feuilles de style, utilises en conjonction avec SPIP, permettent dadapter le rendu des raccourcis typographiques votre mise en page. Eh bien, il en va de mme pour les formulaires gnrs par SPIP : leur aspect graphique peut tre modul afin de sinsrer sans hiatus dans votre design. Encore une fois, pas question ici de passer en revue lensemble des styles fournis par SPIP. Sachez cependant que vous pouvez altrer laspect de tous les formulaires de lespace public : formulaire de rponse aux forums, de recherche, de signature de ptition... [1] Nous nous bornons ici donner quelques recettes.

Des couleurs et du relief


Une nouvelle qui ravira les dbutants en CSS : on peut changer la couleur des champs et des boutons des formulaires [2].

http://www.spip.net/fr_article2336.html (1 of 3)2006.04.17 19.29.40

[SPIP] Ils sont beaux, mes formulaires !

Par exemple, pour que les boutons aient un fond bleu clair, ajoutez la rgle suivante votre fichier CSS (qui, si vous avez suivi cette initiation la lettre, sappelle mes_styles.css) : .spip_bouton { background-color: #b0d0FF; color: black; } Les boutons apparaissent dsormais avec un fond bleu clair (proprit background-color), et un texte noir. Notez que .spip_bouton est le style utilis par les boutons et champs des formulaires SPIP. Modifions maintenant laspect du bord des boutons. Le relief traditionnel des boutons HTML est un peu vieillot. On peut dcider daplatir les bords, et de les paissir en contrepartie pour quils restent bien visibles. Par exemple : .spip_bouton { background-color: #b0d0FF; color: black; border: 2px solid #000060; } La proprit border ainsi dfinie trace un bord pais de 2 pixels, laspect plat ( solid en langage CSS) et de couleur bleu fonc autour des boutons. On pourra galement modifier la police de caractres du bouton (avec les proprits font-size et font-family comme vu aux tapes prcdentes de cette initiation). Et pour les champs ? Il suffit dappliquer vos choix au style .formul au lieu de . spip_bouton.

Un peu despace
Les feuilles de style permettent non seulement de changer les couleurs et les polices de caractres, mais aussi de grer le positionnement relatif des objets dans la page. Sans aller trs loin, montrons comment arer un peu les formulaires : .formulaire { background-color: #e8f4ff; font-family: Verdana, Arial, sans-serif;
http://www.spip.net/fr_article2336.html (2 of 3)2006.04.17 19.29.40

[SPIP] Ils sont beaux, mes formulaires !

font-size: 90%; font-weight: normal; border: 1px solid black; padding: 10px;

} Nous modifions ici laffichage du style .formulaire, qui est le style principal de tous les formulaires gnrs par SPIP. Lintrt de modifier ce style est que lon peut grer laffichage de tous les formulaires. Ici lon applique une couleur de fond, trs claire, et une police de caractres. Mais surtout, on modifie lespacement intrieur de chaque formulaire pris individuellement. Cest la proprit padding qui permet cet effet daration. Notez bien que cette aration se produit prcisment lintrieur du bord dfini par la proprit border : le formulaire est ici considr comme un bloc rectangulaire autonome.

Remarque : les feuilles de style permettent mme de dfinir prcisment la disposition de ces blocs rectangulaires entre eux, sans utiliser de tableaux pour la mise en page. Cest cependant un sujet trop vaste pour cette initiation.
[1] Et mme les boutons dadministration qui saffichent en bas des pages lorsque vous tes connect. [2] Notons cependant que certains navigateurs imposent leurs propres boutons styliss et ne vous laisseront pas en changer laspect.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2336.html (3 of 3)2006.04.17 19.29.40

[SPIP] Pour en savoir plus

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Initiation : utiliser les feuilles de style avec SPIP

Pour en savoir plus


franais catal Deutsch Trke English Espaol italiano Introduction Des styles qui ont de la class Une typographie personnalise Ils sont beaux, mes formulaires ! Pour en savoir plus

Cette initiation na fait queffleurer la puissance des feuilles de style. Vous tes libres de vous contenter du niveau abord ici, ou dexplorer les nombreux documents disponibles sur le Web afin daller plus loin. Citons quelques portes de sortie intressantes.

En franais
OpenWeb, site mlant argumentaires idologiques et articles techniques sur les CSS et autres standards du Web ; un cours CSS dbutant ; Techniques et astuces pratiques pour une mise en page CSS vous expliquera comment grer le positionnement dlments avec les feuilles de style ; une collection de recettes pour une utilisation efficace des CSS ; un pense-bte, pour ne pas se perdre dans le feu de laction ;

http://www.spip.net/fr_article2434.html (1 of 2)2006.04.17 19.29.53

[SPIP] Pour en savoir plus

une traduction en franais du standard CSS2 (assez aride).

En anglais
Listes dlments : des exemples deffets graphiques foison ; de trs bons tutoriaux sur le positionnement dobjets avec les CSS ; le W3C a ses propres tipsntricks... et pour ceux qui ont le got du risque, lintgrale des spcifications originales du W3C !

Petits outils
Si vous utilisez lexcellent navigateur Firefox, le plug-in EditCss vous permet de modifier et tester les feuilles de style la vole, depuis votre brouteur.

tlcharger le squelette de cette page

http://www.spip.net/fr_article2434.html (2 of 2)2006.04.17 19.29.53

[SPIP] Trucs et astuces

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Trucs et astuces
Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau Ne pas afficher les articles publis depuis plus dun an Prsenter les rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles

Rechercher
franais tout le site

Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au

http://www.spip.net/fr_rubrique172.html (1 of 2)2006.04.17 19.31.39

[SPIP] Trucs et astuces

site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

Remplir les meta-tags HTML des pages darticle

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique172.html (2 of 2)2006.04.17 19.31.39

[SPIP] Afficher automatiquement selon la date ou selon un ordre impos

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Afficher automatiquement selon la date ou selon un ordre impos


franais Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau Ne pas afficher les articles publis depuis plus dun an Prsenter les rsultats dune recherche par secteurs Afficher le catal English Espaol italiano

La situation est la suivante : dans un mme site, la prsentation des articles dans diffrentes rubriques doit tre diffrencie : dans certaines rubriques, les articles sont publis les uns aprs les autres, on veut donc les prsenter selon lordre chronologique : les plus rcents en dbut de liste, les plus anciens en fin de liste ; dans dautres rubriques, on veut forcer laffichage des articles en les numrotant ( 1. Le premier article , 2. Le deuxime article ...) ; sur le site public, on veut donc les prsenter selon cet ordre indiqu par la numrotation. Voici une mthode pour raliser cet effet. Nous sommes lintrieur dune boucle de rubrique (par exemple, la page rubrique.html ) :
<BOUCLE_rubrique_principale (RUBRIQUES){id_rubrique}> ... </BOUCLE_rubrique_principale>

lintrieur de cette boucle, nous allons effectuer le test suivant : est-ce quil

http://www.spip.net/fr_article2035.html (1 of 3)2006.04.17 19.31.51

[SPIP] Afficher automatiquement selon la date ou selon un ordre impos

nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les metatags HTML des pages darticle

existe, dans cette rubrique, au moins un article dont le titre commence par un numro suivi dun point ?
<BOUCLE_test_numero(ARTICLES) {id_rubrique}{titre==^[0-9]+\.}{0,1}> Il existe un article numrot dans cette rubrique. </BOUCLE_test_numero> Il n'y a pas d'article numrot. <//B_test_numero>

Le critre intressant ici est :


{titre==^[0-9]+\.}

Il sagit dune slection sur le titre, selon une expression rgulire ( == indique une slection selon une expression rgulire) dont la syntaxe est : au dbut du titre ( ^ indique le dbut de la chane teste), il y a un ou plusieurs ( + indique au moins un des caractres prcdents ) caractres compris entre 0 et 9 ( [0-9] signifie caractres compris entre 0 et 9 inclus ), suivis du caractre point ( \. ). Notez enfin quon ne slectionne quun seul article ainsi numrot ({0,1}) ; de cette faon, lintrieur de la boucle ne sera effectu quune seule fois. De plus, il suffit quil existe un seul article numrot pour provoquer laffichage dune liste par ordre numrot . Cette boucle affiche ainsi Il existe un article numrot dans cette rubrique. sil y a au moins un article dont le titre est prcd dun numro dans la rubrique, et Il ny a pas darticle numrot. sinon. Il suffit maintenant dinstaller la place de ces mentions des boucles daffichage des articles selon lordre de prsentation dsir :
<BOUCLE_test_numero(ARTICLES) {id_rubrique}{titre==^[0-9]+\.}{0,1}> <BOUCLE_ordre_numeros(ARTICLES) {id_rubrique}{par num titre}> <li> [(#TITRE|supprimer_numero)] </BOUCLE_ordre_numeros> </BOUCLE_test_numero> <BOUCLE_ordre_date(ARTICLES) {id_rubrique}{par date}{inverse}> <li> #TITRE </BOUCLE_ordre_date> <//B_test_numero>

http://www.spip.net/fr_article2035.html (2 of 3)2006.04.17 19.31.51

[SPIP] Trier des articles par ordre alphabtique, sauf un qu'il faut afficher en premier

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier
franais catal English Espaol italiano

Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un

Mettons que vous voulez prsenter une srie darticles par ordre alphabtique, sauf le prologue que vous voulez lgitimement afficher au dbut de la liste... Il existe une astuce pour duper le tri effectu par SPIP : il suffit dajouter un espace au dbut du titre de larticle (par exemple, transformer "Prologue" en " Prologue"). Le tri alphabtique pensera alors que ce titre doit passer avant les autres , et laffichera en premier. Cependant lespace supplmentaire du titre sera ignor par le navigateur Web, et ne provoquera pas de dcalage disgrcieux dans la mise en page. Notez bien : lastuce ne fonctionnera que si vous utilisez un classement alphabtique sur le titre des articles (cest--dire le critre de boucle {par titre}). Tout autre classement ne fonctionnera pas. Remarque : cela sapplique galement aux rubriques, brves, sites rfrencs, etc.

http://www.spip.net/fr_article2034.html (1 of 2)2006.04.17 19.32.4

[SPIP] Trier des articles par ordre alphabtique, sauf un qu'il faut afficher en premier

tableau Ne pas afficher les articles publis depuis plus dun an Prsenter les rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les meta-tags HTML des pages darticle

tlcharger le squelette de cette page

http://www.spip.net/fr_article2034.html (2 of 2)2006.04.17 19.32.4

[SPIP] Plusieurs logos pour un article

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Plusieurs logos pour un article


franais Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau Ne pas afficher les articles publis depuis plus dun an Prsenter les catal Espaol italiano

Il est frquent, pour rythmer la navigation sur son site, de vouloir utiliser des logos diffrents (notamment de tailles diffrentes) pour un mme article en fonction de lendroit o il apparat. Par exemple, utiliser un gros logo sur la page daccueil du site qui permette de bien mettre en valeur larticle principal du moment, et un petit logo pour la navigation gnrale du site. Jusqu rcemment, les utilisateurs avaient cr des mthodes personnelles bases sur lutilisation diffrencie du logo normal et du logo pour survol . Dans notre exemple, le logo normal utilis comme petit logo , appel par la balise #LOGO_ARTICLE_NORMAL, et sur le sommaire, le logo pour survol appel par la balise #LOGO_ARTICLE_SURVOL pour afficher la grande version du logo. Cette mthode complique souvent le code des squelettes, et interdit lutilisation habituelle des logos avec survol que SPIP fournit automatiquement. Elle est de plus dune souplesse trs limite. Depuis la version [SPIP 1.4], il est possible de joindre des documents aux articles (et, accessoirement, aux rubriques). Nous allons expliquer ci-dessous comment utiliser ces documents joints pour crer plusieurs logos pour un mme article.

Principe gnral
Nous continuerons utiliser les deux logos de larticle pour afficher les logos

http://www.spip.net/fr_article2001.html (1 of 10)2006.04.17 19.32.21

[SPIP] Plusieurs logos pour un article

rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les meta-tags HTML des pages darticle

normaux (ceux qui apparaissent dans les liens de navigation les plus frquents, par exemple sur les pages des rubriques), ce qui permet de conserver la simplicit de gestion des logos avec SPIP et la gestion automatique du survol (on revient lutilisation vidente de la balise #LOGO_ARTICLE, ou de #LOGO_ARTICLE_RUBRIQUE). Nous dciderons de joindre aux articles un document (gnralement une image aux formats GIF, JPEG ou PNG) auquel nous donnerons systmatiquement le mme nom. Il nous suffira dafficher ce document (en lappelant par son nom) la place du logo normal lorsque nous le dsirerons. Cette mthode permet ainsi de crer autant de logos diffrents que ncessaire pour un mme article (pas seulement un grand logo et un petit logo, mais pourquoi pas une image pixelise avec un travail typographique labor pour afficher le titre, etc.). Nous verrons de plus que, grce aux boucles de SPIP, on pourra trs facilement dans les squelettes dterminer si un tel grand logo (document portant le nom choisi par nous) est prsent, et agir en consquence (afficher la place le logo normal , du texte spcifique, ou carrment un autre lment graphique). Miracle de la technologie moderne, des formats propritaires et de laccs par haut-dbit, de telles versions spcifiques des logos, tant des documents joints, pourront tre dun autre format que des images. On pourra ainsi afficher, en tant que grands logos, des animations Flash ou Shockwave, des animations vido...

Mise en place des documents et choix des noms


Nous dcidons (arbitrairement, mais faites selon vos besoins) que les documents joints utiliss en tant que gros logo seront tous intituls spip_logo ; ce document spip_logo sera affich sur la page du sommaire de notre site la place du logo normal. Nous utiliserons dautres noms dans la suite de cet exemple pour crer des effets plus fins, dcidons immdiatement quils auront tous des noms commenant par spip_... . (Cela nous permettra, dans laffichage habituel des documents joints un article dexclure tous les documents dont le nom commence par spip_... . De cette faon, lutilisation de documents en tant que logos alternatifs ninterfrera pas avec laffichage, par exemple, dun portfolio.) Sur un article publi en ligne (de faon pouvoir bidouiller nos squelettes en les testant), nous installons simplement :

http://www.spip.net/fr_article2001.html (2 of 10)2006.04.17 19.32.21

[SPIP] Plusieurs logos pour un article


q

un logo normalement (colonne de gauche) ; nous pouvons si nous le voulons installer une version de limage pour survol pour la gestion automatique du changement dimage lors du survol avec la souris ;

Le logo normal Le logo est install classiquement. A priori, il sagit dune image de taille modeste.

en bas de la page de larticle, nous installons un document joint (par le pav JOINDRE UN DOCUMENT ) ; pour faire simple, installons une image (JPEG, GIF, PNG) ; une fois ce document install ( upload ), nous lui donnons pour titre spip_logo . Voil, cest la seule manip ncessaire... SPIP affiche ce document en bas de la page de larticle dans lespace priv, en donnant son titre ( spip_logo ) et en indiquant ses dimensions en pixels.

http://www.spip.net/fr_article2001.html (3 of 10)2006.04.17 19.32.21

[SPIP] Plusieurs logos pour un article

Le document spip_logo Le seul impratif est de donner ce document le titre spip_logo . Il est inutile dinstaller une vignette de prvisualisation. Dans le cas dun document multimdia (Flash, Shockwave...), il faut indiquer la main ses dimensions en pixels.

Nous dcidons de lusage de ce document intitul spip_logo : il sera affich sur la page daccueil du site la place du logo normal du dernier article publi. De cette faon, la page de Une du site peut afficher une grande image pour mettre en valeur larticle en vedette.

Afficher spip_logo en Une du site


Commenons par insrer une boucle toute simple pour afficher le dernier article publi sur le site et son logo normal . (Dans tous les exemples qui suivent, le code HTML est rduit son strict minimum ; vous denrober cela avec la misehttp://www.spip.net/fr_article2001.html (4 of 10)2006.04.17 19.32.21

[SPIP] Plusieurs logos pour un article

en-pages graphique qui vous convient.)


<BOUCLE_article_vedette(ARTICLES) {doublons}{par date}{inverse}{0,1}> #LOGO_ARTICLE <h1>#TITRE</h1> </BOUCLE_article_vedette>

Cette boucle trs simple affiche le premier article ({0,1}) parmi tous les ARTICLES, slectionns par date de publication ({par date}) du plus rcent au plus ancien ({inverse}). On affiche donc bien le dernier article publi sur le site. lintrieur de la boucle, on affiche le logo de larticle suivi du titre de larticle. Nous avons dit que nous voulions afficher, la place du logo normal, le document joint cet article dont le titre est spip_logo . Le code devient :
<BOUCLE_article_vedette(ARTICLES) {doublons}{par date}{inverse}{0,1}> <BOUCLE_logo_article_vedette (DOCUMENTS){id_article}{titre=spip_logo}> [(#EMBED_DOCUMENT)] </BOUCLE_logo_article_vedette> <h1>#TITRE</h1> </BOUCLE_article_vedette> La BOUCLE_logo_article_vedette slectionne parmi les documents joints

cet article ({id_article}) celui dont le titre est spip_logo ({titre=spip_logo}). lintrieur de la boucle, on demande laffichage de ce document joint (#EMBED_DOCUMENT). Lusage de #EMBED_DOCUMENT (encore peu rpandu parmi les sites utilisant SPIP) dans les squelettes permet dinsrer, via le systme de boucles, directement le document lintrieur de la page. SPIP se charge de crer le code correspondant des images ou des fichiers multimdia. Inconvnient : si larticle na pas de document joint intitul spip_logo , le code prcdent naffiche que le titre. On va donc effectuer une nouvelle modification, qui permet dafficher le logo normal de larticle sil nexiste pas de document joint pour cet usage. Notez bien : une fois cette mthode comprise, il ny aura plus dautres subtilits pour raliser tous les effets suivants...

http://www.spip.net/fr_article2001.html (5 of 10)2006.04.17 19.32.21

[SPIP] Plusieurs logos pour un article

<BOUCLE_article_vedette(ARTICLES) {doublons}{par date}{inverse}{0,1}> <BOUCLE_logo_article_vedette (DOCUMENTS){id_article}{titre=spip_logo}> [(#EMBED_DOCUMENT)] </BOUCLE_logo_article_vedette> #LOGO_ARTICLE <//B_logo_article_vedette> <h1>#TITRE</h1> </BOUCLE_article_vedette> Nous avons tout simplement ajout lappel au logo normal (#LOGO_ARTICLE)

en texte alternatif (ce qui se trouve avant <//B...> dune boucle saffichant si la boucle ne fournit pas de rsultat - ici, sil ny a pas de document joint larticle portant le titre spip_logo ). Nous avons obtenu le rsultat dsir : sil existe un document joint associ larticle auquel nous avons donn le titre spip_logo , il est directement affich ; sinon, cest le logo normal qui est affich.

Exclure ces documents spcifiques de laffichage normal des documents joints


Dans le squelette des articles, on affiche les documents joints grce la BOUCLE_documents_joints, dont les critres essentiels sont :
<BOUCLE_documents_joints(DOCUMENTS) {id_article}{mode=document}{doublons}>

On appelle les DOCUMENTS lis cet article ({id_article}), qui sont bien des documents joints et non des images ({mode=document}) et quon na pas dj affichs lintrieur du texte de larticle en utilisant le raccourci <EMBxx> ({doublons}). Modifions ce code pour interdire laffichage, dans cette boucle (qui est une sorte de portfolio ), des documents dont le nom commence par spip_... (on ne veut pas afficher ici le gros logo utilis en page de Une du site) :
<BOUCLE_documents_joints(DOCUMENTS) {id_article}{titre!==^spip\_}{mode=document} {doublons}>

Le critre {titre!==^spip\_} est une expression rgulire, dont la syntaxe est trs codifie. On slectionne les documents dont le titre nest pas form ainsi (le ! == signifie qui ne correspond pas lexpression rgulire ) : les premiers
http://www.spip.net/fr_article2001.html (6 of 10)2006.04.17 19.32.21

[SPIP] Plusieurs logos pour un article

caractres (le symbole ^ indique le dbut de la chane de caractres) sont spip suivi de _ (dans la syntaxe des expressions rgulires, \_ indique le caractre _ , de la mme faon que \. indique le caractre . ). Ce critre slectionne donc les documents joints dont le titre ne commence pas par spip_ . Lexpos du principe gnral est termin, vous avez largement de quoi vous amuser avec a sur votre propre site. Les exemples suivants nen sont que des variations.

Afficher toujours un gros logo en haut de page


Je dcide, toujours de manire arbitraire, quil doit toujours y avoir une grosse image en haut de page de mes articles. Il sagit dun choix graphique de ma part : pour assurer lunit graphique de mon site, jaffiche en haut de page une version de grand format lie larticle (une variation du principe du grand logo) et, dfaut, une image stocke ailleurs sur mon site. Toujours le mme principe : je joins mon article un document dont je fixe le titre spip_haut . (Pour viter que ce document ne saffiche dans le portfolio de la BOUCLE_documents_joints prcdente, je fais commencer son titre par spip_... .) Dans mon squelette des articles, jaffiche simplement en haut de page ce document :
<BOUCLE_doc_haut(DOCUMENTS) {id_article}{titre=spip_haut}> #EMBED_DOCUMENT </BOUCLE_doc_haut>

Comme dans lexemple prcdent, jaffiche le document, li larticle de cette page, et dont le titre est spip_haut . Fastoche. Comme dans le premier exemple, je pourrais dcider dafficher le logo de larticle si ce document nexiste pas :
<BOUCLE_doc_haut(DOCUMENTS) {id_article}{titre=spip_haut}> #EMBED_DOCUMENT </BOUCLE_doc_haut> #LOGO_ARTICLE <//B_doc_haut>
http://www.spip.net/fr_article2001.html (7 of 10)2006.04.17 19.32.21

[SPIP] Plusieurs logos pour un article

Mais a nest pas le rsultat dsir. Je veux, pour des impratifs graphiques, toujours afficher une grande image aux dimensions prdtermines. Je vais donc (toujours un choix arbitraire de ma part) crer des images de substitution, utilises par dfaut , au cas o un article naurait pas dimage en propre. Ces images rpondent mes impratifs graphiques (par exemple, elles ont toutes les mmes dimensions que les documents que jutilise dhabitude en spip_haut ). Sur mon site, je cre une rubrique pour accueillir en vrac ces documents de substitution. Jactive les documents associs aux rubriques. (Je peux aussi crer un article qui accueillerait tous ces documents, et ainsi ne pas activer les documents joints aux rubriques. Le code serait peine diffrent.) Admettons que cette rubrique porte le numro 18 (cest SPIP qui va fixer automatiquement le numro de la rubrique lors de sa cration). Jinstalle tous mes documents de substitution lintrieur de cette rubrique numro 18. (Il est inutile de leur donner un titre.) Pour appeler, au hasard, un document install dans cette rubrique, il me suffit dinvoquer les critres suivants :
<BOUCLE_doc_substitution(DOCUMENTS) {id_rubrique=18}{0,1}{par hasard}> #EMBED_DOCUMENT </BOUCLE_doc_substitution>

(Notez bien : le critre {par hasard} ne signifie pas que limage sera diffrente chaque visite de la page, mais quelle sera slectionne au hasard chaque recalcul de la page.) On prendra soin, dans la navigation du site, dinterdire laffichage de la rubrique 18, qui na pas besoin dtre prsente aux visiteurs. Le critre {id_rubrique! =18} fera laffaire. Pour terminer la mise en place du dispositif, il nous suffit dinsrer cette boucle affichant un document de substitution pris au hasard dans la rubrique 18 en tant que texte alternatif notre BOUCLE_doc_haut ( la place du #LOGO_ARTICLE) :
<BOUCLE_doc_haut(DOCUMENTS) {id_article}{titre=spip_haut}> #EMBED_DOCUMENT </BOUCLE_doc_haut> <BOUCLE_doc_substitution (DOCUMENTS){id_rubrique=18}{0,1}{par hasard}> #EMBED_DOCUMENT </BOUCLE_doc_substitution> <//B_doc_haut>
http://www.spip.net/fr_article2001.html (8 of 10)2006.04.17 19.32.21

[SPIP] Plusieurs logos pour un article

Afficher un titre graphique


Toujours sur le mme principe, nous allons afficher une version graphique du titre de larticle. Il sagit dune image ralise avec un logiciel de dessin, o apparat , avec une typographie particulirement soigne (effets de relief, de dgrads de couleurs, avec des polices de caractre exotiques...) le titre de larticle. Dcrtons quil sagira dun document joint associ larticle, que nous titrerons spip_titre . Pour appeler ce document, lendroit o doit tre affich le #TITRE de larticle, installons la boucle dsormais connue :
<BOUCLE_doc_titre(DOCUMENTS) {id_article}{titre=spip_titre}> #EMBED_DOCUMENT </BOUCLE_doc_titre>

Notez nouveau que cette mthode permet non seulement dutiliser une image pour afficher le titre, mais aussi une animation Flash, un film... Dans ces cas, il vous faudra indiquer la main pour votre document joint quelles sont ses dimensions en pixels. Compltons le dispositif : sil nexiste pas de document joint portant le titre spip_titre , il faut afficher en tant que texte HTML classique les informations ncessaires :
<BOUCLE_doc_titre(DOCUMENTS) {id_article}{titre=spip_titre}> #EMBED_DOCUMENT </BOUCLE_doc_titre> [<div>(#SURTITRE|majuscules)</div>] <div><font size=6>#TITRE</font></div> [<div>(#SOUSTITRE|majuscules)</div>] <br>[(#DATE|nom_jour)] [(#DATE| affdate)]</p> <//B_doc_titre>

***
Signalons un dernier avantage cette mthode... Elle permet de faire par la suite encore voluer radicalement linterface graphique de votre site. Sans avoir supprimer un par un tous les documents intituls spip_haut , spip_titre ..., il vous suffit de crer de nouveaux squelettes qui

http://www.spip.net/fr_article2001.html (9 of 10)2006.04.17 19.32.21

[SPIP] Plusieurs logos pour un article

ne les appellent tout simplement pas. Par exemple, si les documents spip_haut taient prcdemment tous conus pour une largeur de 450 pixels, et que la nouvelle interface graphique requiert des images dune largeur de 600 pixels, vous naurez pas besoin de modifier un par un tous vos fichiers spip_haut . Il vous suffit, dans les squelettes, de ne plus faire appel aux documents intituls spip_haut , mais dutiliser un nouveau nom (par exemple spip_large ) et dinstaller au fur et mesure vos nouvelles versions de documents en les titrant spip_large . Pendant la transition, il ny aura pas dincohrences graphiques. Les plus jets dentre vous peuvent mme imaginer toutes sortes de tests sur le type de document ({extension=...}) ou sur leur taille ({largeur=...}, {hauteur=...}) (aucun PHP ncessaire) pour raliser des interfaces selon ces tests (par exemple, une certaine interface graphique si spip_haut fait 450 pixels de largeur, et une autre sil fait 600 pixels de largeur...).

tlcharger le squelette de cette page

http://www.spip.net/fr_article2001.html (10 of 10)2006.04.17 19.32.21

[SPIP] Afficher les derniers articles de vos rdacteurs par rubrique

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Afficher les derniers articles de vos rdacteurs par rubrique


franais catal Espaol italiano

Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un

Par dfaut SPIP vous propose une page auteur qui vous permet de montrer la liste des auteurs/rdacteurs participant votre site, ainsi que leurs dernires contributions. Mais un problme vient se poser quand vous avez plusieurs rdacteurs et que ceux-ci participent activement votre site. Cela finit par tre une page rallonge. Cependant il existe un moyen de montrer les dernires contributions de vos auteurs/redacteurs et ce pour chacun deux. Comment procder ? Tout dabord, on va crer deux fichiers : un fichier myauteur.php3 et un fichier myauteur.html

Cration du fichier myauteur.php3


Dans le fichier myauteur.php3 mettre le code suivant :

http://www.spip.net/fr_article1561.html (1 of 3)2006.04.17 19.32.34

[SPIP] Afficher les derniers articles de vos rdacteurs par rubrique

tableau Ne pas afficher les articles publis depuis plus dun an Prsenter les rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les meta-tags HTML des pages darticle

<?php $fond = "myauteur"; $delais = 24*3600; include ("inc-public.php3"); ?>

Cration du fichier myauteur.html Dans le fichier myauteur.php3 mettre les codes suivants : Juste aprs la balise <body>, mettre
<BOUCLE_principale(AUTEURS){id_auteur} {unique}>

Juste avant la balise </body>, mettre


</BOUCLE_principale>

Dans le corps de la page HTML, voici le code installer (on ne peut dterminer une rubrique car par dfaut lauteur nest pas associ une rubrique mais un article, le code peut parait biscornu mais on va donc retrouver la rubrique par rapport larticle) : Code pour le dernier article
<B_appel_article> Dernier article crit par <BOUCLE_nom_auteur(AUTEURS) {id_auteur}>[(#NOM)]</ BOUCLE_nom_auteur><br> <BOUCLE_appel_article(ARTICLES) {id_auteur}> <BOUCLE_appel_rubrique_article (RUBRIQUES){id_rubrique}{par titre} {doublons}> [(#TITRE|majuscules)] <ul> <BOUCLE_rappel_article (ARTICLES){id_rubrique}{par date}{inverse} {doublons}{0,15}> <li><a href="#URL_ARTICLE"> [(#TITRE)<br></a>] </BOUCLE_rappel_article> </ul> http://www.spip.net/fr_article1561.html (2 of 3)2006.04.17 19.32.34 </BOUCLE_appel_rubrique_article>

[SPIP] Afficher les derniers articles de vos rdacteurs par rubrique

Code pour article choisi au hasard


<B_appel_article> Dernier article crit par <BOUCLE_nom_auteur(AUTEURS) {id_auteur}>[(#NOM)]</ BOUCLE_nom_auteur><br> <BOUCLE_appel_article(ARTICLES) {id_auteur}> <BOUCLE_appel_rubrique_article (RUBRIQUES){id_rubrique}{par titre} {doublons}> [(#TITRE|majuscules)] <ul> <BOUCLE_rappel_article (ARTICLES){id_rubrique}{par hasard} {doublons}{0,15}> <li><a href="#URL_ARTICLE"> [(#TITRE)<br></a>] </BOUCLE_rappel_article> </ul> Et </BOUCLE_appel_rubrique_article> </BOUCLE_appel_article> </B_appel_article>

enfin

Maintenant, il faut configurer votre page auteur (page o vous numrez vos Cette auteur n'a pour l'instant crit aucun diffrents auteurs) pour que, en cliquant sur le lien auteur, celui-ci, dirigera vers article la page myauteur o sera inscrit les derniers articles crits par lauteur. Le lien devra tre crit de la manire suivante : <a href="myauteur.php3?id_auteur=#ID_AUTEUR">nom du lien</a>
<//B_appel_article>

tlcharger le squelette de cette page

http://www.spip.net/fr_article1561.html (3 of 3)2006.04.17 19.32.34

[SPIP] Afficher des lments par lignes dans un tableau

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Afficher des lments par lignes dans un tableau


franais Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau Ne pas afficher les articles publis depuis plus dun an catal English Espaol italiano

Par exemple, on peut vouloir crer un tableau contenant les titres des articles dune rubrique agencs sur trois colonnes, le nombre de lignes dpendant du nombre total darticles ; sur le principe : article 1 article 4 article 7 article 2 article 5 article 8 article 3 article 6 article 9

Lastuce consiste jouer la fois avec les doublons et avec les boucles rcursives. On construit une premire boucle qui affiche les trois premiers articles de la rubrique une fois les doublons limins. On voit quil suffit ensuite de rafficher cette boucle chaque fois quil reste des articles pour afficher graduellement tous les articles, ceux dj affichs venant chaque fois grossir les rangs des doublons. Pour cela, dans le code conditionnel de cette boucle, on ajoute un appel rcursif vers la boucle elle-mme : elle sera affiche tant quelle produit des rsultats.

http://www.spip.net/fr_article1498.html (1 of 2)2006.04.17 19.32.49

[SPIP] Afficher des lments par lignes dans un tableau

Prsenter les rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les meta-tags HTML des pages darticle

<table> <B_ligne> <tr> <BOUCLE_ligne (ARTICLES) {id_rubrique} {doublons} {par titre} {0,3}> <td width="33%"> <a href="#URL_ARTICLE">#TITRE</a> </td> </BOUCLE_ligne> </tr> <BOUCLE_ligne_suite (BOUCLE_ligne) ></BOUCLE_ligne_suite>

Le mme type de boucle, en remplaant lappel du titre par le logo (avec la balise </table> #LOGO_ARTICLE), permet dafficher une galerie o chaque logo darticle donne un aperu (dont la taille sera de prfrence fixe afin davoir une belle mise en page), et le texte de larticle contient la ou les oeuvres exposes.

</B_ligne>

tlcharger le squelette de cette page

http://www.spip.net/fr_article1498.html (2 of 2)2006.04.17 19.32.49

[SPIP] Ne pas afficher les articles publis depuis plus d'un an

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Ne pas afficher les articles publis depuis plus dun an


franais Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau Ne pas afficher les articles publis depuis plus catal Espaol italiano

Cela seffectue avec le critre age , qui est lge de larticle (calcul depuis sa date de mise en ligne dans lespace public) en nombre de jours. Ainsi pour conserver tous les articles de moins dun an dans la rubrique courante. Le critre de slection qui nous intresse ici est : age .
<B_articles_recents> <ul> <BOUCLE_articles_recents(ARTICLES) {id_rubrique}{age < 365}{par titre}> <li>#TITRE</li> </BOUCLE_articles_recents> </ul> </B_articles_recents>

Pour prendre en compte lge vis--vis de la date de premire publication au lieu de la date de mise en ligne, il faut utiliser le critre age_redac au lieu de age . Lge est indiqu en nombre de jours. Notons que cette manipulation est possible avec tous les types de donnes auxquels est associe une date (brves, forums...).

http://www.spip.net/fr_article1497.html (1 of 2)2006.04.17 19.33.1

[SPIP] Ne pas afficher les articles publis depuis plus d'un an

dun an Prsenter les rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les meta-tags HTML des pages darticle

tlcharger le squelette de cette page

http://www.spip.net/fr_article1497.html (2 of 2)2006.04.17 19.33.1

[SPIP] Prsenter les rsultats d'une recherche par secteurs

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Prsenter les rsultats dune recherche par secteurs


franais Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau Ne pas afficher les articles publis depuis catal Espaol italiano

Il suffit dinclure la boucle de recherche dans une boucle de type rubriques slectionnant les rubriques de premier niveau ; dans la boucle de recherche, on ajoute alors le critre id_secteur pour se limiter au secteur courant.
<BOUCLE_secteurs(RUBRIQUES){racine}> <B_recherche> <b>#TITRE</b> <ul> <BOUCLE_recherche(ARTICLES) {recherche}{id_secteur}{par points}{inverse} {0,5}> <li><a href="#URL_ARTICLE">#TITRE </a> </BOUCLE_recherche> </ul><hr> </B_recherche>

On remarquera que le titre du secteur nest affich que si la recherche a donn des </BOUCLE_secteurs> rsultats pour ce secteur. Dautre part, pour chaque secteur on naffiche que les cinq articles les mieux classs, par ordre dcroissant de pertinence. Attention cependant, comme la recherche est effectue autant de fois quil y a de secteurs, le calcul risque dtre ralenti.

http://www.spip.net/fr_article1496.html (1 of 2)2006.04.17 19.33.17

[SPIP] Prsenter les rsultats d'une recherche par secteurs

plus dun an Prsenter les rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les meta-tags HTML des pages darticle

tlcharger le squelette de cette page

http://www.spip.net/fr_article1496.html (2 of 2)2006.04.17 19.33.17

[SPIP] Afficher le nombre de messages du forum li un article

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Afficher le nombre de messages du forum li un article


franais Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau Ne pas afficher les articles publis depuis catal Espaol italiano

Cest un poil acrobatique. premire vue, il est trs simple de connatre le nombre dlments dune boucle : il suffit dutiliser le code SPIP : #TOTAL_BOUCLE. Ce code peut sutiliser non seulement lintrieur de la boucle, mais aussi (cest le seul dans ce cas) dans le texte conditionnel aprs (le texte qui saffiche aprs la boucle si elle contient des lments) et le texte conditionnel alternatif (le texte qui saffiche si la boucle est vide). Nous devons crer une boucle de type FORUMS, lie un article, de faon compter son nombre de rsultats. Premire subtilit : nous voulons tous les messages des forums lis larticle, en comptant les rponses aux messages, les rponses aux rponses... Une simple boucle de type :
<BOUCLE_forum(FORUMS){id_article}>

contient uniquement les messages qui rpondent larticle. Habituellement, pour accder aux rponses ces messages, on inclut une seconde boucle lintrieur de

http://www.spip.net/fr_article1495.html (1 of 2)2006.04.17 19.33.43

[SPIP] Afficher le nombre de messages du forum li un article

plus dun an Prsenter les rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les meta-tags HTML des pages darticle

celle-ci... Ici, nous voulons que la boucle slectionne absolument tous les messages attachs larticle, sans tenir compte de leur hirarchie. Pour cela, il faut spcifier le critre plat , qui comme son nom lindique sert afficher un forum plat. Ce qui donne :
<BOUCLE_forum(FORUMS){id_article}{plat} >

Voyons maintenant comment compter les lments quelle contient. La difficult, ici, cest que justement cette boucle ne doit rien afficher ! Elle naffiche pas le titre des messages, on vitera mme de lui faire afficher des espaces ou des retours la ligne (sinon votre page HTML contiendra des dizaines de lignes vides, inlgantes) ; lintrieur de la boucle naffiche donc rigoureusement rien, mais on doit afficher, aprs la boucle, le nombre de rsultats. Une subtilit bien comprendre : le texte conditionnel alternatif saffiche si la boucle naffiche rien ; il est donc affich mme si la boucle slectionne des lments (ici des messages de forum) mais quelle ne contient aucun affichage. Nous devons donc placer #TOTAL_BOUCLE dans le texte conditionnel alternatif. Sil ny aucun message de forum attach larticle, #TOTAL_BOUCLE sera vide, il ne faut donc pas afficher le texte englobant ( il y a N contributions au forum ) dans ce cas.
<BOUCLE_nb_forums(FORUMS){id_article} {plat}></BOUCLE_nb_forums> [Il y a (#TOTAL_BOUCLE) contribution(s) au forum.] <//B_nb_forums>

tlcharger le squelette de cette page

http://www.spip.net/fr_article1495.html (2 of 2)2006.04.17 19.33.43

[SPIP] Un menu droulant pour prsenter une liste d'articles

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Un menu droulant pour prsenter une liste darticles


franais Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau Ne pas afficher les articles publis depuis catal English Espaol italiano

On souhaite raliser un menu droulant en utilisant les commandes HTML adaptes la cration de formulaire ; de plus on veut que ce menu serve aller lURL de larticle slectionn. Si lURL des articles est du type article.php3? id_article=123, le bout de code suivant conviendra :
<FORM ACTION="article.php3" METHOD="get"> <SELECT NAME="id_article"> <BOUCLE_menu_articles (ARTICLES) {id_rubrique} {par titre}> <OPTION VALUE="#ID_ARTICLE">#TITRE</OPTION> </BOUCLE_menu_articles> </SELECT> <INPUT TYPE="submit" Les critres de la boucle articles (ici : les articles de la rubrique courante, tris par NAME="Valider" VALUE="Afficher l'article"> Ce type de construction marche bien sr titre) seront modifis selon vos besoins. </FORM> aussi pour les brves, rubriques...

Selon le mme principe, il est tout aussi facile de prsenter une liste de rubriques, de brves... ou mme lintgralit de la structure du site.

http://www.spip.net/fr_article1494.html (1 of 2)2006.04.17 19.33.55

[SPIP] Un menu droulant pour prsenter une liste d'articles

plus dun an Prsenter les rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les meta-tags HTML des pages darticle

tlcharger le squelette de cette page

http://www.spip.net/fr_article1494.html (2 of 2)2006.04.17 19.33.55

[SPIP] Remplir les meta-tags HTML des pages d'article

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Trucs et astuces

Remplir les meta-tags HTML des pages darticle


franais catal English Espaol italiano

Afficher automatiquement selon la date ou selon un ordre impos Trier des articles par ordre alphabtique, sauf un quil faut afficher en premier Plusieurs logos pour un article Afficher les derniers articles de vos rdacteurs par rubrique Afficher des lments par lignes dans un tableau

Le but de cet exemple est dinstaller dans les mta-tags de notre page, la liste des mots-cls associs larticle ainsi que le nom des auteurs. Si lon veut optimiser le rfrencement du site par les moteurs de recherche, on peut par exemple mentionner le descriptif de larticle, les mots-cls associs, ainsi que le nom du ou des auteurs.
<head> <BOUCLE_head(ARTICLES){id_article}> <title>#TITRE</title> <meta name="Description" content="#DESCRIPTIF"> <meta name="Keywords" content="<BOUCLE_keywords(MOTS) {id_article}{","}>#TITRE </ BOUCLE_keywords>"> <meta name="Author" On remarquera que pour les mots-cls et lauteur, on utilise une boucle imbrique content="<BOUCLE_author(AUTEURS) pour aller chercher ces informations partir de lid_article courant. De plus, on {id_article}{","}>#NOM </BOUCLE_author>"> spcifie une virgule comme sparateur afin que le contenu du meta-tag soit </BOUCLE_head> comprhensible (y compris par un moteur de recherche). </head>

Attention ! le code donn ci-dessus titre dexemple est un peu naf : si le #NOM dun auteur ou le #DESCRIPTIF dun article peuvent contenir des tags html

http://www.spip.net/fr_article1493.html (1 of 2)2006.04.17 19.34.8

[SPIP] Remplir les meta-tags HTML des pages d'article

Ne pas afficher les articles publis depuis plus dun an Prsenter les rsultats dune recherche par secteurs Afficher le nombre de messages du forum li un article Un menu droulant pour prsenter une liste darticles Remplir les meta-tags HTML des pages darticle

(mise en italiques, saut de paragraphe...) la page qui en rsultera sera en effet pleine derreurs. Pour viter cela, il faut penser passer un filtre comme | supprimer_tags sur le champ en question (remplacer #DESCRIPTIF par [(#DESCRIPTIF|supprimer_tags)])...

tlcharger le squelette de cette page

http://www.spip.net/fr_article1493.html (2 of 2)2006.04.17 19.34.8

[SPIP] Le dveloppement de SPIP et ses outils

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Le dveloppement de SPIP et ses outils

Le dveloppement de SPIP et ses outils


Les diffrents outils de communication utiliss pour dvelopper SPIP.

Rechercher
franais tout le site

dev.spip Le dveloppement de SPIP est dsormais fait sous SVN. Il est facile suivre travers diffrents outils, dont linterface Web propose sur ce site.

Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les

SPIP Zone Un outil communautaire pour dvelopper des squelettes, des outils, des scripts... autour de SPIP.

http://www.spip.net/fr_rubrique205.html (1 of 3)2006.04.17 19.35.16

[SPIP] Le dveloppement de SPIP et ses outils

squelettes Principe gnral <INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

La liste des annonces des dveloppements : spipcore@rezo.net La liste spip-core nest pas une liste de discussion : personne ne peut y poster de message. Elle est destine recevoir les informations sur les plus rcents dveloppements. On peut nanmoins sy abonner et consulter ses archives si lon veut tester les tous derniers dveloppements de SPIP et disposer des informations ncessaires. N.B. Tous les messages de spip-core sont galement disponibles sur spip-dev.

La liste des dveloppeurs : spip-dev@rezo.net Attention : cette liste de travail est destine discuter de la programmation de SPIP (et non pas la programmation avec SPIP). Le fait que votre problme soit compliqu et implique lutilisation de PHP et MySQL nest pas une raison pour poster sur spip-dev : toutes les questions lies lutilisation de SPIP, y compris les plus techniques, doivent tre postes sur la liste des utilisateurs mentionne plus haut. Merci davance de votre comprhension.

Merci de consulter attentivement les archives de spip-dev avant de poster sur la liste : ceux qui y participent ont fourni de gros efforts pour dvelopper le systme, il est normal que vous fassiez votre tour un petit effort de documentation pour que lchange dinformation soit aussi efficace

http://www.spip.net/fr_rubrique205.html (2 of 3)2006.04.17 19.35.16

[SPIP] Le dveloppement de SPIP et ses outils

que possible.

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique205.html (3 of 3)2006.04.17 19.35.16

[SPIP] Tutorial : utilisation avance des boucles et des mots-cls

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des motscls

Tutorial : utilisation avance des boucles et des mots-cls


Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les mots-cls dans les articles Les mots-cls dans les rubriques Linterface des news Et encore dautres moyens de se compliquer la vie !
Noter les jeux, annoncer les dates de sortie

Rechercher
franais tout le site

Rechercher

Modifications rcentes Le calendrier de SPIP 1.8.2 Internationaliser les squelettes Principe gnral

Quelques sommaires alternatifs Une premire version du sommaire

http://www.spip.net/fr_rubrique154.html (1 of 2)2006.04.17 19.35.42

[SPIP] Tutorial : utilisation avance des boucles et des mots-cls

<INCLURE> dautres squelettes Les balises propres au site La boucle ARTICLES SPIP 1.8.3 Les filtres de SPIP Traitement automatis des images Images typographiques

Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

tlcharger le squelette de cette page

http://www.spip.net/fr_rubrique154.html (2 of 2)2006.04.17 19.35.42

[SPIP] Introduction

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Introduction
franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les mots-cls dans les articles Les mots-cls dans les rubriques Linterface des news Et encore catal Espaol italiano

SPIP est un produit limit. Il y a des choses quil fait trs bien, dautres quil ne peut pas raliser. Essayez par exemple de crer un site consacr au cinma, avec des liens sur tous les noms (acteurs, ralisateur, quipe technique, la faon des fiches de lInternet Movie Database) vers dautres films quils ont ralis, et vous raliserez que SPIP na vraiment pas t conu pour cela ! linverse, crer et grer un site de contenu ditorial la structure simple, la faon duZine, est trs simple. Cependant, entre ces deux extrmes (des sites irralisables avec SPIP aux sites pour lesquels SPIP est particulirement adapt), il existe une multitude dusages, de besoins, facilement ralisables, mais priori inaccessibles avec la version standard des squelettes. Certains webmestres (fort courageux), confronts aux limites apparentes du produit, se lancent bille en tte dans le code source de SPIP dans le but de ladapter leurs besoins spcifiques. Si cette attitude trs open source est louable, en revanche elle prive ces webmestres de la possibilit de suivre les volutions du logiciel standard, et requiert des connaissances pousses en PHP. Or, et cest le but de ce tutorial, il existe de nombreuses possibilits pour dpasser les limites de SPIP, uniquement par une utilisation personnalise des squelettes et de la structure du site.

http://www.spip.net/fr_article1262.html (1 of 4)2006.04.17 19.35.58

[SPIP] Introduction

dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

qui sadresse ce document ?


Le prsent tutorial est destin aux webmestres qui dsirent dpasser certaines limites apparentes de SPIP. Il est donc impratif davoir dj compris le fonctionnement des squelettes et des boucles qui grent linterface publique. Si vous dbutez, commencez avec le document SPIP pas pas, destin aux webmestres qui sinitient au fonctionnement des squelettes. Si vous savez dj bien utiliser les squelettes, nous vous conseillons davoir porte de la main une version imprime du Manuel de rfrence.

Quelle version de SPIP ?


Les exemples donns ici utilisent des fonctionnalits prsentes partir de la version SPIP 1.3. Certaines peuvent tre ralises avec des versions prcdentes, mais lutilisation de la version 1.3 offre plus de souplesse.

Quelles autres connaissances techniques sont ncessaires ?


Ce tutorial est trs progessif. Cependant, il prsente la construction pas pas de squelettes complets. Outre la comprhension du mcanisme gnral des squelettes (et du systme de boucles), il convient de comprendre le code HTML. Le HTML utilis ici sera volontairement rudimentaire mais, si vous navez jamais ralis une page Web autrement quavec un logiciel Wysiwyg, vous risquez de souffrir. Nous naborderons pas ici lutilisation de PHP dans les squelettes ; la connaissance de ce langage est donc ici inutile.

Les impratifs
Ne pas toucher structure de SPIP lui-mme. aucun moment nous nirons modifier le code source du produit, ni les tables de la base de donnes utilises par SPIP. Cela garantira que les fonctionnalits apportes ici resteront
http://www.spip.net/fr_article1262.html (2 of 4)2006.04.17 19.35.58

[SPIP] Introduction

compatibles avec les futures volutions du logiciel, et que linterface prive conservera sa cohrence. Raliser un site dont linterface de navigation reste cohrente. Un des buts ici tant de raliser une navigation plus riche que celle propose par les squelettes standards, il ne faut pas linverse que linterface devienne totalement incomprhensible pour le visiteur. (Vous verrez cependant que nous navons pas ici dvelopp le graphisme de nos pages ; graphiquement, linterface obtenue la fin de ce tutorial sera hideuse... mais en revanche, les liens entre les diffrents lments structurels du site seront prsents.) Raliser un site dont les mises jour restent simples. Ceux qui grent le site depuis lespace priv ne doivent pas passer plusieurs heures pour ajouter un nouvel article... Il sagit bien de profiter des automatismes lis un site dynamique.

Comment utiliser ce tutorial ?


Ce tutorial est trs progressif, et les codes fournis sont complets : vous ny trouverez pas des bouts de code sortis de nulle part recopier, au contraire le code complet des squelettes se construira au fur et mesure des articles. La mthode retenue ici est la cration de pages de squelette de plus en plus complexes, chaque tape tant explique. Nous vous conseillons donc de suivre ce tutorial dans lordre de ses articles, et de crer les fichiers en mme temps que les explications, en intgrant chaque fois les variations donnes en exemple. Vous trouverez ces exemples beaucoup plus clairs si vous ralisez vous-mme les pages prsentes ici. Le code vous semblera plus simple, puisqu chaque nouvel lment intgr, vous verrez immdiatement limpact des modifications. Tous les squelettes raliss dans ce tutorial sont regroups dans nos archives. Vous pouvez les tlcharger ds prsent, mais nous vous conseillons nanmoins de raliser ces squelettes ab initio en suivant ce tutorial : si vous travaillez directement partir des squelettes termins, vous perdez la construction progressive et vous risquez de ne pas comprendre leur structure.

La progression de ce tutorial

http://www.spip.net/fr_article1262.html (3 of 4)2006.04.17 19.35.58

[SPIP] Introduction

Les premiers articles (de Le but du jeu crire des articles ) insistent sur limportance bien penser la structure de son site et de dfinir la constitution des articles avant de dmarrer un site complexe. Techniquement, cette partie est la porte de tous les utilisateurs de SPIP (on peut donc la lire mme si on na aucune connaissance du fonctionnement des squelettes). Cette partie vous semblera peut-tre un peu trop simple (il ny a aucune astuce technique). Elle introduit cependant lutilisation des mots-cls comme outil de structuration du site. Surtout, elle permet de comprendre que la structure du site est primordiale pendant le dmarrage dun projet de site ambitieux. Cette tape, lorsquelle est nglige (et elle lest souvent), conduit des sites qui deviennent ingrables et dont linterface publique est incohrente (ces problmes se posent rarement lorsque lon dmarre le site, avec une poigne darticles). Enfin, nous y insistons (longuement...) sur le fait que les choix techniques (programmation des squelettes, utilisation des mots-cls) dpendent directement des choix ditoriaux (cette vidence tant primordiale avec un systme de publication). Les articles suivants (de Premire version du squelette des articles Le site complet ) proposeront la cration pas pas des squelettes. Il faut partir de ce moment avoir un bonne connaissance du systme de boucles de SPIP. Les difficults ce stade seront dordre logique, et non informatiques. Volontairement, nous fabriquerons les squelettes en plusieurs tapes successives : au dpart des squelettes extrmement simples, nous y reviendrons, en ajoutant plus de complexit dans la structure des boucles. Vous trouverez dans cette partie quelques astuces logiques dans la gestion des boucles ; surtout, vous y verrez lutilisation des mots-cls comme lments de structuration de la navigation. Nous obtiendrons la fin de ce tutorial un site complet et exploitable (moyennant la cration dune interface graphique un peu plus labore). Cependant, le dernier article ( Le site complet ), vous fournira quelques ides de dveloppements supplmentaires que vous pourrez ajouter votre site, en exploitant les principes expliqus ici.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1262.html (4 of 4)2006.04.17 19.35.58

[SPIP] Le but du jeu : un site consacr aux jeux vido

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Le but du jeu : un site consacr aux jeux vido


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface catal Deutsch Espaol italiano

Les explications qui vont suivre sont bases sur la ralisation dun site consacr aux jeux vido.

Pourquoi les jeux vido ?


Une notion ne jamais perdre de vue lorsquon ralise des squelettes avec SPIP, cest quil sagit de prsenter un contenu ditorial (penser en terme de possibilits techniques ou de base de donnes est le meilleur moyen de crer un site linterface incomprhensible). Il faut donc, en permanence, utiliser un vocabulaire et des images directement lies au contenu que lon veut prsenter. Nous devions donc, pour que ce tutorial soit lisible, nous fixer un objectif ditorial, afin de pouvoir prsenter chaque bidouille technique comme une rponse un besoin ditorial. Un site de jeux vido offre, pour notre dmonstration, plusieurs avantages : le vocabulaire associ aux contenus de ce type de site est connu de tous, la navigation sur ces sites est trs souple (il existe de nombreuses faons diffrentes de naviguer sur de tels sites) ; cest lexemple-type du site impossible raliser avec les squelettes standards de

http://www.spip.net/fr_article1263.html (1 of 4)2006.04.17 19.36.9

[SPIP] Le but du jeu : un site consacr aux jeux vido

des news Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

SPIP (sauf se contenter dun site trs en dea de ce que lon attend de ce genre de contenu) ; en revanche, cest un trs bon exemple de ce quil est possible de faire pour dpasser les limites de SPIP, tout en conservant la cohrence et la simplicit de son utilisation.

Quelles sont les difficults que prsente un tel site ?


La principale difficult concerne le rubriquage des articles : chaque jeu fait lobjet de plusieurs articles : un ou plusieurs tests (essayer le produit disponible dans le commerce), une preview (dcrire un jeu qui nest pas encore disponible dans le commerce, mais dont on a une version beta), des news (gnralement, avant la sortie, il sagit de rpercuter quelques informations sur le futur jeu), des trucs et astuces (ou tips), une solution complte des nigmes du jeu ; certains jeux sont disponibles sur diffrentes machines (PC, Dreamcast, Playstation...) ; certains tests, previews, solutions concernent une seule version du jeu, parfois plusieurs (et cela nest pas systmatique mme pour un mme jeu : la solution dun jeu est souvent commune plusieurs versions, alors que les test doivent tre faits pour chaque version) ; chaque jeu appartient une catgorie (jeu daction/aventure, jeu de rflexion, jeu de plateforme, jeu de simulation sportive, jeu de course, jeu de baston...). Avec SPIP, il nest possible de crer quune seule structure hirarchique des rubriques. De manire simple, il faudrait choisir une unique structure : une structure sur les types darticles (une rubrique pour les tests, une rubrique pour les previews, une solution pour les solutions...) ; ou une structure selon les machines (une rubrique pour PC, une rubrique pour Playstation, une rubrique pour Dreamcast...) ; ou une structure selon la catgorie de jeu (une rubrique pour laventure, une pour la simulation sportive, une pour la baston...). Dans tous les cas, on voit bien quon perd la richesse de navigation que doit offrir un tel site, qui devrait permettre de passer un autre article concernant un mme jeu, mais aussi de naviguer selon une machine, ou de consulter dautres jeux de la mme catgorie... Une seconde difficult tient dans les informations systmatiques que lon

http://www.spip.net/fr_article1263.html (2 of 4)2006.04.17 19.36.9

[SPIP] Le but du jeu : un site consacr aux jeux vido

voudrait inclure pour chaque jeu, pour pouvoir les prsenter comme des informations part : la date de sortie du jeu ; une note dapprciation. On pourrait videmment dcider dcrire la main ces informations lintrieur des articles, mais alors on ne pourrait plus les prsenter sur des pages spcifiques ( les prochaines sorties , les jeux sortis rcemment , les meilleurs jeux dans cette catgorie... ).

Cette reproduction du sommaire que nous obtiendrons donne une ide de la diversit des informations prsentes sur le site, et les possibilits de navigation : au centre, les tests ; pour chaque jeu test, on indique la note attribue, et la machine (Dreamcast, Playstation...) ; en haut, on peut afficher des sommaires consacrs chaque machine ; en haut gauche, on pourra voir les prochaines sorties de jeux, ainsi que la liste des jeux ayant reu les meilleures notes ; gauche apparat la navigation dans le site selon les catgories de jeux (survivalhorror, simulation sportive...) ;
http://www.spip.net/fr_article1263.html (3 of 4)2006.04.17 19.36.9

[SPIP] Le but du jeu : un site consacr aux jeux vido

droite, les previews, les soluces, les astuces, les news...

tlcharger le squelette de cette page

http://www.spip.net/fr_article1263.html (4 of 4)2006.04.17 19.36.9

[SPIP] La structure du site

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

La structure du site
franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface catal Deutsch Espaol italiano

Si la souplesse de SPIP dans la gestion de la structure des rubriques autorise, gnralement, commencer rdiger ses articles sans trop se soucier du rubriquage (il est toujours facile, ensuite, de dplacer des articles ou des rubriques), dans le cas qui nous intresse, il faut au contraire commencer par dfinir la structure retenue. Cest, en effet, elle qui conditionne les possibilits dun tel site. Avec SPIP, il nest possible de dfinir quune seule et unique structure hirachique des rubriques. Il va donc falloir dcider comment nous allons crer les rubriques de notre site.

Les possibilits
Comme nous lavons not dans larticle prcdent, chaque article dpend ici de plusieurs critres. On peut donc choisir la structure des rubriques parmi les structures suivantes : une structure par machines : une rubrique pour Dreamcast, une rubrique pour Playstation, une rubrique pour PC... une structure par jeu : une rubrique pour Resident Evil, une rubrique pour Gran Turismo, une rubrique pour Mortal Combat... une structure par catgorie darticles : une rubrique pour les tests, une rubrique

http://www.spip.net/fr_article1264.html (1 of 5)2006.04.17 19.36.23

[SPIP] La structure du site

des news Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

pour les news, une rubrique pour les solutions... une structure par genre de jeu : une rubrique pour les jeux de sport, une pour les jeux de plateforme, une pour les jeux de baston... Si lon tait un peu tordu, on pourrait galement adopter les structures suivantes : une structure par qualit des jeux (les meilleurs jeux dans une rubrique, les jeux moyens dans une autre...) ; une structure par date de rdaction, adapte notamment la transposition dun mensuel papier sur le Web (les articles du numro de novembre 2001, une rubrique pour dcembre 2001, une rubrique pour janvier 2002, etc.).

Les impratifs
Certaines caractristiques de notre site permettent de choisir une structure plutt quune autre. Il est naturel, lorsquon navigue sur un site, de pouvoir passer directement du test dun jeu sa solution, de la preview aux news... Le visiteur, intress par la preview, va vouloir connatre les dernires informations sur le dveloppement du produit (les news). Un joueur, aprs avoir lu lopinion exprime dans un test, voudra trouver rapidement des indications pour terminer son jeu (les solutions, les astuces). Le plus simple, ici, consiste donc runir tous les articles dun mme jeu dans une mme rubrique. La rubrique dun jeu contiendra la fois la preview, les tests, la solution... Ainsi, la plus petite rubrique du site sera la rubrique consacre tous les articles dun seul jeu. On pourrait dcider de crer des grandes rubriques par machine, et dy placer, en tant que sous-rubriques, chacun des jeux avec leurs diffrents articles (un jeu existant sur plusieurs machines aurait une rubrique spcifique chacun des machines). Cependant, il est frquent que certains articles sur un mme jeu soient communs plusieurs machines. Si le test de la version Dreamcast de Alone in the dark est diffrent de celui de la version Playstation, en revanche la solution des nigmes est commune aux deux supports. Avec un rubriquage par machines, on aurait naturellement le test Dreamcast dans la rubrique Dreamcast, et le test Playstation dans la rubrique ad hoc ; mais la solution, commune aux deux versions, devrait alors tre publie dans les deux rubriques ; trs inlgant et fastidieux.

http://www.spip.net/fr_article1264.html (2 of 5)2006.04.17 19.36.23

[SPIP] La structure du site

Les genres de jeux prsentent une structure hirarchique : une course de rallye est une course de voitures, qui est elle-mme une simulation sportive ; un survival horror est un jeu daventure/action ; un jeu de baston en 2D est un jeu de baston... Ce type de structure est donc particulirement adapt SPIP, car on peut imbriquer des sous-rubriques dans des rubriques autant que ncessaire. Une grande rubrique Sport contiendra plusieurs sous-rubriques (Course, Football, Glisse, Tennis...), chacune de ces sous-rubriques pouvant son tour contenir dautres sous-rubriques. linverse, les autres structures ne prsentent pas rellement de structure hirarchique. Les machines ne dpendent pas les unes des autres : on pourrait videmment runir les consoles de jeu lintrieur dune grande rubrique, et crer une autre grande rubrique pour les PC, mais cela noffre pas grand intrt, et noffrirait pas une grande profondeur hirachique. De la mme faon, une catgorie darticle ne dpend pas dune autre (les news ne dpendent pas des solutions qui ne dpendent pas des tests...) ; un rubriquage par catgorie darticle ne permettrait donc pas une relle structure de rubriques/sous-rubriques.

La structure retenue
En ralit, nimporte laquelle des possibilits voques prcdemment est possible, car les techniques que nous aborderons plus loin permettraient de sadapter ces diffrentes situations. Cependant, il est plus agrable de choisir une structure plus directement adapte la logique de SPIP ; dit autrement : un site qui serait dj trs prsentable avec une telle structure, mme sans utiliser les astuces que nous exposerons plus loin (cest--dire un site que lon peut dj visiter avec les squelettes standards). Ainsi, lutilisation de lespace priv et la gestion du site resteront cohrents et simples. Nous allons donc privilgier la structure la plus hirachique : la structure par genres de jeux. Nous crerons de grandes rubriques thmatiques (Action/ aventure, Combats, Jeux pdagogiques, Plateforme, Sport, Stratgie...), chacune de ces grandes rubriques ayant plusieurs sous-rubriques. Dans chacune des sous-rubriques, nous crerons enfin une sous-rubrique pour chaque jeu, regroupant tous les types darticles du mme jeu sur toutes les plateformes de ce jeu (par exemple, tous les articles concernant Alone in the Dark 4, que ces articles soient des news, des previews, des tests, des solutions... quils concernent la version PC/Windows, Dreamcast ou Playstation... seront regroups dans lunique rubrique consacre ce jeu).

http://www.spip.net/fr_article1264.html (3 of 5)2006.04.17 19.36.23

[SPIP] La structure du site

Logiquement, le test de la version Dreamcast de Alone in the Dark se trouvera dans la rubrique Alone in the Dark, elle-mme installe dans une rubrique Survival horror , elle-mme dpendant de la rubrique Action/Aventure . Nous verrons plus loin que, si cette structure sutilise facilement avec SPIP (et quun tel site est dj facile visiter avec les squelettes standards), en revanche cela pose quelques difficults de logique de prsentation, puisque lon mlange des rubriques dont le nom est un jeu avec des rubriques qui sont des grandes catgories de jeux.

Que deviennent les machines et les genres darticles ?


Nous avons donc perdu, avec cette structure, la possibilit dindiquer dans la navigation, pour chaque article, sil agit dun test, dune solution, de news... ou encore sil concerne une version PC, Dreamcast, Playstation... Est-ce quil ne serait pas pratique, ici, davoir pour chaque article un menu droulant proposant une liste des machines, et un menu droulant avec la liste des types darticles ? On slectionnerait dans ces menus droulants et, dun clic, on pourrait indiquer quil sagit dun test, et que cela concerne la Dreamcast. On pourrait mme indiquer que cela concerne la Dreamcast et la Playstation pour un mme article. (Vous nimaginez pas le nombre de webmestres qui, ce stade, se lancent corps perdu dans le code source de SPIP pour ajouter les menus droulants dont il a besoin !) Ca tombe bien : ce menu droulant existe dj. Cest celui des mots-cls. Les mots-cls, associs aux articles, permettent de crer des navigations transversales au sein de la structure hirarchise dun site sous SPIP, cest--dire de passer directement dun article dans une rubrique un article situ dans une autre rubrique (cela quelle que soit la position de lautre rubrique dans la hirarchie). Certes, lusage immdiat des mots-cls consiste crer des mots-cls purement thmatiques ; mais si lon considre quil sagit dun moyen de navigation transversale dans le rubriquage, on peut tout autant les utiliser pour donner le nom de la machine utilise ou le type darticle.

http://www.spip.net/fr_article1264.html (4 of 5)2006.04.17 19.36.23

[SPIP] La structure du site

La situation sy prte particulirement bien ici : ce que nous devons indiquer ne prsente aucune structure hirarchique, et surtout le nombre dlments est relativement fixe. Une fois que lon a dtermin la liste complte des machines, il nest plus ncessaire den ajouter (lapparition dune nouvelle console nest pas frquente) ; et les types darticles sur notre site seront dtermins lavance. On fixera donc la liste des mots-cls une bonne fois pour toute avant de commencer (les ajouts seront trs rares), et nous aurons notre menu droulant qui permettra, pour chaque article, dindiquer la machine concerne et le type darticle. N.B. Il existe dautres cas o lutilisation des mots-cls est un pige. Ce sont notamment les cas o la liste de mots nest pas fixe lavance, et o il faudrait quasiment crer un nouveau mot-cl chaque nouvel article. Certes, cela fonctionnerait avec SPIP, mais la mise jour du site serait particulirement pnible. Par exemple, un site consacr au cinma. Nous aurions une structure thmatique, selon les grands genres du cinma. Ensuite, nous voudrions pouvoir passer dun film de tel ralisateur aux autres films du mme ralisateur. Une solution (pige) consisterait donc crer un mot-cl pour ce ralisateur : lorsquon ajoute la fiche dun film, on lui associerait le mot-cl de son ralisateur. De mme pour les acteurs principaux, lauteur du scnario, etc. La navigation dans le site serait ainsi dune trs grande richesse. Mais la mise jour avec SPIP serait infernale : une liste de mots-cls interminable, et surtout la ncessit de crer des mots-cls chaque fois quon ajoute un film. Imaginons encore que nous ayons retenu pour notre site une structure par grande catgorie darticles : une rubrique pour les tests, une rubrique pour les previews, une rubrique pour les news... Une fois dans le test de Alone in the dark, on voudrait afficher des liens vers sa solution, ses news... Le seul moyen dy arriver serait alors dutiliser un mot-cl Alone in the dark . On voit qualors, chaque nouveau jeu abord sur le site, on devrait crer un nouveau mot-cl : trs fastidieux grer, difficile utiliser (rapidement le menu droulant deviendrait interminable), interface inutilement surcharge (certains jeux ntant plus du tout traits quelques mois aprs leur sortie, leur prsence dans la liste des mots-cls affiche chaque fois devient inutile).

tlcharger le squelette de cette page

http://www.spip.net/fr_article1264.html (5 of 5)2006.04.17 19.36.23

[SPIP] Mise en place de la structure

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Mise en place de la structure


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface des news catal Deutsch Espaol italiano

Puisque nous avons dtermin la structure du site dans larticle prcdent, rendons-nous dans lespace priv de SPIP, et entrons les lments ncessaires. Tche toujours ingrate, mais indispensable avant de rdiger le moindre article et mme de crer les squelettes. En effet, les lments que nous allons crer ds maintenant serviront de base la suite.

La structure des rubriques


Commenons par crer le rubriquage thmatique (selon les grandes catgories de jeux). Cest une question de choix personnels, mais voici une ide du rsultat (non exhaustif) :
q

Action/aventure r Exploration et nigmes r FPS (Quake-like) r RPG (Jeux de rle) r Survival horror

http://www.spip.net/fr_article1265.html (1 of 4)2006.04.17 19.36.33

[SPIP] Mise en place de la structure

Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

Combats r 2D r 3D Jeux pdagogiques r Lecture r Mathmatiques r Physique r Culture Plateforme r 2D r 3D Sports r Course s Formule 1 s Rallye s Grand Tourisme r Football r Glisse r Tennis Stratgie r Casse-ttes r Jeux de cartes r Jeux de plateau r Wargames r Stratgie en temps rel

Cette structure est incomplte, mais cest l son intrt : on peut facilement la modifier en fonction des besoins, sans pour autant devoir repenser le principe gnral ni les squelettes. Quand une rubrique contient trop de jeux, on peut crer des sous-rubriques pour viter dobtenir des listes trops longues (par exemple, si lon a trop de jeux de cartes , on peut crer des sous-rubriques Poker , Bridge , Belotte dans cette rubrique et y transfrer les jeux). Nous avons prvu de crer ensuite des rubriques pour chaque jeu (une rubrique Resident Evil , une rubrique Alone in the dark ...). Mais comme ces rubriques ne concernent pas la structure fixe du site, nous verrons cela dans larticle suivant.

Les machines
Comme nous lavons expliqu prcdemment, les machines seront indiques par des mots-cls.
http://www.spip.net/fr_article1265.html (2 of 4)2006.04.17 19.36.33

[SPIP] Mise en place de la structure

Il faut dabord crer un groupe de mots , que nous nommerons Machines . Ensuite, nous allons crer un mot-cl pour chaque machine, chacun de ces motscls tant install dans le groupe Machines . Ce qui donne :

Il est frquent, sur ce genre de site, de signaler la machine concerne par un petit logo. Nous allons donc attribuer chaque mot-cl un logo lui correspondant (considrons ce logo comme obligatoire ; en effet, dans les squelettes, nous afficherons frquemment le logo sans indiquer le nom de la machine en clair). Pour assurer la cohrence graphique, ces logos doivent tre approximativement de mme taille (par exemple environ 25 pixels x 25 pixels) :

Les types darticles


De la mme faon, nous allons maintenant dfinir une liste des types darticles. Cela donne :

http://www.spip.net/fr_article1265.html (3 of 4)2006.04.17 19.36.33

[SPIP] Mise en place de la structure

Nous nattribuons pas de logo ces mots-cls (vous pouvez dcider de la faire, vous pourrez ainsi crer des lments de navigation graphiques). Une nuance (que nous verrons de manire plus vidente par la suite)concernant les mots-cls : en ce qui concerne les types darticle, ces mots seront utiliss nominativement dans les squelettes ; il faut donc choisir des noms et sy tenir (si, dans le cas prcdent, o les mots concernent les machines, Playstation pourra tre ultrieurement chang en PS One sans difficult, ici on ne pourra plus changer Soluce en Solution sans devoir modifier les squelettes). Notez que le groupe de mots se nomme Type_article , et non Type darticle ; en effet, nous appelerons spcifiquement ce titre dans les squelettes, et les noms avec des espaces et des apostrophes sont moins faciles manipuler.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1265.html (4 of 4)2006.04.17 19.36.33

[SPIP] crire des articles

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

crire des articles


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface des news catal Deutsch Espaol italiano

Il est temps dsormais de crer les premiers articles. Non seulement cela nous permettra dans ce tutorial dexpliquer la dmarche, mais de toute faon cette tape est indispensable avant de pouvoir travailler sur les squelettes. N.B. Si vous avez dj manipul les squelettes de SPIP, vous savez quon ne peut rellement travailler que lorsquau moins un article est publi. Nous vous conseillons mme, dans le cadre de la cration de linterface graphique, de crer le maximum darticles possibles, avec plusieurs articles par rubriques, plusieurs rubriques... et mme des articles de longueurs diffrentes, avec ou sans surtitre et soustitre, avec ou sans chapeau, descriptif... Plus ces articles seront nombreux et de formats divers, plus vous pourrez crer une interface souple (cest--dire adapte tous les cas de figure possible). Evidemment, pour les tests dinterface, ces articles peuvent trs bien tre constitu de faux texte (des copier-coller darticles pris sur le Web, du charabia, du latin de cuisine...).

Une rubrique par jeu


Nous avons dcid que tous les articles concernant un jeu seraient regroups dans une mme rubrique. Avant mme dcrire le premier article au sujet dun jeu, il faut donc crer une rubrique portant le nom de ce jeu (pour les articles suivants, videmment on se placera dans la mme rubrique).

http://www.spip.net/fr_article1266.html (1 of 6)2006.04.17 19.36.45

[SPIP] crire des articles

Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

La rubrique va donc prendre un rle trs important : cest elle qui donne le nom du jeu, et cest elle qui fournit le logo, pour tous les articles quelle contient. Par exemple, nous allons crer une rubrique Resident Evil : Code Veronica et nous lui attribuerons un logo. Ensuite, lorsque nous insrerons un article contenant la solution du jeu dans cette rubrique, cet article naura pas besoin de rappeler le nom du jeu (larticle se nommera simplement Solution complte ), et il ne sera pas obligatoire de lui attribuer un logo. Plaons-nous dans la rubrique : Action/aventure | Survival horror et crons une nouvelle sous-rubrique intitul Resident Evil : Code Veronica . Nous plaons un descriptif pour cette rubrique, prsentant la trame gnral du jeu. Enfin nous utilisons une copie dcran pour crer le logo de la rubrique. N.B. Ces logos de rubrique seront par la suite trs utiliss pour obtenir linterface graphique du site. Nous vous conseillons donc de choisir arbitrairement (en fonction de vos exigences graphiques) un format unique pour tous les logos. Cela facilitera la cration dune interface cohrente. Nous choisissons par exemple que tous les logos de rubriques font 120 x 160 pixels. Cela donne :

Le test complet du jeu !

http://www.spip.net/fr_article1266.html (2 of 6)2006.04.17 19.36.45

[SPIP] crire des articles

Voil, la rubrique cre, nous pouvons crire notre premier article concernant ce jeu. N.B. Soulignons ici un premier inconvnient sur ce site : il faut sastreindre (et lexpliquer aux autres participants du site) crer une rubrique avant de pouvoir crire le premier article concernant un jeu. Or le comportement naturel serait dcrire larticle directement dans la rubrique Survival horror , et de lui donner pour titre (ou pour surtitre) le nom du jeu. Cela conviendrait pour un site plus simple (traitant dune seule machine, ne proposant que des tests ou des soluces...). Mais puisque nous sommes partis sur un site plus ambitieux, cela induit plus de formalisme dans la structuration. Dans un premier temps, il suffit de crer du texte, dintgrer des images... rien dinhabituel. Attention cependant, il y a deux points dterminer immdiatement, et sy tenir systmatiquement par la suite : le nom du jeu est-il indiqu dans les cases de larticle lui-mme ? (en titre, surtitre, soustitre...) le descriptif est-il obligatoire ? Cela dtermine la faon dont nous traiterons les squelettes par la suite. Vous pouvez choisir de faon arbitraire, il suffira de raliser vos squelettes en consquence. Pour les exemples qui seront fournis dans ce tutorial, nous avons dcid que larticle lui-mme nindique pas le nom du jeu (ni dans le titre, ni dans les sur/ soustitres) ; ce nom sera rcupr systmatiquement depuis la rubrique qui contient larticle. Et dans nos squelettes, nous utiliserons le #DESCRIPTIF ; donc il est conseill den mettre un, sinon lespace attribu au descriptif sera vide. Enfin, il nest pas obligatoire dattribuer un logo larticle lui-mme, puisque nous rcuprerons celui de la rubrique. Mais si on dcide de placer un logo larticle, nous conseillons de respecter le format adopt pour les logos des rubriques (dans notre cas 120 x 160 pixels). En gros, cela donne :

http://www.spip.net/fr_article1266.html (3 of 6)2006.04.17 19.36.45

[SPIP] crire des articles

Le titre de larticle nest pas le nom du jeu, mais une accroche (par exemple : Le retour de Claire Redfield ) ; il y a un descriptif ; nous nutilisons que la date de publication en ligne (pas de date de premire publication - nous avons mme dsactiv cette possibilit dans la Configuration prcise ) ; cette date correspond bien la date de publication de larticle, donc de mise jour du site Web (pour la gestion des dates de sortie commerciale du jeu, nous verrons cela par la suite) ; dans les auteurs, nous travaillons galement de manire habituelle : lauteur est le rdacteur qui, sur le site, a crit larticle (les test, les news...). Ne pas essayer ici dindiquer un auteur du jeu ou autre subtilit.

Pour quelle(s) machine(s) ? Quel type darticle ?


Il reste maintenant indiquer quelle(s) machine(s) cet article concerne, et de quel type darticle il sagit. Pour cela, nous allons utiliser les menus droulants Ajouter un mot-cl . Voil qui est bien pratique...

http://www.spip.net/fr_article1266.html (4 of 6)2006.04.17 19.36.45

[SPIP] crire des articles

Pour ce jeu, nous considrerons que le test vaut aussi bien pour la version Dreamcast que pour la version Playstation 2. Si on considre que les deux versions sont suffisamment diffrentes, on peut tout aussi bien crire un test diffrent pour chaque machine, il suffira alors de ne slectionner quune seul machine par article. Quant au type darticle, il sagit ici dun test. Ce qui nous donne :

Une nouvelle fois, il faut souligner le besoin de formaliser strictement la manire de publier un article. Avant toute publication, il faut donc vrifier la prsence des mots-cls ncessaires. Lindication de la machine nest pas rllement obligatoire (larticle apparatra tout de mme au sommaire) ; mais son absence rendra linterface incohrente (certains articles indiquant des machines, dautres non) et larticle ne sera plus rfrenc dans la navigation par machine . Il est possible dindiquer plusieurs machines pour un mme article. Le type darticle est indispensable. Nous verrons par la suite que nous faisons un usage intensif de ces types darticles. En cas doubli, larticle risque purement et simplement de ne pas apparatre sur le site public. Il ne faut indiquer quun seul type darticle pour un article.

http://www.spip.net/fr_article1266.html (5 of 6)2006.04.17 19.36.45

[SPIP] crire des articles

Cela fait, crez dautres articles, des formats diffrents, certains avec plusieurs machines, selon diffrents types darticles... En particulier, essayez de crer une rubrique complte (avec tous les types darticles), et enrichissez les rubriques proches de Survival horror , de faon pouvoir travailler sur des squelettes avec des rubriques reprsentatives de lactivit du site. Pensez de plus modifier les dates de publication, afin de pouvoir tester les classements des articles et des rubriques. Lidal tant, dans cette situation, de crer un maximum darticles dans tout le site, avec des dates de publication couvrant une priode assez large.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1266.html (6 of 6)2006.04.17 19.36.45

[SPIP] Premire version du squelette des articles

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Premire version du squelette des articles


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface des news catal Deutsch Espaol italiano

Nous avons dsormais un site trs structur depuis lespace priv, et de nombreux articles publis. Il est temps de nous attaquer la cration du premier squelette. Beaucoup de webmestres commencent cette tape en travaillant partir dun squelette standard, quils modifient par petites touches. De notre ct, non seulement pour les besoins de ce tutorial, mais aussi par habitude, nous construisons les squelettes partir dun document totalement vide. tape par tape, les diffrentes boucles sont ajoutes, puis finalement linterface graphique (au dpart du code HTML extrmement simple, la construction graphique avec des tableaux tant ajoute en dernire tape). Cette mthode prsente plusieurs avantages : cela permet de bien comprendre sa propre construction intellectuelle lors du dveloppement dune page : quelle boucle dpend de quelle autre, etc. ; initialement dbarass des lments dinterface graphique, il est plus simple de bien percevoir la hirachie des informations sur la page ; ainsi linterface graphique dcoule-t-elle de cette hirachie dune manire plus cohrente ; le code HTML gnr est souvent plus clair : les redondances sont moins nombreuses (dfaut frquent du copier-coller de code HTML). Dans ce qui suit, nous utiliserons donc du code HTML trs simple (notamment : pas de tableaux). La cration dune interface graphique plus labore, en fin de

http://www.spip.net/fr_article1267.html (1 of 4)2006.04.17 19.36.56

[SPIP] Premire version du squelette des articles

Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

processus, est laisse au soin du lecteur. Volontairement, nous construirons le code tape par tape. Pour viter des pages interminables, lorsque nous enrichirons une boucle existante, nous ne reproduirons pas lintgralit de la page, mais uniquement la partie qui nous intresse. Pour sy retrouver, on se rfrera souvent au nom des boucles dj existantes.

La page de base
Commenons donc avec un fichier article.html vierge. Extrmement simple, voici la structure minimale dun article, sans aucun lment de navigation :
<html> <title>[#NOM_SITE_SPIP] <BOUCLE_titre(ARTICLES){id_article} >#TITRE</BOUCLE_titre></title> </head> <body> <blockquote> <BOUCLE_principale(ARTICLES) {id_article}> [<h3>(#SURTITRE)</h3] <h2>#TITRE</h2> [<h3>(#SOUSTITRE)</h3>] [(#DATE|affdate)] [(#LOGO_ARTICLE_RUBRIQUE|right)] [<b>(#CHAPO|justifier)</b>] [(#TEXTE|justifier)] [<p align="right" align='justify'> (#LESAUTEURS)] [<hr>(#PS)] [<hr>(#NOTES)]

Facile : </blockquote> </body> la BOUCLE_titre permet dafficher le titre de larticle dans lentte de la page ; </html> la BOUCLE_principale contient dintgralit de la page ; elle permet de
http://www.spip.net/fr_article1267.html (2 of 4)2006.04.17 19.36.56

</BOUCLE_principale>

[SPIP] Premire version du squelette des articles

positionner toutes les autres boucles lintrieur de larticle slectionn.

Rcuprer les infos sur le jeu


Le squelette prcdent serait une bonne base pour un webzine standard (tout linformation ncessaire est dans larticle), mais dans notre cas, une information vitale ne se trouve pas dans larticle : de quel jeu sagit-il ? En effet, nous avons dcid que le titre du jeu ntait pas dans larticle, mais dans la rubrique contenant cet article. On pourrait se contenter de la boucle HIERARCHIE, mais nous prfrerons ici prendre une habitude qui reviendra systmatiquement dans nos exemples : il faut passer de larticle sa rubrique pour rcuprer le nom du jeu. (Cest le mme principe pour rcuprer le logo ; la diffrence prs que la balise #LOGO_RUBRIQUE_ARTICLE effectue automatiquement cette opration.) Ce sera donc une constante sur ce site : les boucles ARTICLES contiennent souvent une boucle RUBRIQUES permettant de remonter dun cran , cest-dire de rcuprer le titre du jeu. Cela sera le cas dans les pages des rubriques, ainsi que sur la page de sommaire. Reprenons le dbut du code, tout au dbut de la BOUCLE_principale :
<BOUCLE_principale(ARTICLES){id_article} > <BOUCLE_rubrique(RUBRIQUES) {id_rubrique}> <h1>#TITRE</h1> </BOUCLE_rubrique> ... Notez que le #TITRE de la rubrique est affich avec la taille maximale (h1) ;

logique, puisque cest le titre du jeu. Le titre de la rubrique, qui est dordinaire seulement un lment de navigation dans le site, est ici linformation principale de larticle. Afin dobtenir une esquisse de navigation, affichons la hirarchie. Nous allons dmarrer cette hirarchie depuis la rubrique qui contient la sous-rubrique actuelle, puisque ce qui nous intresse est la liste des catgories de jeux (et nous connaissons dj le nom de la dernire sous-rubrique - le titre du jeu). Nous nous plaons donc lintrieur de la BOUCLE_rubrique, ajoutons une BOUCLE_rub_parent (qui permet encore de remonter dun cran dans la hirachie), et partir de l nous demandons la hirachie :
http://www.spip.net/fr_article1267.html (3 of 4)2006.04.17 19.36.56

[SPIP] Premire version du squelette des articles

<BOUCLE_rubrique(RUBRIQUES) {id_rubrique}> <BOUCLE_rub_parent(RUBRIQUES) {id_enfant}> <BOUCLE_hierarchie(HIERARCHIE) {id_rubrique}{" : "}> <a href="#URL_RUBRIQUE">#TITRE</a> </BOUCLE_hierarchie> </BOUCLE_rub_parent> Laissons cette page article.html en ltat. Rien de compliqu pour linstant. Il <h1>#TITRE</h1> manque la gestion des mots-cls, et les liens entre les articles dun mme rubrique </BOUCLE_rubrique>

(cest--dire traitant du mme jeu).

Seule subtilit : il faut remonter la rubrique qui contient larticle pour obtenir le titre du jeu, et il faut encore remonter dun cran (la rubrique qui contient la rubrique qui contient le jeu) avant de dmarrer la hirarchie.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1267.html (4 of 4)2006.04.17 19.36.56

[SPIP] La page des rubriques

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

La page des rubriques


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface catal Espaol italiano

Commenons avec un fichier rubrique.html vierge. La premire version de notre fichier sera trs simple. Nous intgrons tout de suite la BOUCLE_hierarchie, qui ne prsente ici aucune particularit.

http://www.spip.net/fr_article1269.html (1 of 6)2006.04.17 19.37.8

[SPIP] La page des rubriques

des news Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

<html> <title>[#NOM_SITE_SPIP] <BOUCLE_titre(RUBRIQUES){id_rubrique} >#TITRE</BOUCLE_titre></title> </head> <body> <blockquote> <BOUCLE_principale(RUBRIQUES) {id_rubrique}> <BOUCLE_hierarchie (HIERARCHIE){" : "}> <a href="#URL_RUBRIQUE">#TITRE</a> </BOUCLE_hierarchie> <h1>#TITRE</h1> [(#LOGO_RUBRIQUE|right)] [(#TEXTE|justifier)] [<hr>(#NOTES)] </BOUCLE_principale> Si vous installez cette page sur votre site, a ne va pas tre spectaculaire... </blockquote> </body> </html>

Les articles contenus dans cette rubrique

Ajoutons la liste des articles contenus dans cette rubrique. Plaons cette BOUCLE_articles la fin de la BOUCLE_principale (aprs le texte et ses notes).
... <B_articles>Les articles : <ul> <BOUCLE_articles(ARTICLES) {id_rubrique}> <li> <a href="#URL_ARTICLE">#TITRE</a> </BOUCLE_articles> </ul> </B_articles> </BOUCLE_principale> ... En ralit, cette boucle ne prsente pas grand intrt : elle affiche les articles sans

classement particulier (elle ne tient pas compte des mots-cls de type darticles). Nous linstallons pour linstant telle quelle, afin davoir une premire navigation possible sur le site. Nous reprendrons cette partie un peu plus loin dans ce
http://www.spip.net/fr_article1269.html (2 of 6)2006.04.17 19.37.8

[SPIP] La page des rubriques

tutorial.

Les sous-rubriques
Installons maintenant la boucle des sous-rubriques (aprs la BOUCLE_articles) :
... <B_sous_rubriques>Les sousrubriques : <ul> <BOUCLE_sous_rubriques (RUBRIQUES){id_parent}{par titre}> <li> <a href="">#TITRE</a> </BOUCLE_sous_rubriques> </ul> <B_sous_rubriques>

... Et l, on rencontre le vrai premier problme de notre tutorial : les rubriques dfinissant des genres de jeux sont mlanges avec des rubriques consacres directement des jeux.

</BOUCLE_principale>

Par exemple, dans la structure de dmonstration, la rubrique Action/aventure contient la fois, prsents exactement de la mme manire : deux sous-rubriques thmatiques ( Exploration et nigmes et Survival horror ), et deux rubriques de jeux ( Devil May Cry et Soul Reaver 2 ). Laffichage de la boucle ci-dessus fournit donc la liste : Devil May Cry, Exploration et nigmes, Soul Reaver 2, Survival horror. Or il faut imprativement diffrencier trs nettement les rubriques catgories de jeux (utiles essentiellement la navigation) et les rubriques jeux (qui donnent le titre des jeux). Pour rsoudre cette difficult, nous allons utiliser le systme des boucles. Aucune bidouille informatique donc, mais il va faut bien comprendre la logique du site et la logique des boucles.

http://www.spip.net/fr_article1269.html (3 of 6)2006.04.17 19.37.8

[SPIP] La page des rubriques

La logique du site : une rubrique Jeu est une rubrique qui contient des articles ; une rubrique de catgorie de jeux ne contient pas directement darticles. Cest la dfinition de notre site : tout article concernant un jeu est plac dans une rubrique portant le nom du jeu ; ainsi une rubrique de catgorie de jeu ne contient que des sous-rubriques de catgories et des rubriques portant le nom des jeux, mais jamais directement des articles (est-ce bien clair ?). Par exemple, dans notre cas : Soul Reaver 2 et Devil May Cry contiennent les articles concernant ces jeux (tests, previews, etc.) ; Survival horror et Exploration et nigmes ne contiennent par dfinition pas darticles. Sil y a des jeux dans Survival horror , les articles les concernant sont dans des sous-rubriques portant le nom de ces jeux, mais pas directement dans la rubrique Survival... . Le but de la manoeuvre va donc consister sparer les rubriques sans articles des rubriques avec des articles. Et le plus simple est de faire deux boucles diffrentes.

Les rubriques sans articles


Commenons par les sous-rubriques qui ne contiennent pas darticles (cest--dire les grandes catgories de type Survival horror , Exploration ...). Modifions la BOUCLE_sous_rubriques ainsi :
<BOUCLE_sous_rubriques(RUBRIQUES) {id_parent}{par titre}> <BOUCLE_sans_articles (ARTICLES){id_rubrique}> </BOUCLE_sans_articles> <h3><a href="#URL_RUBRIQUE">#TITRE</a></h3> <//B_sans_articles>

Le principe de cette astuce est simple :


</BOUCLE_sous_rubriques>

lintrieur de la BOUCLE_sous_rubriques, on insre une nouvelle BOUCLE_sans_articles, qui va rcuprer les articles quelle contient. Notez que lintrieur de la BOUCLE_sans_articles est vide : si la sous-rubriques contient des articles, ces derniers ne sont pas affichs (la boucle ne sert qu contrler leur prsence) ; le #TITRE de la BOUCLE_sous_rubriques est insr dans le texte optionnel sans de la BOUCLE_sans_articles. Juste avant le <//B_sans_articles>. Ainsi, le titre de la rubrique ne saffiche que si BOUCLE_sans_articles ne contient
http://www.spip.net/fr_article1269.html (4 of 6)2006.04.17 19.37.8

[SPIP] La page des rubriques

aucun article (cest--dire si la BOUCLE_sous_rubriques elle-mme ne contient aucun article). La BOUCLE_sous_rubriques, dans labsolu, rcupre bien toutes les rubriques (y compris celle des jeux). Mais le #TITRE (avec le lien hypertexte) nest affich que si la BOUCLE_sans_articles est vide.

Les rubriques de jeu (avec des articles)


Nous appliquons le principe exactement inverse une BOUCLE_jeux (que nous pouvons placer juste avant BOUCLE_sous_rubriques).
<BOUCLE_jeux(RUBRIQUES){id_parent}{par titre}> <B_avec_articles> <h4><a href="#URL_RUBRIQUE">#TITRE</a></h4> [(#LOGO_RUBRIQUE|right)] <ul> <BOUCLE_avec_articles (ARTICLES){id_rubrique}> <li><a href="#URL_ARTICLE">#TITRE</a> </BOUCLE_avec_articles> </ul> Cette fois, le #TITRE de la rubrique est plac dans le texte conditionnel </B_avec_articles>

avant ; on affiche le #LOGO_RUBRIQUE (videmment, terme, on fera de </BOUCLE_jeux> beaux tableaux pour viter les chevauchements disgracieux). Et au passage, on en profite pour afficher la liste des articles de la BOUCLE_avec_articles. La BOUCLE_jeux et la BOUCLE_sous_rubriques sont au dpart totalement identiques : leurs critres sont les mmes. lintrieur de ces boucles, ce sont donc les mmes rubriques qui sont traites. En revanche, les boucles BOUCLE_avec_articles et BOUCLE_sans_articles servent de filtres : ils prennent chacune des rubriques de BOUCLE_jeux et BOUCLE_sous_rubriques, et vrifient la prsence ou non darticles. Est-ce que lon aurait pu ici utiliser le critre {doublons} ? Non, car la premire boucle affiche (BOUCLE_sous_rubriques) traite bien toutes les sous-rubriques (seulement, le titre de ces sous-rubriques est affich ou non selon les cas). Lui attribuer un critre {doublons} interdirait par la suite de traiter aucune de ces sous-rubriques. Ensuite, la BOUCLE_jeux associe ce critre de {doublons} tenterait de rcuprer toutes les sous-rubriques qui nont pas t traites par la
http://www.spip.net/fr_article1269.html (5 of 6)2006.04.17 19.37.8

[SPIP] La page des rubriques

premire boucle ; or toutes les sous-rubriques ont bien t traites. La BOUCLE_jeux ne pourrait donc rigoureusement rien afficher. Laissons maintenant cette page rubrique.html , nous y reviendrons plus tard.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1269.html (6 of 6)2006.04.17 19.37.8

[SPIP] Les mots-cls dans les articles

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Les mots-cls dans les articles


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface des news catal Espaol italiano

Revenons nos articles... Nous allons maintenant exploiter les mots-cls pour dterminer la ou les machines concerns, puis grer intelligemment les liens vers les autres articles concernant le mme jeu.

Les machines
Indiquer quelles machines sont concernes est trs simple : il sagit dune simple application de la boucle (MOTS). Nous insrons la boucle suivante dans larticle (par exemple entre le #SOUSTITRE et la #DATE) :
<BOUCLE_machines(MOTS){id_article} {type=Machines}> [(#LOGO_MOT|left)] </BOUCLE_machines>

Nous naffichons que le logo de la machine. (videmment, une fois tout le processus de cration des boucles termin, il conviendra de fignoler linterface graphique...)

Dans la mme rubrique, au sujet du mme jeu

http://www.spip.net/fr_article1270.html (1 of 6)2006.04.17 19.37.19

[SPIP] Les mots-cls dans les articles

Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

Afficher les autres articles contenus dans la mme rubrique nest gure plus compliqu. Commenons par modifier lappel de la BOUCLE_principale avec un {doublons}, pour viter ensuite de crer un lien vers larticle dj affich (a nest pas bien grave, mais a ne fait pas trs propre) :
<BOUCLE_principale(ARTICLES){id_article} {doublons}>

Nous pourrions dsormais nous contenter de rcuprer tous les articles de la mme rubrique (trs simplement, une boucle (ARTICLES){id_rubrique} {doublons}). Cependant, nous voulons ici diffrencier clairement les types darticles, non seulement pour rendre linterface plus claire, mais aussi pour pouvoir raliser des liens et des prsentations diffrents selon les cas. Commenons par une boucle vers les autres tests du mme jeu. Nous insrons cette boucle toujours lintrieur de la BOUCLE_principale ; par exemple juste aprs #NOTES.
<B_tests><p>Autres tests de ce jeu : <ul> <BOUCLE_tests(ARTICLES) {id_rubrique}{titre_mot=Test}{doublons}> <li><a href="#URL_ARTICLE">#TITRE</a> </BOUCLE_tests> </ul> </B_tests> (Pour vrifier le fonctionnement de cette boucle, placez plusieurs articles de type

Test dans la mme rubrique. Vous pouvez mme leur attribuer des machines diffrentes - un test de la version PC, un test de la version Dreamcast, un test de la version Playstation...) Comme vous le constatez, cest trs simple : on appelle les (ARTICLES) selon le critre {id_rubrique} (cest--dire les articles appartenant la mme rubrique) ; on ajoute la restriction suivante : le titre dun des mots-cls lis ces articles doit tre Test (notez ici limportance de respecter le choix initial du nom du mot-cl, et de ne plus le modifier par la suite) ; le critre {doublons} interdit dafficher nouveau larticle principal. Les textes optionnels avant et aprs (les <ul>...</ul>) ne servent que pour la prsentation graphique.
http://www.spip.net/fr_article1270.html (2 of 6)2006.04.17 19.37.19

[SPIP] Les mots-cls dans les articles

N.B. Cette boucle utilise une fonctionnalit introduite dans le version SPIP 1.3 : dans une boucle (ARTICLES), vous pouvez slectionner les articles selon le titre dun mot-cl (avec le critre titre_mot), ou selon un groupe de mot-cl (critre type_mot). Cependant cette boucle nest pas suffisante : puisquil sagit de tests du mme jeu, mais sur dautres machines, il faut indiquer de quelle machine il sagit. Il suffit dajouter une boucle de mots (comme ci-dessus) lintrieur de cette BOUCLE_tests et dafficher les logos correspondants. Ajoutons au passage la date de publication de larticle. Le code devient :
<B_tests><p>Les tests de ce jeu : <ul> <BOUCLE_tests(ARTICLES) {id_rubrique}{titre_mot=Test}> <li> <BOUCLE_tests_machines(MOTS) {id_article}{type=Machines}> [(#LOGO_MOT)] </BOUCLE_tests_machines> <a href="#URL_ARTICLE">#TITRE</a> [(#DATE|affdate)] </BOUCLE_tests> Mme chose pour les previews, les soluces et les astuces : </ul> </B_tests>

http://www.spip.net/fr_article1270.html (3 of 6)2006.04.17 19.37.19

[SPIP] Les mots-cls dans les articles

<B_previews><p>Les previews de ce jeu : <ul> <BOUCLE_previews(ARTICLES) {id_rubrique}{titre_mot=Preview}> <li> <BOUCLE_previews_machines (MOTS){id_article}{type=Machines}> [(#LOGO_MOT)] </BOUCLE_previews_machines> <a href="#URL_ARTICLE">#TITRE</a> [(#DATE|affdate)] </BOUCLE_previews> </ul> </B_previews> <B_soluces><p>Les soluces de ce jeu : <ul> <BOUCLE_soluces(ARTICLES) {id_rubrique}{titre_mot=Soluce}> <li> <BOUCLE_soluces_machines (MOTS){id_article}{type=Machines}> [(#LOGO_MOT)] </BOUCLE_soluces_machines> <a href="#URL_ARTICLE">#TITRE</a> [(#DATE|affdate)] </BOUCLE_soluces> </ul> </B_soluces> <B_astuces><p>Les trucs et astuces de ce jeu : <ul> (Ces trois boucles fonctionnent exactement sur le mme principe que la <BOUCLE_astuces(ARTICLES) BOUCLE_tests.) {id_rubrique}{titre_mot=Astuces}> <li> <BOUCLE_astuces_machines Restent les news... Nous allons ici adopter un comportement trs diffrent. Les (MOTS){id_article}{type=Machines}> news tant gnralement des informations courtes (annonce dun dlais, [(#LOGO_MOT)] rumeurs...), on aura avantage les prsenter toutes runies sur une mme page </BOUCLE_astuces_machines> (peut-tre pas, mais pour les besoins de ce tutorial, on dira que cest mieux !). <a href="#URL_ARTICLE">#TITRE</a> [(#DATE|affdate)] Le petit morceau de code fera laffaire : </BOUCLE_astuces> </ul> </B_astuces> <BOUCLE_news(ARTICLES){id_rubrique} {titre_mot=News}{doublons}{par date} {inverse}{0,1}> <p><a href="news_jeu.php3? id_rubrique=#ID_RUBRIQUE">Les news de Lastuce qui permet dobtenir:un code aussi court : ce jeu</a> - dernire mise--jour [(#DATE| affdate)] http://www.spip.net/fr_article1270.html (4 of 6)2006.04.17 19.37.19 </BOUCLE_news>

[SPIP] Les mots-cls dans les articles

tout dabord, on ne sintresse plus la machine concerne ; cela supprime une boucle ; la BOUCLE_news rcupre le dernier article ({par date}{inverse}{0,1}) associ au mot-cl News . Un seul article, cela suffit largement pour savoir sil y a une page consacre aux news ; et en rcuprant la plus rcente news, afficher sa date revient annoncer la dernire mise--jour de la page des news... De manire plus lgante, on aurait pu raliser une BOUCLE_news vide et insrer le lien hypertexte dans le texte optionnel de la boucle. Important : le lien hypertexte pointe vers une page news_jeu.php3 , avec lid_rubrique de la rubrique actuelle. Nous allons devoir, par la suite, crer le squelette correspondant.

Les jeux dans la mme catgorie


Nous voulons, pour finir, afficher les jeux de la mme catgorie (par exemple, les autres jeux du genre Survival horror ). Nous allons dabord utiliser la mthode qui consiste remonter dun cran (pour passer de la rubrique de larticle la rubrique de la catgorie de ce jeu). Puis nous allons rcuprer la mthode utilise dans les rubriques pour afficher sparment les rubriques qui contiennent des articles (cest--dire des rubriques directement consacres un jeu). Le code est :
<BOUCLE_rub_act(RUBRIQUES) {id_rubrique}{doublons}> <BOUCLE_jeux(RUBRIQUES) {meme_parent}{doublons}{par date}{inverse} > <B_avec_articles> <h4><a href="#URL_RUBRIQUE">#TITRE</a></h4> <BOUCLE_avec_articles (ARTICLES){id_rubrique}{age < 90}> Les subtilits de ce code : </BOUCLE_avec_articles> la BOUCLE_rub_act (qui renvoit la rubrique actuelle) contient un {doublons} </BOUCLE_jeux> pour </BOUCLE_rub_act> viter ensuite dafficher le jeu principal ;

logiquement, la BOUCLE_jeux contient elle aussi un {doublons} ; attention : multiplier les critres doublons peut conduire des difficults. Si vous dupliquez ces boucles dans la mme page pour un autre usage, prenez soin viter ce
http://www.spip.net/fr_article1270.html (5 of 6)2006.04.17 19.37.19

[SPIP] Les mots-cls dans les articles

critre ; la BOUCLE_avec_articles ne rcupre que les articles ags de moins de 3 mois (90 jours). En effet, nous ne voulons pas ici afficher lintgralit des jeux de la mme catgorie, mais uniquement ceux qui ont t modifis rcemment.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1270.html (6 of 6)2006.04.17 19.37.19

[SPIP] Les mots-cls dans les rubriques

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Les mots-cls dans les rubriques


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface catal Espaol italiano

Revenons au fichier rubrique.html . Nous lavions laiss avec une mchante BOUCLE_articles, sans intrt pour notre site, puisquelle ne classait pas les articles par catgories. Le monde est bien fait : nous venons de programmer une telle fonctionnalit pour les articles ! Il suffit donc de copier-coller le bloc qui nous intresse, de linsrer la place de la BOUCLE_articles (qui disparat donc), et de voir sil y a des modifications ncessaires. Ce qui nous donne :

http://www.spip.net/fr_article1271.html (1 of 4)2006.04.17 19.37.29

[SPIP] Les mots-cls dans les rubriques

des news Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

<BOUCLE_les_articles(RUBRIQUES) {id_rubrique}> <B_tests><p>Les tests de ce jeu : <ul> <BOUCLE_tests(ARTICLES) {id_rubrique}{titre_mot=Test}> <li> <BOUCLE_tests_machines (MOTS){id_article}{type=Machines}> [(#LOGO_MOT)] </BOUCLE_tests_machines> <a href="#URL_ARTICLE">#TITRE</a> [(#DATE|affdate)] </BOUCLE_tests> </ul> </B_tests> <B_previews><p>Les previews de ce jeu : <ul> <BOUCLE_previews(ARTICLES) {id_rubrique}{titre_mot=Preview}> <li> <BOUCLE_previews_machines(MOTS) {id_article}{type=Machines}> [(#LOGO_MOT)] </ BOUCLE_previews_machines> <a href="#URL_ARTICLE">#TITRE</a> [(#DATE|affdate)] </BOUCLE_previews> </ul> </B_previews> <B_soluces><p>Les soluces de ce jeu : <ul> <BOUCLE_soluces(ARTICLES) {id_rubrique}{titre_mot=Soluce}> <li> <BOUCLE_soluces_machines (MOTS){id_article}{type=Machines}> [(#LOGO_MOT)] </ BOUCLE_soluces_machines> <a href="#URL_ARTICLE">#TITRE</a> [(#DATE|affdate)] </BOUCLE_soluces> Les modifications apportes : </ul> </B_soluces>

http://www.spip.net/fr_article1271.html (2 of 4)2006.04.17 19.37.29

[SPIP] Les mots-cls dans les rubriques

inutile de changer la requte {id_rubrique}, puisque ctait dj sur cette rubrique que lon se basait dans les articles ; supprimons tous les {doublons}, ils ne sont daucune utilit ici (il ny a pas darticle dj affich) ; autant ne pas prendre le risque de conflits avec de futurs dveloppements de notre page sils ne servent rien ; lensemble est install dans une grande BOUCLE_les_articles. Que fait cette boucle ? Strictement rien : elle renvoit la rubrique dans laquelle nous nous trouvons dj. Mais elle nous sera utile ci-aprs... Lautre point faible de notre page tait la BOUCLE_jeux, dans laquelle la BOUCLE_avec_articles profitait de son passage pour afficher la liste des articles de la sous-rubrique sans effectuer de tri. Or, trier les articles dune rubrique, cest ce que nous venons de faire ci-dessus. Modifions donc la BOUCLE_jeux ainsi :
<BOUCLE_jeux(RUBRIQUES){id_parent}{par titre}> <B_avec_articles> <h4><a href="#URL_RUBRIQUE">#TITRE</a></h4> [(#LOGO_RUBRIQUE|right)] <ul> <BOUCLE_avec_articles (ARTICLES){id_rubrique}{0,1}> <BOUCLE_repeter_articles (boucle_les_articles)></ BOUCLE_repeter_articles> </BOUCLE_avec_articles> La BOUCLE_avec_articles est dsormais effectue une seule fois (sur un seul </ul> </B_avec_articles> article), ce qui est suffisant pour savoir si elle contient un article. On voit

apparatre une BOUCLE_repeter_articles : il sagit dun boucle qui reproduit </BOUCLE_jeux> exactement le comportement de la BOUCLE_les_articles, partir de lendroit o elle se trouve (cest--dire quelle dmarre non plus depuis la rubrique principale, mais de la sous-rubrique). Lintrt dsormais de limiter la BOUCLE_avec_articles un unique lment est alors clair : sans cette limitation, la BOUCLE_repeter_articles serait excute autant de fois quil y a darticles dans la sous-rubrique. videmment, le rsultat graphique de cet exemple est hideux : trop charg, peu clair. Disons quil tait intressant dutiliser une boucle rcursive dans ce tutorial...

http://www.spip.net/fr_article1271.html (3 of 4)2006.04.17 19.37.29

[SPIP] L'interface des news

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Linterface des news


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface des news catal Espaol italiano

Toutes les news dun jeu


Nous avons insr, dans les squelettes des articles et des rubriques, un lien vers une page news_jeu.php3 , qui doit prsenter dun coup toutes les news concernant un jeu. Crons donc ce squelette... Tout dabord (principe du couple de fichiers pour grer les squelettes de SPIP), nous allons crer le fichier dappel news_jeu.php3 . Il suffit par exemple de copier le fichier article.php3 (fourni avec SPIP) et den modifier quelques lments. Voici le contenu du fichier news_jeu.php3 :
<? $fond = "news_jeu"; $delais = 24 * 3600; include ("inc-public.php3"); ?>

Le fichier de squelette utilis sera donc news_jeu ( .html , ou une des variantes localises une rubrique si ncessaire, telle news_jeu-52.html ...).

http://www.spip.net/fr_article1272.html (1 of 3)2006.04.17 19.37.38

[SPIP] L'interface des news

Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

Le squelette sera donc un fichier news_jeu.html . Ce fichier est utilis avec une variable de rubrique, puisque cest bien la rubrique qui contient le nom du jeu et lintgralit des articles concernant le jeu. Vite fait, bien fait, on va recopier le contenu du fichier rubrique.html et supprimer de dont nous navons plus besoin :
<html> <title>[#NOM_SITE_SPIP] <BOUCLE_titre(RUBRIQUES){id_rubrique} >#TITRE</BOUCLE_titre></title> </head> <body> <blockquote> <BOUCLE_principale(RUBRIQUES) {id_rubrique}> <BOUCLE_hierarchie(HIERARCHIE){" : "}> <a href="#URL_RUBRIQUE">#TITRE</ a> </BOUCLE_hierarchie> <h1><a href="#URL_RUBRIQUE">#TITRE</a></h1> [(#LOGO_RUBRIQUE|right)]

Cela affiche le titre de la rubrique (cest--dire le nom du jeu), le logo de la </BOUCLE_principale> rubrique, et la hirarchie. Seule modification : le titre du jeu est un lien hypertexte </blockquote> pour revenir la page gnrale (lors de la finition graphique du site, on pourra </body> </html> videmment prfrer un lien plus discret). Tout ce quil nous reste faire : insrer une unique boucle qui affichera tous les articles de cette rubrique lis au mot-cl News . lintrieur de la BOUCLE_principale, sous le #LOGO_RUBRIQUE, il suffit dindiquer :

http://www.spip.net/fr_article1272.html (2 of 3)2006.04.17 19.37.38

[SPIP] L'interface des news

<BOUCLE_news(ARTICLES){id_rubrique} {titre_mot=News}{par date}{inverse}> <hr><h3>#TITRE</h3> [(#DATE|affdate)] <BOUCLE_news_machines (MOTS){id_article}{type=Machines}> [(#LOGO_MOT|right)] </BOUCLE_news_machines> [(#TEXTE|justifier)] [<p><font size=2>(#PS)</font>] [<p>(#NOTES)]

La BOUCLE_news fait tout le travail : elle affiche le titre de chaque news, son </BOUCLE_news> texte, et si ncessaire le post-scriptum et des notes de bas de page. Comme lhabitude, la BOUCLE_news_machines affiche le logo des machines concernes par la news. Considrons notre page des news termine. On pourra videmment y ajouter les liens vers les articles de la mme rubrique (les tests, les previews, les solutions...).

tlcharger le squelette de cette page

http://www.spip.net/fr_article1272.html (3 of 3)2006.04.17 19.37.38

[SPIP] Et encore d'autres moyens de se compliquer la vie !

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Et encore dautres moyens de se compliquer la vie !


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les catal Espaol italiano

Notre site utilise dsormais ce qui tait prvu lorigine : le rubriquage thmatique (par genre de jeux) ; lindication des machines concernes par chaque article ; la gestion des types darticles (tests, news, previews...). Ltape suivante consistera crer des navigations parallles (naviguer selon une unique machine, ou selon un type darticles). Mais avant de nous lancer dans le dveloppement de ces navigations transversales, compliquons-nous un peu laffaire, en ajoutant deux autres lments indispensables aux sites de jeux vido : la note attribue un jeu ; la date de sortie officielle du jeu. Ces deux lments devraient tre, dsormais, simples installer avec le systme des mots-cls. Ils permettront eux-mme de proposer des navigations transversales (notamment une page des jeux ayant les meilleures notes, et une page dannonce des prochaines sorties).

http://www.spip.net/fr_article1275.html (1 of 8)2006.04.17 19.37.54

[SPIP] Et encore d'autres moyens de se compliquer la vie !

rubriques Linterface des news Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

Lattribution dune note un jeu


Il est logique dattribuer une note la fin dun test : pour les previews, cest trop tt, puisquil ne sagit pas dune version dfinitive ; pour les autres types darticles (news, soluces...), a na tout simplement rien voir ; il est impossible dattribuer une note la rubrique-jeu, puisque cette rubrique peut prsenter diffrentes versions dun jeu. Donc, nous dcidons que, dans le fonctionnement de notre site, la note est lie un article de test. Dans une mme rubrique dun jeu, puisquil peut y avoir plusieurs tests diffrents (selon les critiques, selon les machines...), il y aura donc plusieurs notes, associes ces tests. Arbitrairement, nous choisissons une notation sur 10 (de 1 pour nul, 10 pour gnial). Retour la page de gestion des mots-cls : nous crons un groupe de mots intitul Note ; dans ce groupe de mots, nous crons 10 mots-cls, dont les noms sont successivement 01 , 02 , ..., 09 , 10 . Ce qui donne :

On peut choisir, comme pour les machines, dattribuer un logo diffrent chaque note (par exemple des toiles), et ensuite dans les squelettes utiliser les logos plutt que le nombre indiqu par le mot-cl en toutes lettres. Par pure fainantise, nous nous contenterons ici dutiliser le texte des mots-cls. Dsormais, avant la publication dun test, en plus de slectionner les mots-cls correspondant au type de larticle ( Test , donc) et ceux des machines concernes, il faut penser choisir une note. Si lon veut un fonctionnement cohrent, il est vident quon ne doit slectionner quune seule note par article.

http://www.spip.net/fr_article1275.html (2 of 8)2006.04.17 19.37.54

[SPIP] Et encore d'autres moyens de se compliquer la vie !

Intgrer la note dans les squelettes


La boucle permettant dafficher la note dun article est trs simple. Dans article.html , plaons la note de larticle sous la signature de lauteur (avant le #PS et les #NOTES) :
<BOUCLE_note(MOTS){id_article}{inverse} {type=Note}> [<p align="right"><b>NOTE : (#TITRE)/10</b>] </BOUCLE_note>

Ajoutons galement la mention de la note dans les autres tests de ce jeu . La BOUCLE_tests est ainsi modifie :
<B_tests><p>Les tests de ce jeu : <ul> <BOUCLE_tests(ARTICLES) {id_rubrique}{titre_mot=Test}> <li> <BOUCLE_tests_machines(MOTS) {id_article}{type=Machines}> [(#LOGO_MOT)] </BOUCLE_tests_machines> <a href="#URL_ARTICLE">#TITRE</a> <BOUCLE_autre_note(MOTS) {id_article}{inverse}{type=Note}> [ - NOTE : (#TITRE)/10] </BOUCLE_autre_note> - [(#DATE|affdate)] Dans </BOUCLE_tests> cette mme BOUCLE_tests est remplacer rubrique.html , </ul> directement. </B_tests>

Voil, lintgration dune note de test na pas pris cinq minutes ! Tout cela tant trop facile, nous verrons par la suite comment exploiter ailleurs cette note attribue aux jeux.

La date de sortie officielle des jeux


Laffichage de la date de sortie officielle des jeux est plus problmatique. En effet, une date ne peut pas tre elle-mme un mot-cl (nous avons dj soulign que les mots-cls devaient tre des lments stables de la structure : on ne va donc pas crer des mots-cls de dates !).
http://www.spip.net/fr_article1275.html (3 of 8)2006.04.17 19.37.54

[SPIP] Et encore d'autres moyens de se compliquer la vie !

Il existe une possibilit : utiliser la date de premire publication de certains articles. Problme : quels articles ? Les dates de sortie sont connues (de manire plus ou moins approximative) longtemps lavance, donc on ne peut pas attendre quil y ait des articles consacrs au jeu pour pouvoir lannoncer. Les articles dun jeu peuvent traiter dune plateforme ou de plusieurs. Or les dates de sorties selon les plateformes est trs variables. On peut donc difficilement utiliser des articles communs plusieurs plateformes pour annoncer les dates. Par exemple, Alone in the Dark : the new nightmare, est trs similaire entre ses versions Playstation 2 et Dreamcast, il est donc logique de consacrer un test unique aux deux versions ; en revanche, les dates de sorties sont diffrentes sur ces plateformes. Tant que le jeu nest pas commercialis, les dates annonces doivent tre corriges rgulirement (retards, plus grande prcision...). Le webmestre doit donc facilement trouver o il doit modifier ces informations. Dans la structure de notre site, on peut donc considrer que la date de sortie dun jeu est une information indpendante des autres informations (tests, previews, etc.) ; nous ne pouvons donc pas utiliser la date de premire publication dun autre article pour indiquer cette date de sortie. Nous allons procder de la faon suivante (il en existe certainement dautres) : nous crons un nouveau type darticle (en plus des tests, previews, etc.) ; install dans le groupe Type_article , nous le nommerons Date_sortie ; dans la rubrique du jeu, nous crons autant darticles ncessaires quil y a de versions du jeu avec des dates de sortie diffrentes. Ces articles sont vides : ils nont quun titre et une date de publication (fixe manuellement la date de sortie du jeu). Son titre lui-mme na aucune importance, nous ne lafficherons pas sur le site public ; en revanche, ce titre facilitera la navigation dans le site priv ; chaque article associ Date_sortie , on attribue galement le mot-cl de la machine concerne par cette date. Voici par exemple comment procder avec Resident Evil : Code Veronica : crer un nouvel article dans la rubrique Code Veronica ; titrer cet article Sortie Veronica Dreamcast (titre de convenance, sans autre
http://www.spip.net/fr_article1275.html (4 of 8)2006.04.17 19.37.54

[SPIP] Et encore d'autres moyens de se compliquer la vie !

intrt que didentifier ces articles dans lespace priv) ; attribuer les mots-cls Dreamcast et Date_sortie cet article ; publier larticle, et modifier sa date en mai 2000 (si lon ne connait pas le jour exact, on peut slectionner n.c. dans le menu droulant du jour) ; recommencer lopration avec un nouveau article Sortie Veronica PS2 ; lui attribuer les mots-cls Playstation 2 et Date_sortie ; publier et modifier la date (13 septembre 2001). Pour le premier article, cela donne :

Lauteur de ces articles est totalement indiffrent (inutile de perdre du temps le supprimer, de toute faon il ne sera pas utilis). Notez lintrt de notre faon dafficher les articles dune rubrique en fonction de certains types darticles (tests, previews...) : les articles ayant pour mot-cl Date_sortie ne sont pas affichs (avec les squelettes standards de SPIP, ces articles pourtant vides de tout contenu seraient affichs comme les autres).

Afficher la date dans les articles


Lorsque lon se trouve dans un article (dun jeu), la (les) date(s) de sortie sont contenus dans des articles associs au mot Date_sortie , situs dans la mme rubrique. Pour connatre la date de sortie dun jeu depuis un article de test (par exemple), il faut donc rcuprer le (ou les) article(s) installs dans la mme rubrique et ayant pour mot-cl Date_sortie .

http://www.spip.net/fr_article1275.html (5 of 8)2006.04.17 19.37.54

[SPIP] Et encore d'autres moyens de se compliquer la vie !

Dans le squelette article.html , insrons (par exemple juste aprs le titre) :


<BOUCLE_sortie(ARTICLES){id_rubrique} {titre_mot=Date_sortie}> <li> #TITRE : [<b>(#DATE|affdate)</b>] </BOUCLE_sortie>

Cependant, nous avions dcid de ne pas utiliser le titre de larticle contenant la date. Nous souhaitons en effet unifier la prsentation de cette information, sans pour autant nous obliger saisir le titre toujours de la mme faon. Nous nallons donc pas afficher le #TITRE de cet article-bidon (ni mme le titre de la rubrique, nous connaissons dj le titre du jeu, inutile de le rappeler ici). En revanche, pour diffrencier (ventuellement) les diffrentes dates de sorties en fonction des machines, nous allons insrer :
<BOUCLE_sortie(ARTICLES){id_rubrique} {titre_mot=Date_sortie}> <li> Date de sortie <BOUCLE_machine_sortie(MOTS) {id_article}{type=Machines}{", "}>#TITRE</ BOUCLE_machine_sortie> : [<b>(#DATE|affdate)</b>] Ce qui lors de la visite donnera : </BOUCLE_sortie>

Date de sortie Playstation : 22 aot 2001 Date de sortie Dreamcast : mai 2001

Cela ne nous satisfait pas encore (cest un tutorial, nous avons le droit dtre exigeants !) : la BOUCLE_sortie affiche les dates de sortie sur toutes les machines ; or, notre article peut ne pas traiter de toutes ces machines. Nous voulons donc nafficher que les dates de sortie correspondant aux machines traites par larticle. Attention, a devient coton, et cela utilise une subtilit des boucles :
<BOUCLE_mac2(MOTS){id_article} {type=Machines}> <BOUCLE_sortie(ARTICLES) {id_rubrique}{titre_mot=Date_sortie}> <BOUCLE_verifier_mot(ARTICLES) {id_article}{id_mot}> <li> Date de sortie <BOUCLE_machine_sortie(MOTS) {id_article}{type=Machines}{", "}>#TITRE</ BOUCLE_machine_sortie> : Vous[<b>(#DATE|affdate)</b>] reconnaissez les BOUCLE_sortie et BOUCLE_machine_sortie, que nous </BOUCLE_verifier_mot> navons pas modifes. En revanche, deux boucles apparaissent. </BOUCLE_sortie> </BOUCLE_mac2>
http://www.spip.net/fr_article1275.html (6 of 8)2006.04.17 19.37.54

[SPIP] Et encore d'autres moyens de se compliquer la vie !

(1) Lensemble est plac dans une BOUCLE_mac2, qui va rcuprer les mots-cls des machines associes cet article. lintrieur de cette boucle, nous avons donc une certaine valeur pour id_mot (lidentifiant de chaque machine concerne par larticle). (2) La BOUCLE_sortie, inchange, rcupre tous les articles de la rubrique associs au mot-cl Date_sortie . Notez bien : cette boucle nutilise pas id_mot , donc les articles de cette boucle sont la fois des boucles associs au mot-cl dont id_mot et qui ny sont pas associs. Second point important, cest une boucle (ARTICLES), cette boucle ne renvoit aucune information sur les mots-cls ; donc la valeur id_mot fournie par BOUCLE_mac2 reste inchange lintrieur de cette boucle. (3) La BOUCLE_verif_mot est une subtilit intressante : cest une boucle (ARTICLES) slectionnant larticle dont lidentifiant est id_article ; or nous sommes dj dans la BOUCLE_sortie, qui a dj retourn un article. Donc la BOUCLE_verif_mot retourne exactement le mme rsultat que la boucle prcdente ! cette diffrence que la BOUCLE_verif_mot instaure un critre supplmentaire, {id_mot}, larticle doit donc tre associ au mot-cl id_mot . Rsultat : si larticle retourn par BOUCLE_sortie est associ au mot-cl id_mot , on continue ; si larticle de BOUCLE_sortie nest pas associ, on sarrte et on passe au suivant. On peut ainsi dire que la BOUCLE_verif_mot est un filtre : elle prend larticle et vrifie sil correspond au critre du mot-cl. On peut le prsenter autrement : BOUCLE_verif_mot est seulement un critre de slection supplmentaire pour la BOUCLE_sortie. Le plus simple en effet aurait t de ne pas utiliser de BOUCLE_verif_mot, mais dajouter un critre BOUCLE_sortie, ainsi :
<BOUCLE_sortie(ARTICLES){id_rubrique} {id_mot}{titre_mot=Date_sortie}>

Cest--dire : rcuprer les articles de la mme rubrique associs la machine id_mot et au mot-cl Date_sortie . Cela aurait t plus direct, malheureusement SPIP naccepte pas ce genre de constructions (il faut un seul critre portant sur les mots-cls dans une boucle). Une telle boucle est donc refuse par SPIP. Vous remarquerez que nous avons empil quatre boucles successives pour afficher une information aussi peu importante que la date de sortie dun jeu ! On peut le dplorer, mais on peut prfrer penser que, si lon comprend bien la
http://www.spip.net/fr_article1275.html (7 of 8)2006.04.17 19.37.54

[SPIP] Et encore d'autres moyens de se compliquer la vie !

logique des boucles, les possibilits de SPIP sont beaucoup plus tendues que ce que les squelettes standards laissent supposer. N.B. En utilisant un peu de code PHP trs simple, on aurait obtenu le mme rsultat avec une seule boucle. Dans le dveloppement dun site, on aura certainement avantage gagner du temps en prfrant la version de raccourcie utilisant un peu de PHP. Mais nous tenions montrer que des certains rsultats peuvent trs bien se passer de PHP.

tlcharger le squelette de cette page

http://www.spip.net/fr_article1275.html (8 of 8)2006.04.17 19.37.54

[SPIP] Quelques sommaires alternatifs

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Quelques sommaires alternatifs


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface catal italiano

Dj une tripote darticles dans ce tutorial, et nous navons pas encore ralis le sommaire ! Tenez-vous bien : nous nallons pas encore nous y attaquer. Le sommaire gnral du site, cest en effet la partie la plus difficile raliser graphiquement, et linterface doit prsenter les informations les plus importantes de manire cohrente (ni trop, ni pas assez...). Avant de crer le sommaire, il faut donc dj connatre tous les types dinformation prsents sur le site, et les diffrentes structures de navigation. Le sommaire gnral, cest donc pour la fin... Nous allons donc commencer rellement exploiter les informations de notre site pour crer des sommaires alternatifs. Les sites de jeux vido regorgent en effet de ces pages rcapitulatives prsentant les jeux selon diffrents critres : le calendrier des sorties, les meilleures notes...

Le tableau des meilleures notes


Crons un couple de fichiers pour afficher la liste des meilleurs jeux. La page dappel sera notes.php3 , dont le contenu est :

http://www.spip.net/fr_article1281.html (1 of 9)2006.04.17 19.38.10

[SPIP] Quelques sommaires alternatifs

des news Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

<?php $fond = "notes"; $delais = 24 * 3600; include ("inc-public.php3"); ?>

Nous pouvons maintenant commencer le squelette, notes.html :


<html> <title>[#NOM_SITE_SPIP] Les meilleurs jeux</title> </head> <body> <blockquote> <h2>Les meilleurs jeux</h2> <BOUCLE_notes(MOTS){type=Note}{par titre}{inverse}> <h1>#TITRE/10</h1> </BOUCLE_notes> </blockquote> </body> Nous avons install une premire BOUCLE_notes, qui affiche tous les mots-cls </html>

de type Note (cest--dire 01 , 02 , ..., 10 ) par ordre invers ( 10 en haut de liste).

Affichons le titre des articles correspondant chaque note (cest--dire les articles associs au mot-cl renvoy par la BOUCLE_notes) :
<BOUCLE_notes(MOTS){type=Note}{par titre}{inverse}> <B_articles> <h1>#TITRE/10</h1> <BOUCLE_articles(ARTICLES){id_mot} {par date}{inverse}> <li>#TITRE </BOUCLE_articles> </BOUCLE_notes> La seule subtilit : le mot (la note) est dsormais affich dans le texte conditionnel avant de la BOUCLE_articles. De ce faon, seules les notes qui ont t rellement attribues des articles sont affiches.

http://www.spip.net/fr_article1281.html (2 of 9)2006.04.17 19.38.10

[SPIP] Quelques sommaires alternatifs

Nous affichons ici le titre de larticle. Ce nest pas ce qui nous intresse. Nous voulons afficher : le titre du jeu, cest--dire le titre de la rubrique qui contient larticle ; la (les) machine(s) sur lesquelles tournent ces jeux ; la (les) date(s) de sortie du jeu. Rien de bien compliqu, nous avons dj ralis ces oprations sur dautres pages (pour la date de sortie, nous recopions directement ce que nous avons dvelopp pour article.html ) :
<BOUCLE_notes(MOTS){type=Note}{par titre}{inverse}> <B_articles> <h1>#TITRE/10</h1> <ul> <BOUCLE_articles(ARTICLES){id_mot} {par date}{inverse}> <BOUCLE_rubrique_jeu (RUBRIQUES){id_rubrique}> <li><b><a href="#URL_ARTICLE">#TITRE</a></b> </BOUCLE_rubrique_jeu> <BOUCLE_machines_jeu(MOTS) {id_article}> #LOGO_MOT </BOUCLE_machines_jeu> <BOUCLE_mac2(MOTS) {id_article}{type=Machines}> <BOUCLE_sortie(ARTICLES) {id_rubrique}{titre_mot=Date_sortie}> <BOUCLE_verifier_mot (ARTICLES){id_article}{id_mot}> <br> Date de sortie <BOUCLE_machine_sortie(MOTS){id_article} {type=Machines}{", "}>#TITRE</ BOUCLE_machine_sortie> : Seule petite subtilit : la balise #URL_ARTICLE est utilise dans une boucle de [<b>(#DATE|affdate)</b>] type RUBRIQUES, de faon en raliser le lien vers la page du test plutt que sur la page gnrale</BOUCLE_verifier_mot> Cette utilisation dun lment propre aux de la rubrique du jeu. </BOUCLE_sortie> ARTICLES est possible ici, car l#URL_ARTICLE est ralis partir de la variable </BOUCLE_mac2>

id_article . Cet id_article est fourni par la BOUCLE_articles, puis la </BOUCLE_articles> BOUCLE_rubrique_jeu ne la modifie pas (puisquil sagit dune boucle de </ul> RUBRIQUES). Cest le mme principe qui permet dutiliser id_mot dans la </B_articles> BOUCLE_verifier_mot.
</BOUCLE_notes>

http://www.spip.net/fr_article1281.html (3 of 9)2006.04.17 19.38.10

[SPIP] Quelques sommaires alternatifs

Dernier problme rgler : cette page fonctionne bien au lancement du site et pendant les essais, avec une dizaine darticles, mais quand votre site aura un an et plusieurs milliers de jeux tests (au minimum !), la liste sera trop longue. De toute faon, afficher indiffremment des jeux sortis il y a une semaine et des jeux sortis depuis plusieurs mois na pas grand intrt : un jeu not 9/10 il y a un an serait certainement moins bien not aujourdhui. Introduisons donc une limitation de temps en modifiant la BOUCLE_articles :
<BOUCLE_articles(ARTICLES){id_mot} {age<90}{par date}{inverse}>

{age<90}, cest--dire les articles publis depuis moins de 3 mois.

Le calendrier des sorties


Incontournable sur les pages de jeux vido, la page indiquant les sorties rcentes et les prochaines sorties. La page dappel sera sorties.php3 :
<? $fond = "sorties"; $delais = 24 * 3600; include ("inc-public.php3"); ?>

Commenons le fichier sorties.html ainsi :


<html> <title>[#NOM_SITE_SPIP] Les sorties</title> </head> <body> <blockquote> <h2>Les prochaines sorties</h2> <BOUCLE_sorties(ARTICLES) {titre_mot=Date_sortie}{par date}{age < 0}> <p> #TITRE - [(#DATE|affdate)] </BOUCLE_sorties> </blockquote> </body> </html>
http://www.spip.net/fr_article1281.html (4 of 9)2006.04.17 19.38.10

[SPIP] Quelques sommaires alternatifs

Le #TITRE est celui de larticle contenant la date de sortie ; cest un titre bidon utilis par commodit dans lespace priv. Il faut donc le remplacer par le titre du jeu, cest--dire le titre de la rubrique qui contient cet article. Toujours le mme processus. Nous voulons de plus afficher le logo des machines concernes par cette sortie. L non plus rien de compliqu.
<BOUCLE_sorties(ARTICLES) {titre_mot=Date_sortie}{par date}{age < 0}> <p> <BOUCLE_rubrique_jeu(RUBRIQUES) {id_rubrique}> <b><a href="#URL_RUBRIQUE">#TITRE</a></b> </BOUCLE_rubrique_jeu> <BOUCLE_machines_jeu(MOTS) {id_article}> #LOGO_MOT </BOUCLE_machines_jeu>

Il y a ici un dfaut de navigation important : il y a systmatiquement un lien vers - [(#DATE|affdate)] la rubrique du jeu. Or, et surtout pour les jeux qui ne sont pas encore sortis, il est </BOUCLE_sorties> trs possible quil ny ait aucune information publie sur ce jeu, en dehors de sa date de sortie. On risque alors de pointer vers une rubrique qui ne prsente aucune information. Modifions donc encore ce code, pour afficher non plus un lien vers la rubrique elle-mme, mais vers chaque type darticles. Afin dobtenir une prsentation un peu plus condense, commenons par crer une interface sous forme de lignes et de colonnes (et au passage, nous supprimons le lien hypertexte fautif) :

http://www.spip.net/fr_article1281.html (5 of 9)2006.04.17 19.38.10

[SPIP] Quelques sommaires alternatifs

<B_sorties> <table cellpadding="4"> <BOUCLE_sorties(ARTICLES) {titre_mot=Date_sortie}{par date}{age < 0}> <tr> <BOUCLE_rubrique_jeu(RUBRIQUES) {id_rubrique}> <td><b>#TITRE</b></td> </BOUCLE_rubrique_jeu> <td align="center"> <BOUCLE_machines_jeu(MOTS) {id_article}> #LOGO_MOT </BOUCLE_machines_jeu> &nbsp; <//B_machines_jeu> </td> <td>[(#DATE|affdate)]</td> </tr> </BOUCLE_sorties> Ce code ne prsente pas de grosse difficult. Expliquons rapidement le </table> positionnement des balises du tableau. </B_sorties>

<table> et </table> sont placs en texte optionnel de la BOUCLE_sorties ; de cette faon, si la liste des jeux venir est vide, on vite dafficher un <table></table> peu lgant. Les <tr> et </tr> sont lintrieur de la BOUCLE_sorties, et englobent lintgralit de son contenu ; il sagit ici de crer les lignes du tableau. Dans la BOUCLE_rubrique_jeu, nous plaons les <td> et </td> directement dans la boucle, autour du #TITRE. Nous savons en effet que, larticle tant forcment dans une rubrique, il y aura forcment une (et une seule) rponse dans BOUCLE_rubrique_jeu (inutile de placer ces codes dans du texte optionnel ; et comme il ny aura quune seule rponse, on peut se placer lintrieur de la boucle). Cest diffrent pour la BOUCLE_machines_jeu : les <td align="center"> et </td> sont lextrieur de la boucle, et ne sont mme pas placs en code optionne. En effet : (1) ils sont lextrieur de la boucle, car il peut y avoir plusieurs machines concernes par cette date de sortie (cest--dire plusieurs mots-cls de machines associs larticle) ; si on avait plac ces balises lintrieur de la boucle, comme prcdemment, le tableau perdrait son alignement, puisquon crerait des cases supplmentaires chaque nouveau

http://www.spip.net/fr_article1281.html (6 of 9)2006.04.17 19.38.10

[SPIP] Quelques sommaires alternatifs

logo de mot-cl ; (2) ils ne sont pas placs dans du texte optionnel, car ce ne sont pas des balises optionnelles ; si on a oubli dindiquer une machine pour la date de sortie, il faut tout de mme crer cette case du tableau, certes vide, pour conserver lalignement. Enfin, nous avons plac un &nbsp; en texte optionnel alternatif : sil ny a pas de mot-cl de machine associ la date de sortie, on affiche cet espace inscable pour que la case ait un contenu (dans de nombreux butineurs, une case <td></td> nest pas affiche de la mme faon quune case <td>&nbsp;</td>. Nous allons maintenant afficher pour chaque jeu la liste des Tests qui concernent ce jeu (insrons cela juste avant le </tr> final de la ligne) :
<td> <B_tests_jeu> <b>Test :</b> <BOUCLE_tests_jeu(ARTICLES) {id_rubrique}{titre_mot=test}> <br><a href="#URL_ARTICLE">#TITRE</a> </BOUCLE_tests_jeu> &nbsp; <//B_tests_jeu> Cette</td> BOUCLE_tests_jeu utilise des mthodes dj expliques.

Cependant, cela ne nous convient pas encore : nous affichons ici tous les tests, pour toutes les machines, alors que notre date de sortie ne concerne pas forcment toutes les versions du jeu (on peut ici afficher la date de sortie de la versions Dreamcast, alors quon a dj publi des tests pour les versions Playstation, Dreamcast, Window...). On ne veut donc afficher que les tests qui concernent les versions concernes par cette date de sortie. Nous avons dj ralis un processus similaire dans la page article.html pour nafficher que les dates de sortie sur les mmes machines que larticle affich (BOUCLE_mac2). Cela donne :

http://www.spip.net/fr_article1281.html (7 of 9)2006.04.17 19.38.10

[SPIP] Quelques sommaires alternatifs

<td> <BOUCLE_mac2(MOTS){id_article} {type=Machines}> <BOUCLE_tests_jeu(ARTICLES) {id_rubrique}{titre_mot=test}> <BOUCLE_verifier_mot (ARTICLES){id_article}{id_mot}> <li><a href="#URL_ARTICLE">#TITRE</a> </BOUCLE_verifier_mot> </BOUCLE_tests_jeu> </BOUCLE_mac2> La BOUCLE_mac2 rcupre la liste des machines de la date de sortie. La &nbsp; BOUCLE_tests_jeu rcupre lensemble des tests de jeu de la rubrique (toutes </td> machines confondues). La BOUCLE_verifier_mot vrifie pour chaque test rcupr dans BOUCLE_tests_jeu quil est associ la machine rcupre par BOUCLE_mac2.

Nous avons pour linstant supprim laffichage de Tests : en texte conditionnel pour des raisons de lisibili. Voici maintenant le code, exactement sur le mme principe, qui permet dafficher cette indication (ainsi que le &nbsp;) :
<td> <B_mac2> <b>Tests :</b> <BOUCLE_mac2(MOTS) {id_article}{type=Machines} ><BOUCLE_tests_jeu(ARTICLES) {id_rubrique}{titre_mot=test} ><BOUCLE_verifier_mot(ARTICLES) {id_article}{id_mot}> <li><a href="#URL_ARTICLE">#TITRE</a> Notez bien : les BOUCLE_mac2, BOUCLE_tests_jeu et BOUCLE_verifier_mot </BOUCLE_verifier_mot></ sont colles , cest--dire quelles ne sont plus spares par des retours la BOUCLE_tests_jeu></BOUCLE_mac2> ligne &nbsp; des espaces. En effet, nous testons le contenu de la ni par BOUCLE_mac2 pour savoir si nous affichons lindication Tests : ou le &nbsp; <//B_mac2> </td> (les textes conditionnels). Si nous avions conserv les retours la ligne ou des

espaces blancs entre les boucles, quel que soit le rsultat de BOUCLE_tests_jeu et de BOUCLE_verifier_mot, la BOUCLE_mac2 aurait t considre comme ayant un contenu cause de laffichage de ces retours-chariot. Pour afficher une liste des previews, dupliquons simplement ce code, en modifiant le nom des boucles et en remplaant titre_mot=test par titre_mot=preview :

http://www.spip.net/fr_article1281.html (8 of 9)2006.04.17 19.38.10

[SPIP] Quelques sommaires alternatifs

<td> <B_mac3> <b>Previews :</b> <BOUCLE_mac3(MOTS){id_article} {type=Machines}><BOUCLE_preview_jeu (ARTICLES){id_rubrique}{titre_mot=preview} ><BOUCLE_verifier_mot3(ARTICLES) {id_article}{id_mot}> <li><a href="#URL_ARTICLE">#TITRE</a> Ajoutons </BOUCLE_verifier_mot3></ news concernant ce jeu. Ici nous ne nous enfin une boucle pour les BOUCLE_preview_jeu></BOUCLE_mac3> proccuperons pas des machines, puisque toutes les news sont affiches sur une &nbsp; unique page. Nous nafficherons donc pas de #TITRE, mais directement la <//B_mac3> mention Les news ; le lien hypertexte pointe vers la page spcifique que nous </td>

avons cre pour ce jeu. Notez enfin la restriction {0,1} qui permet de ne rcuprer quune seule news pour crer un unique lien.
<td>

<BOUCLE_news_jeu(ARTICLES) {id_rubrique}{titre_mot=news}{0,1}> <br><a href="news_jeu.php3? id_rubrique=#ID_RUBRIQUE">Les news</a> </BOUCLE_news_jeu> &nbsp; <//B_news_jeu> Pour </td> exhaustif, il resterait recommencer lopration avec les Soluces et les tre

Astuces. Mais puisquil sagit ici dafficher une liste de sorties, considrons que ces informations ne sont pas pertinentes ici. Mme si, techniquement, on peut les afficher facilement, faisons un choix ditorial : linformation nest pas intressante ici et surchargerait linterface, donc nous prfrons ne pas lindiquer. (Mais si cela vous amuse, vous pouvez vous entraner en les intgrant vous-mme.)

tlcharger le squelette de cette page

http://www.spip.net/fr_article1281.html (9 of 9)2006.04.17 19.38.10

[SPIP] Une premire version du sommaire

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Une premire version du sommaire


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface italiano

Nous commenons avoir une ide plus prcise de la navigation de notre site. Ralisons une premire version du sommaire.

http://www.spip.net/fr_article1286.html (1 of 6)2006.04.17 19.38.25

[SPIP] Une premire version du sommaire

des news Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

<html> <head> <title>[#NOM_SITE_SPIP] Sommaire</title> </head> <body> <center> <a href="sorties.php3">Les prochaines sorties</a> | <a href="notes.php3">Les meilleurs jeux du moment</a> </center> <BOUCLE_secteurs(RUBRIQUES) {id_parent=0}{par titre}> <p><b><a href="#URL_RUBRIQUE">#TITRE</a></b> <B_sous_rubriques> <ul> <BOUCLE_sous_rubriques (RUBRIQUES){id_parent}> <li><a href="#URL_RUBRIQUE">#TITRE</a> </BOUCLE_sous_rubriques> </ul> Avant de </B_sous_rubriques>qui permettront dafficher les nouveauts du site, nous placer les boucles

nous contentons de crer ( la main) les liens vers les deux sommaires alternatifs, </BOUCLE_secteurs> et dafficher la structure du site (uniquement les grandes rubriques et leurs sousrubriques). </body>
</html>

Installons la liste des cinq plus rcents tests publis sur le site. Pour chacun, nous afficherons (en plus du logo, du titre du test, et son descriptif) : une boucle (RUBRIQUES) pour rcuprer le titre du jeu ; une boucle (MOTS) avec pour type de mot note pour afficher la note ; une seconde boucle (MOTS) avec pour type machines pour afficher le logo des machines concernes. Rien que nous ne sachions dj faire.

http://www.spip.net/fr_article1286.html (2 of 6)2006.04.17 19.38.25

[SPIP] Une premire version du sommaire

<BOUCLE_tests(ARTICLES){titre_mot=test} {par date}{inverse}{0,5}> <p><div style="border:1px solid black"> [(#LOGO_ARTICLE_RUBRIQUE|left| #URL_ARTICLE)] <BOUCLE_rub_tests(RUBRIQUES) {id_rubrique}> <h3>#TITRE</h3> </BOUCLE_rub_tests> <h4>#TITRE</h4> <BOUCLE_note_tests(MOTS){id_article} {type=Note}> <b>NOTE : #TITRE/10</b><p> </BOUCLE_note_tests> <BOUCLE_mac_tests(MOTS){id_article} {type=Machines}> [(#LOGO_MOT|left)] </BOUCLE_mac_tests>

Ajoutons maintenant les cinq dernires previews, cinq soluces et cinq astuces. Les [(#DESCRIPTIF)] prsentations sont diffrentes chaque fois, mais le principe est rigoureusement <p align="right"><a similaire la boucle prcdente (dans des versions simplifies, puisque nous href="#URL_ARTICLE">Lire ce test...</a> </div> voulons afficher moins dinformations) :
</BOUCLE_tests>

http://www.spip.net/fr_article1286.html (3 of 6)2006.04.17 19.38.25

[SPIP] Une premire version du sommaire

<B_previews> <p><b>Previews :</b> <ul> <BOUCLE_previews(ARTICLES) {titre_mot=preview}{par date}{inverse}{0,5}> <BOUCLE_rub_previews(RUBRIQUES) {id_rubrique}> <li><b>#TITRE</b> / </BOUCLE_rub_previews> <a href="#URL_ARTICLE">#TITRE</a> <BOUCLE_mac_previews(MOTS) {id_article}{type=Machines}> [(#LOGO_MOT)] </BOUCLE_mac_previews> </BOUCLE_previews> </ul> </B_previews> <B_soluces> <p><b>Soluces :</b> <ul> <BOUCLE_soluces(ARTICLES) {titre_mot=soluce}{par date}{inverse}{0,5}> <BOUCLE_rub_soluces(RUBRIQUES) {id_rubrique}> <li><b><a href="#URL_ARTICLE">#TITRE</a></b> </BOUCLE_rub_soluces> <BOUCLE_mac_soluces(MOTS) {id_article}{type=Machines}> (#TITRE) </BOUCLE_mac_soluces> </BOUCLE_soluces> </ul> </B_soluces>

<B_astuces> <p><b>Astuces :</b> <ul> <BOUCLE_astuces(ARTICLES) {titre_mot=astuces}{par date}{inverse}{0,5}> <BOUCLE_rub_astuces(RUBRIQUES) {id_rubrique}> Enfin, la liste des news. Toujours le mme principe ; cette fois, le lien hypertexte <li><b><a href="#URL_ARTICLE">#TITRE</a></b> </BOUCLE_rub_astuces>

http://www.spip.net/fr_article1286.html (4 of 6)2006.04.17 19.38.25

[SPIP] Une premire version du sommaire

pointe vers la page commune aux news dun jeu. Le lien se fait sur le titre du jeu (cest--dire le titre de la rubrique), et nous affichons le titre de la news.
<B_news> <p><b>News :</b> <ul> <BOUCLE_news(ARTICLES) {titre_mot=news}{par date}{inverse}{0,5}> <BOUCLE_rub_news(RUBRIQUES) {id_rubrique}> <li><b><a href="news_jeu.php3? id_rubrique=#ID_RUBRIQUE">#TITRE</a>: </b> </BOUCLE_rub_news> #TITRE

Il nous reste dsormais indiquer la structure thmatique du site (par grand </BOUCLE_news> </ul> genre de jeux : Action/aventure, Plateforme, Sport...). L encore rien de bien </B_news> compliqu :
<BOUCLE_secteurs(RUBRIQUES) {id_parent=0}{par titre}> <p><b><a href="#URL_RUBRIQUE">#TITRE</a></b> <B_sous_rubriques> <ul> <BOUCLE_sous_rubriques (RUBRIQUES){id_parent}> <BOUCLE_art_sous (ARTICLES){id_rubrique}> </BOUCLE_art_sous> <li><a href="#URL_RUBRIQUE">#TITRE</a> <//B_art_sous> </BOUCLE_sous_rubriques> Notons tout de mme cette subtilit : dans les sous-rubriques, la </ul> </B_sous_rubriques> BOUCLE_art_sous vrifie la prsence darticles (cette boucle naffiche rien).

Laffichage du titre et du lien et du titre de la sous-rubrique nest effectif que sil </BOUCLE_secteurs> ny pas de rubrique dans la sous-rubrique, puisque cet affichage est plac dans le texte optionnel alternatif. En effet, il ne faudrait pas afficher les rubriques de jeu placs directement dans une rubrique. Notre sommaire est complet. Pas termin pour autant (dans les articles suivants, nous tendrons encore ses possibilits), mais complet : la structure thmatique du site par grande rubriques de type de jeux est prsente ;
http://www.spip.net/fr_article1286.html (5 of 6)2006.04.17 19.38.25

[SPIP] Une premire version du sommaire

les tests rcents (dont nous considrons - et cest un choix ditorial - quils constituent llment le plus important du site) sont affichs de manire trs visible ; nous exploitons lindication des machines ; nous exploitons les types darticles (les news, previews, tests, soluces, astuces sont prsents sparment) ; la note des jeux est exploite, ainsi que les dates des sorties... Tout cela, notez bien, sans utiliser la moindre ligne de code PHP, et sans modifier la structure de la base de donnes. Nous navons mme pas dtourn certaines indications des articles pour y arriver (on aurait pu par exemple dcider que le surtitre des articles serait utilis pour indiquer la machine, et le soustitre pour indiquer la note ; nous aurions ainsi pu afficher ces informations).

tlcharger le squelette de cette page

http://www.spip.net/fr_article1286.html (6 of 6)2006.04.17 19.38.25

[SPIP] Un sommaire pour chaque machine

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Un sommaire pour chaque machine


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface catal italiano

Les amateurs de jeux vido possdent gnralement une seule machine (deux pour les accros, trois pour les collectionneurs...). Une page de sommaire gnral, si elle se justifie larrive sur le site (le visiteur indique lURL du site, on ne sait donc pas priori ce quil utilise comme machine), contient trop dinformations superflues pour le propritaire dune seule machine : le possesseur dune Playstation 2 nest pas concern par le dernier jeu sorti sur Dreamcast. Donc, il faut pouvoir prsenter un sommaire diffrent pour chaque machine. Un sommaire qui naffiche que les jeux de cette machine. Nous allons donc crer un squelette dont le contenu change en fonction de la machine. Nous nommerons ces fichiers : sommaire_machine.php3 et sommaire_machine.html . La machine tant indique, dans notre structure, par un mot-cl, ces pages dpendront donc dun id_mot . Chaque machine diffrente sera donc appele par une URL du type : sommaire_machine.php3 ?id_mot=23 (23 tant le numro du mot-cl de la machine). Revenons notre sommaire gnral : nous allons y inclure les liens vers ces sommaires spcialiss ; la cration automatique de ces liens (avec les id_mot correspondants) nous vitera de devoir effectuer les tests en cherchant les numros (id_mot) de chaque machine. Dans sommaire.html , insrons la

http://www.spip.net/fr_article1287.html (1 of 8)2006.04.17 19.38.43

[SPIP] Un sommaire pour chaque machine

des news Et encore dautres moyens de se compliquer la vie ! Quelques sommaires alternatifs Une premire version du sommaire Un sommaire pour chaque machine Rfrencer des articles sur le Web Un forum pour chaque jeu Le site complet

boucle suivante :
<table cellpadding=5><tr> <BOUCLE_somm_mac(MOTS) {type=Machines}{par titre}> <td><a href="sommaire_machine.php3? id_mot=#ID_MOT">#LOGO_MOT</a></td> </BOUCLE_somm_mac> </tr></table>

Attention : si lon a ralis des logos avec survol, le lien ne fonctionnera pas correctement, car SPIP ajoutera une commande javascript. Le code ci-dessus ne fonctionne qu la condition que le logo de chaque mot ne soit constitu que dun unique fichier (pas dimage de survol). Le moyen le plus simple et le plus efficace dviter un tel dsagrment consiste ne pas utiliser directement #LOGO_MOT, qui construit lintgralit de la balise HTML de limage, ventuellement avec un petit code javascript pour grer le survol, mais la place lappel dune image dont le fichier est : [(#LOGO_MOT| fichier)] (ce qui retourne uniquement le nom du fichier de limage). La boucle devient :
<table cellpadding=5><tr> <BOUCLE_somm_mac(MOTS) {type=Machines}{par titre}> <td><a href="sommaire_machine.php3? id_mot=#ID_MOT"><img src='IMG/ [(#LOGO_MOT|fichier)]' border=0></a> </td> </BOUCLE_somm_mac> </tr></table>

Le fichier sommaire_machine.php3

Comme toujours :
<?php $fond = "sommaire_machine"; $delais = 24 * 3600; include ("inc-public.php3"); ?>

Le squelette du sommaire par machine

http://www.spip.net/fr_article1287.html (2 of 8)2006.04.17 19.38.43

[SPIP] Un sommaire pour chaque machine

Inutile de nous compliquer la vie : dupliquons le fichier sommaire.html , et renommons-le sommaire_machine.html . Puisque cette page dpend dun id_mot , nous commenons par ajouter une BOUCLE_principale qui va contenir lintgralit des autres boucles. Il suffit donc dajouter lappel de cette boucle juste aprs <body> et de la refermer juste avant </body> (tout en fin de fichier) :
<body> <BOUCLE_principale(MOTS){id_mot}> ... </BOUCLE_principale> </body>

Le titre de la page, qui jusqu prsent ne contenait que : <h1>#NOM_SITE_SPIP</h1, est modifi pour afficher le nom et le logo de la machine (cest--dire du mot-cl correspondant id_mot ) :
<h1>#NOM_SITE_SPIP / #LOGO_MOT #TITRE</h1>

La BOUCLE_somm_mac, qui affiche tous les logos des machines pour crer les liens vers les sommaires spcifiques, ne doit plus contenir le logo de la machine principale (nous sommes dj sur cette page, inutile donc de crer un lien vers elle-mme). Il suffit dinsrer le critre {exclus} dans la dfinition de cette boucle :
<BOUCLE_somm_mac(MOTS) {type=Machines}{exclus}{par titre}> ... </BOUCLE_somm_mac>

La BOUCLE_tests, qui affiche les derniers tests publis, ne doit dsormais afficher que les tests qui concernent des jeux sur la machine slectionne. Pour cela, nous allons ajouter lintrieur de cette boucle une BOUCLE_verif_test, qui va vrifier pour chaque article quil concerne bien la machine choisie. Inconvnient dsormais : la BOUCLE_tests affichait les cinq derniers tests. Dsormais, sur ces cinq articles, nous ne slectionnons que ceux qui concernent notre machine. Il est fort probable que cela donne moins de cinq articles, et dans certains cas extrmes, cela naffichera plus aucun article. Modifions le critre, et dcidons dafficher non pas les cinq derniers tests ({0,5}), mais tous les tests publis depuis moins de trois mois ({age<90}) ; on pourra modifier cette valeur
http://www.spip.net/fr_article1287.html (3 of 8)2006.04.17 19.38.43

[SPIP] Un sommaire pour chaque machine

en fonction de lactivit relle du site (si le site est trs actif, on rduira le dlai de cette boucle, si le site publie peu darticles, on pourra le rallonger). Au passage, supprimons la petite boucle qui affichait le logo des machines concernes : cela devient inutile, puisque cette page naffiche que les informations dune unique machine. La boucle devient :
<BOUCLE_tests(ARTICLES){titre_mot=test} {par date}{inverse}{age < 90}> <BOUCLE_verif_test(ARTICLES){id_article} {id_mot}> <p><div style="border:1px solid black"> [(#LOGO_ARTICLE_RUBRIQUE|left| #URL_ARTICLE)] <BOUCLE_rub_tests(RUBRIQUES) {id_rubrique}> <h3>#TITRE</h3> </BOUCLE_rub_tests> <h4>#TITRE</h4> <BOUCLE_note_tests(MOTS){id_article} {type=Note}> <b>NOTE : #TITRE/10</b><p> </BOUCLE_note_tests> [(#DESCRIPTIF)] Le principe est identique pour les previews, soluces, astuces, news : on ajoute une <p align="right"><a boucle de vrification, et on supprime la boucle qui affiche la liste des machines href="#URL_ARTICLE">Lire ce test...</a> concernes : </div> </BOUCLE_verif_test> </BOUCLE_tests>

http://www.spip.net/fr_article1287.html (4 of 8)2006.04.17 19.38.43

[SPIP] Un sommaire pour chaque machine

<B_previews> <p><b>Previews :</b> <ul> <BOUCLE_previews(ARTICLES) {titre_mot=preview}{par date}{inverse}{age < 90}><BOUCLE_verif_previews(ARTICLES) {id_article}{id_mot}> <BOUCLE_rub_previews(RUBRIQUES) {id_rubrique}> <li><b>#TITRE</b> / </BOUCLE_rub_previews> <a href="#URL_ARTICLE">#TITRE</a> </BOUCLE_verif_previews></ BOUCLE_previews> </ul> </B_previews> <B_soluces> <p><b>Soluces :</b> <ul> <BOUCLE_soluces(ARTICLES) {titre_mot=soluce}{par date}{inverse}{age < 90}><BOUCLE_verif_soluces(ARTICLES) {id_article}{id_mot}> <BOUCLE_rub_soluces(RUBRIQUES) {id_rubrique}> <li><b><a href="#URL_ARTICLE">#TITRE</a></b> </BOUCLE_rub_soluces> </BOUCLE_verif_soluces></ BOUCLE_soluces> </ul> </B_soluces> <B_astuces> <p><b>Astuces :</b> <ul> <BOUCLE_astuces(ARTICLES) {titre_mot=astuces}{par date}{inverse}{0,5} ><BOUCLE_verif_astuces(ARTICLES) {id_article}{id_mot}> <BOUCLE_rub_astuces(RUBRIQUES) {id_rubrique}> <li><b><a Important. Vous noterez ci-dessus que la boucle de vrification est colle href="#URL_ARTICLE">#TITRE</a></b> </BOUCLE_rub_astuces> la premire boucle (par exemple, entre <BOUCLE_previews(ARTICLE)...> et </BOUCLE_verif_astuces></ <BOUCLE_verif_previews(ARTICLE)...>, il ny a ni espace ni retour la BOUCLE_astuces> ligne). En effet, le texte conditionnel avant de la premire boucle (ici, la mention </ul> Previews ) est activ si la boucle contient au moins un caractre. Sil y a un </B_astuces>

espace ou un retour chariot avant lappel de la boucle de vrification, alors mme <B_news> si la boucle naffiche aucun article (car, depuis trois mois, on na publi aucun
http://www.spip.net/fr_article1287.html (5 of 8)2006.04.17 19.38.43

<p><b>News :</b> <ul> <BOUCLE_news(ARTICLES)

[SPIP] Un sommaire pour chaque machine

article de ce type pour cette machine), cet espace parasite activerait laffichage du code conditionnel. Voyons maintenant laffichage des prochaines sorties. On peut dcider de crer une nouvelle page des sorties, concernant uniquement la machine slectionne, mais nous prfrerons ici afficher directement ces sorties sur notre sommaire spcifique (les sorties ntant pas si nombreuses par machines). En appliquant les mmes mthodes que prcdemment, on remplace le lien Les prochains sorties par :
<B_sorties> <b>Les sorties #TITRE du prochain mois:</ b> <ul> <BOUCLE_sorties(ARTICLES) {titre_mot=Date_sortie}{par date}{age < 0} ><BOUCLE_sorties_verif(ARTICLES) {id_article}{id_mot}> <li>[(#DATE|affdate)]: <BOUCLE_rub_sorties(RUBRIQUES) {id_rubrique}> #TITRE </BOUCLE_rub_sorties>

Sur le mme principe, affichons la liste des jeux prfrs pour cette machine </BOUCLE_sorties_verif></ depuis six mois :
BOUCLE_sorties> </ul> </B_sorties> <B_notes> <b>Nos jeux prfrs depuis 6 mois:</b> <ul> <BOUCLE_notes(ARTICLES) {type_mot=note}{par titre_mot}{inverse} {age<180}><BOUCLE_notes_verif (ARTICLES){id_article}{id_mot}> <BOUCLE_rub_notes(RUBRIQUES) {id_rubrique}> <li> #TITRE </BOUCLE_rub_notes> <BOUCLE_lanote(MOTS){id_article} {type=note}> (#TITRE/10) </BOUCLE_lanote>

La seule subtilit pour linstant est le classement des articles associs aux mots</BOUCLE_notes_verif></BOUCLE_notes> cls de type note selon le critre {par titre_mot}{inverse} (fonction </ul> apparue dans le version 1.3 de SPIP). En effet, les mots de type note sont de la </B_notes> forme 01 , 02 ..., 10 ; on peut donc demander les classer de 10 1. Cependant, cette prsentation ne nous convient pas encore : nous prtendons
http://www.spip.net/fr_article1287.html (6 of 8)2006.04.17 19.38.43

[SPIP] Un sommaire pour chaque machine

afficher nos jeux prfrs , alors quil sagit seulement dun classement par note. Si un jeu est sorti depuis moins de six mois et sest ramass une note catastrophique, il sera dans les jeux prfrs (en bas de liste, mais prsent tout de mme) ! Nous devons donc trouver un moyen dafficher uniquement les jeux ayant eu une note suprieure 07 (choix arbitraire). Si vous pensez utiliser pour cela la BOUCLE_notes, en y ajoutant simplement la mention {titre_mot>07}, cela ne fonctionnera pas : SPIP naccepte quun seul critre bas sur les mots-cls dans les boucles autres que les boucles de type (MOTS). Nous allons utiliser la BOUCLE_lanote (qui affiche la note), et lui demander de ne slectionner que les notes suprieures 7 (puisquil sagit ici dune boucle de type (MOTS), on peut lui fournir plusieurs contraites sur les mots-cls). La BOUCLE_rub_notes, qui affiche le titre du jeu, est alors plac en texte optionnel aprs de la BOUCLE_lanote : si la note est suprieure 7, la BOUCLE_rub_notes est effectue ; sinon rien nest affich. Attention : il est toujours dlicat de placer une boucle dans le texte optionnel dune autre boucle (SPIP peut se mlanger facilement les pinceaux). Pour une raison trange, cela est possible dans le texte optionnel aprs, mais pas dans le texte optionnel avant. Sachant que nous ne rcuprerons que les articles nots 08 , 09 , 10 , classs du meilleur au moins bon, nous considrons dsormais inutile de rappeler la note elle-mme. La BOUCLE_lanote est donc vide, elle ne sert plus qu activer ou dsactiver la BOUCLE_rub_notes. Enfin, puisque la BOUCLE_lanote devient un nouveau filtre appliqu la slection darticles, il faut supprimer les blancs et les retours chariot autour de cette boucle, de faon ne rellement activer lexpression Nos jeux prfrs que si au moins un article est vraiment affich. Cela nous donne :

http://www.spip.net/fr_article1287.html (7 of 8)2006.04.17 19.38.43

[SPIP] Un sommaire pour chaque machine

<B_notes> <b>Nos jeux prfrs depuis 6 mois:</b> <ul> <BOUCLE_notes(ARTICLES) {type_mot=note}{par titre_mot}{inverse} {age<180}><BOUCLE_notes_verif (ARTICLES){id_article}{id_mot} ><BOUCLE_lanote(MOTS){id_article} {titre>07}{type=note}> </BOUCLE_lanote> <BOUCLE_rub_notes(RUBRIQUES) {id_rubrique}> Tout <li> <a cela peut sembler un peu indigeste, mais le tout est que cela fonctionne, et href="#URL_RUBRIQUE">#TITRE</a>PHP ! toujours sans la moindre fonction </BOUCLE_rub_notes> </B_lanote></BOUCLE_notes_verif></ Maintenant que nos pages de sommaires spcifiques sont presque termines, BOUCLE_notes> </ul> nous constatons, en passant de lune lautre, que certaines pages sont vides. En </B_notes> effet, nous naffichons ici que des informations de moins de trois mois (pour les

tests, les news...). Si une machine na t concerne par aucun article depuis trois mois, ou mme si une machine na encore aucun article du tout (mme si cela est prvu par un mot-cl, il est trs possible que personne sur votre site nait encore crit au sujet des jeux Linux). Il faut donc modifier la BOUCLE_somm_mac (celle qui affiche les logos des diffrentes machines) pour que seules les machines ayant rellement des articles publis depuis trois mois soient affichs. Il suffit pour cela dajouter une boucle vrifiant la prsence darticle dats de moins de trois mois associs ce mot-cl. Ce qui nous donne :
<BOUCLE_somm_mac(MOTS) {type=Machines}{exclus}{par titre}> <BOUCLE_verif_somm(ARTICLES){id_mot} {0,1}{age < 90}> <td> <a href="sommaire_machine.php3? id_mot=#ID_MOT"><img src='IMG/ [(#LOGO_MOT|fichier)]' border=0></a> </td> On pensera effectuer le mme remplacement dans la page sommaire.html </BOUCLE_verif_somm> du sommaire gnral (penser supprimer le critre {exclus} dans ce cas). </BOUCLE_somm_mac>

tlcharger le squelette de cette page

http://www.spip.net/fr_article1287.html (8 of 8)2006.04.17 19.38.43

[SPIP] Rfrencer des articles sur le Web

SPIP, systme de publication pour linternet Documentation en franais Guide du webmestre et du bidouilleur Tutorial : utilisation avance des boucles et des mots-cls

Rfrencer des articles sur le Web


franais Introduction Le but du jeu : un site consacr aux jeux vido La structure du site Mise en place de la structure crire des articles Premire version du squelette des articles La page des rubriques Les motscls dans les articles Les motscls dans les rubriques Linterface italiano

Monter son site consacr aux jeux vido, cest bien ; mais dautres y ont pens avant vous, et une tripote de sites existe dj. Pour enrichir encore linformation prsente sur notre site, nous allons donc indiquer des articles consacrs aux jeux que nous prsentons. Cela se fait, dans lespace priv, par