SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

288 Plugins, 197 contribs sur SPIP-Zone, 154 visiteurs en ce moment

Accueil > Squelettes > Tutoriels pour squelettes > Un squelette par secteur (gestion par dossier)

Un squelette par secteur (gestion par dossier)

8 décembre 2013 – par CloudGirofle

10 votes

Ceci est une « contribution pédagogique », qui montre par l’exemple comment développer une nouvelle fonctionnalité pour SPIP.

Il existe plusieurs méthodes permettant de squelettiser chaque secteur, vous les trouverez facilement sur le web.

Avant de se lancer sur cette démarche de gestion arborescente, il est nécéssaire de connaître quelques fondamentaux alternatifs à cette méthode :

Le besoin ?

Considérons un portail web, permettant l’accès à plusieurs vitrines.
Le portail sera représenté par la page sommaire.html et chaque vitrine, correspondra à un secteur du site spip.

Difficultés à prendre en compte

Une personnalisation poussée des secteurs peut rapidement provoquer une amoncellement de fichiers « en vrac ». Chaque modification pouvant malencontreusement avoir des incidences/régressions non prévues sur une autre vitrine/secteur.

Afin de pallier à cette problématique, la séparation complète des ressources peut être la solution.

Dans la méthode proposée ci-dessous, nous partons du principe que nous séparons totalement les environnements en isolant les ressources css, img, js, includes... par secteurs.

Organisation

Considérons nos vitrines :

  • Un site commercial = id_secteur 1
  • Un site de support = id_secteur 2
  • Un blog = id_secteur 3

Arborescence :

  1. A la racine de notre répertoire squelettes vide nous créons les répertoires :
  • siteCommercial
  • siteSupport
  • siteBlog
  1. A la racine du répertoire squelettes, vous y déposerez vos fichier HTML vides (sommaire, article, rubrique...).
  2. Dans chacun de ces répertoires, vous y déposerez vos squelettes dédiés à chaque vitrine, avec vos fichiers (html, css ,js ,img) spécifiques au squelette du secteur.

Nous obtenons donc ceci :

./squelettes/siteCommercial/sommaire.html
./squelettes/siteCommercial/article.html
./squelettes/siteCommercial/rubrique.html
./squelettes/siteCommercial/css/...
./squelettes/siteCommercial/js/...
./squelettes/siteCommercial/img/...

./squelettes/siteSupport/sommaire.html
./squelettes/siteSupport/article.html
./squelettes/siteSupport/rubrique.html
./squelettes/siteSupport/css/...
./squelettes/siteSupport/js/...
./squelettes/siteSupport/img/...

./squelettes/siteBlog/sommaire.html
./squelettes/siteBlog/article.html
./squelettes/siteBlog/rubrique.html
./squelettes/siteBlog/css/...
./squelettes/siteBlog/js/...
./squelettes/siteBlog/img/...

Comment faire nos appels vers les bons fichiers de squelettes ?

Le principe est très simple.
Pour accéder à chacune des vitrines, il suffira que sur le sommaire.html principale, vous fassiez des liens vers les sommaire.html des vitrines (sous-dossiers/sommaire.html).

Ensuite, considérons l’affichage d’un article sur l’une de nos vitrines. Cet article appartient forcément à un secteur unique. Nous allons donc tester son appartenance à un secteur et lui faire afficher le squelette article.html du sous-dossiers concerné.

Code HTML de ./squelettes/article.html

<BOUCLE_article(ARTICLES){id_article}>
[(#ID_SECTEUR|=={1}|oui)<INCLURE{fond=siteCommercial/article,id_article,env}/>]
[(#ID_SECTEUR|=={2}|oui)<INCLURE{fond=siteSupport/article,id_article,env}/>]
[(#ID_SECTEUR|=={3}|oui)<INCLURE{fond=siteBlog/article,id_article,env}/>]
</BOUCLE_article>

Bilan

Cet article ne se veut pas exhaustif, mais il a pour but de présenter une méthode simple et facile à gérer.

Dernière modification de cette page le 9 décembre 2013

Retour en haut de la page

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • ScolaSPIP 4

    19 janvier 2016 – 212 commentaires

    ScolaSPIP est plugin-squelette responsive personnalisable pour sites Web d’établissements scolaires basé sur SPIPr Présentation de ScolaSPIP Ce plugin pour SPIP 3 est développé par la Dane de l’académie de Versailles pour les webmestres de cette (...)

  • Refonte de l’identité graphique

    10 juillet – 33 commentaires

    Lors de la SPIP Party 2017 à Toulouse, un nouveau contributeur est venu nous présenter son travail sur une refonte du logo. Au delà de la refonte du logo, c’est une toute nouvelle identité graphique pour SPIP que Jordan nous propose. Voici une (...)

  • Agenda Fullcalendar facile

    29 octobre 2016 – 34 commentaires

    Dans un précédent article, nous expliquions comment afficher un agenda Fullcalendar sur son site avec le plugin agenda. Cependant, ceci nécessite des manipulation de squelettes, ce qui n’est pas toujours évident lorsqu’on débute. La présente (...)

  • La Fabrique

    20 avril 2012 – 315 commentaires

    La Fabrique est un outil pour webmestres ou développeurs qui souhaitent créer des plugins. La Fabrique est capable de générer le code source minimal d’un plugin pour SPIP 3 (elle accélère donc le démarrage d’un plugin) et peut s’occuper également de (...)

  • Formulaire upload

    25 septembre 2012 – 34 commentaires

    Ce plugin permet d’uploader des documents depuis l’espace public Objectifs Ce plugin permet d’ajouter un formulaire dans l’espace public pour uploader et gérer des fichiers. A priori, il peut se greffer sur tous types objets SPIP : articles, (...)

Ça spipe par là