Carnet Wiki

QuestionsDebutantCP_11

Version 5 — March 2012 YannX

<blockquote class="spip">

Dans une première série de notes, nous passions en revue les notions initiales de Spip.

Quelques jours ont passé : après la création d’une page spécifique (.../spip.php?page=mapage),
l’objectif est désormais de comprendre ce que l’on fait !

</blockquote>

La première question que se pose tout développeur informatique, c’est simplement :

Où se trouve le code-source de mon site ?

Eh bien, il n’est pas facile de répondre, sauf à dire une banalité : “sur le serveur Web !”.

  1. d’abord, comme tout programme, les sources ne sont pas dans un seul fichier !
    Comme les autres langages, PHP [1] permet de gérer des bibliothèques et des routines en sous-programmes. Mai au contraire d’un programme client-serveur exécutable traditionnel monobloc, un site Web est composé d’un certain nombre de “pages”, correspondant à des “requetes” au serveur, plus précisément à des appels de fichiers PHP (en source) autonomes [2]
  2. pour le traitement des requetes a notre site SPIP, quelque soit l’URL demandée, tout repasse par un noyau redirecteur d’interpretation, le fameux spip.php, le seul fichier .php présent à la racine de votre site ; n’essayez pas tout de suite de le descendre, c’est —disons simplement- imb.... Laissons plutot opérer la magie de SPIP, car
  3. chaque page de demande correspond à l’interprétation exécutant un squelette .html
    HTML ? c’est juste un fichier en mode texte [3] avec un langage balisé, comprendre qui embarque des précisions de présentation et mise en page, écrites dans des balises HTML : tout ce qui est entre < et > doit etre intreprété comme langage HTML et non affiché par le navigateur...
  4. donc, chaque “page” que vous mettez au point est donc simplement l’interprétation d’un squelette HTML que SPIP va chercher dans le dossier ./squelettes.
    Bon, on va élucider tout de suite les deux grosses questions que posera tout observateur avisé :
  • chaque squelette est rempli avec des données de vos articles et rubriques, donc il est interprété pour montrer toutes les pages de ce meme type
  • en fait, SPIP n’utilise pas souvent un seul fichier squelette, mais va automatiquement chercher des sous-ensembles, justement nommées noisettes que le squelette principal va #INCLURE, en les récupérant en plein d’endroits [4], selon les plugins que vous avez activés...
  • en complément de la connaissance HTML et CSS minimum, il reste un point spécifique [5] à prendre en compte : la structure de présentation des données dans les pages de squelettes !
    Contrairement à d’autres outils plus... mélangés à PHP [6], SPIP demande seulement d’ajouter les modifications suivante à votre page HTML :
    • des balises <BOUCLE_xxx(TABLES) .. pour pouvoir parcourir les articles en Tables
    • des balises #CHAMP et [(#REM) .. ] pour spécifier les valeurs affichées
  • il est donc temps de reprendre les bases du “langage SPIP”, décrites dans la documentation officielle du Webmestre qui permettent plus facilement de modifier tant l’apparence de vos pages (comme les thèmes ou les CSS), ou leur présentation (c’est-à-dire les boucles d’extraction de données de la base...), sans danger pour l’ensemble du site !

Bonne lecture, et à une prochaine... QuestionsDebutantCP_12