SPIP co-existe avec un site existant

L’une des force de SPIP est de pouvoir sur un meme hébergement, co-exister avec d’autres gestionnaires de sites, ou surtout des sites statiques déjà existants, que l’on peut intégrer immédiatement en co-existence...

Reprendre la présentation actuelle pour de nouveaux articles n’est pas plus difficile, sans meme connaitre HTML et CSS, si vous prenez un simple editeur textuel, utilisé avec un peu de minutie [1]

Article publié le 13 janvier 2012, et actualisé en février 2019

 
 
 
 

Cette souplesse permet d’envisager une migration progressive, pour intégrer des pages dynamiques -c’est à dire avec un contenu modifiable souplement- dans un site avec une présentation homogène aux pages déjà existantes...

Il vous faudra bien sûr respecter les Pre-requis Techniques, à savoir un php 5 et une base de données accessible depuis votre serveur, le plus souvent sur le même hébergement : ce ne devrait pas être difficile de trouver votre bonheur, car SPIP travaille nativement avec MySQL, SQLite, Postgres et d’autres...

En cas de besoin -des noms de tables de SPIP déjà présentes- voyez l’usage de prefix pour contourner les conflits de noms de tables SQL !

La lecture d’un site Web est toujours lancée par la recherche (automatisée dans les navigateurs) d’un fichier HTML (ou PHP) nommé index. ou default : ce fichier de démarrage est le seul point à surveiller.

 Ajouter SPIP dans votre hébergement

L’ajout de SPIP à un site existant se fait très simplement, et surtout, sans modifications aucunes : tout au plus, si on veut garder la page d’accueil originale, peut-on avoir à conserver votre fichier index.php [2] actuel, créé à la racine du site, pour utiliser seulement le script spip.php.

Pour cela, après avoir procédé à une sauvegarde complète de votre site, vous pouvez déposer le dossier complet de votre nouvelle version SPIP dans un sous-répertoire de l’hébergement du site, ou bien directement dans le répertoire racine, avec toutefois une précaution préalable dans ce dernier cas : en effet, le fonctionnement par défaut des serveurs Web (Apache et autres) utilise un premier script principal à la racine, en général nommé index.php qui assure l’initiation du processus, et SPIP ne fait pas exception.

Donc, pensez à sauvegarder spécialement un éventuel fichier index.php existant, car le chargement de SPIP l’y écraserait par un tout petit fichier de 46 octets... et à restaurer votre version d’origine après installation...
Ensuite, il vous suffira de lancer le script spip.php pour consulter votre SPIP ; l’étape suivante sera d’intégrer la navigation d’accès à SPIP à votre existant...

 Intégrer SPIP à votre site

Ensuite, vous voudrez sans doute intégrer votre page d’accueil à SPIP pour profiter de la souplesse introduite par ce CMS dynamique !
Créez un répertoire ./squelettes sous la racine, et copiez-y votre page d’index actuelle, sans doute nommée index.html ou default.php, renommée en sommaire.html, et recréez le fichier index.php initial [3] de SPIP. Et c’est fait !
Votre site est désormais accessible sous SPIP et vous pouvez profiter de la puissance des boucles SPIP !

- Vous voulez afficher une page actuelle [4] de votre site sous SPIP pour voir ?
Tapez comme URL : /spip.php?page=ma-page-que-je-veux (sans mettre le suffixe .html) : Spip vous la fournit nativement, sans modifications [5].

- Vous voulez insérer un lien d’appel à la SPIP à vos pages existantes dans cette page d’accueil : vous savez déjà que le lien est donné dans le paramètre de la balise <a href="https://www.monsite-à.moi/page-à-lier.html    " title=..., alors contentez-vous de mettre le lien contenu dans une balise #URL_PAGE{ comme ci-dessous :
<a href="#URL{page-à-lier}" title=...>

Les deux cas particuliers pouvant nécessiter un peu de travail seront :
- la présence d’un fichier index.php ou index.html à la racine,
- l’utilisation préalable d’un fichier statique sommaire.html

 Utiliser des Articles Virtuels

Vous pouvez très facilement intégrer la publication de pages fixes existantes (locales ou distantes) dans votre site SPIP, et profiter de l’ensemble des boucles de publications de vos squelettes, en créant réellement.... un pointeur de redirection vers l’article virtuellement intégré à votre site SPIP.

Attention une option de configuration est nécessaire pour autoriser cette astuce... un simple bouton-radio à valider dans l’ecran de configuration : Contenu / Articles !

L’article-cible à intégré étant connu par son URL complète, vous allez commencer la création d’un article comme d’habitude, en vous positionnant dans la bonne rubrique, avec la bonne date de publication et les mots-clés qui correspondent à l’accès a son contenu ; toutefois, le contenu lui-même sera affiché commé étant la page d’URL que vous indiquerez :
- en SPIP 2, précédé d’un signe = dans le champ "Chapeau" #CHAPO.

N.B. : Pour obtenir une liste des articles virtuels :
- en SPIP 2
<BOUCLE_virt(ARTICLES) {chapo == ^=} {par date} {inverse}>
- en SPIP 3
<BOUCLE_virt(ARTICLES) {virtuel != ''} {par date} {inverse}>

 Etendre la gestion de pages SPIP

L’étape suivante sera de garder la même présentation déjà utilisée pour vos pages, pour toute nouvelle page de contenu : là aussi, rien de plus simple, une fois que vous avez compris la notion de squelette de Spip.

Après avoir créé un minimum de contenu (Créer une rubrique et Créer un article (histoire d’avoir quelque chose a afficher, vous copiez une page-type comme squelette de base article.html dans le répertoire ./squelettes : le lien d’affichage sera l’URL spip.php?page= ; maintenant, pour utiliser le design statique d’un article existant [6] c’est pas très difficile en fait : le "design" de SPIP repose sur les squelettes, qui sont des fichiers natifs en HTML !

Il suffit alors, sur ce fichier de squelette :

  1. de replacer chaque fichier type dans le dossier squelettes (à créer), avec un nom de squelette de base :
    sommaire.html, rubrique.html article.html....
  2. de remplacer les textes propres à UN article ou Rubrique, par les balises correspondantes (#TITRE, #TEXTE...)
  3. d’encadrer la page type par la boucle correspondante (exemple)
    <BOUCLE_article(ARTICLES){id_article}>
    ....... <h2>#TITRE </h2>
    _ <code> #TEXTE


    </BOUCLE_article>
    et c’est fait !

La dernière étape sera d’intégrer les liens : ce qui sera l’objet d’une autre explication, principalement basée sur les balises #URL_PAGE et #URL_ARTICLE...
_ à suivre..


En complément, vous pourriez aussi vouloir utiliser un plugin (ancien) pour intégrer le contenu des pages statiques déjà rédigées, dans votre SPIP en-cours de rédaction : voir Migre-static..


Merci de nous signaler les coquilles, imprécisions ou erreurs qui figureraient dans cette page.

[1Et ne craignez rien : au contraire d’autres CMS, vous ne risquez jamais de casser le moteur, au pire vos pages s’afficheront de façon incomplète...

[2Attention, car si votre précédent système utilisait ce nom de fichier index.php, faites-en une sauvegarde pour pouvoir le remettre en place après avoir installé SPIP !

[3Vous pouvez aussi utiliser une lame du Couteau Suisse / Administration / Format des URLs / Script d’appel pour spécifier directement le spip.php, ou autre..

[4Page accessible avec une URL terminée par .html

[5Pour que cela fonctionne, il faut que vos pages statiques soient déplacées dans votre dossier ./squelettes. .

[6C’est pareil si vous l’avez créé sous DreamWeaver !

[7Et ne craignez rien : au contraire d’autres CMS, vous ne risquez jamais de casser le moteur, au pire vos pages s’afficheront de façon incomplète...


Liens A2A visibles seulement pour les inscrits.
Liens visibles seulement pour les inscrits.

Article publié le 13 janvier 2012, et actualisé en février 2019 .

Répondre à cet article