SPIP-Contrib

SPIP-Contrib

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

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

Accueil > Squelettes > Outils pour squelettes > Squelettes selon contexte > Squelettes pour mots clefs > Squelettes pour groupes et par groupes de mots

Squelettes pour groupes et par groupes de mots

29 novembre 2006 – par claudeD, denisb – 27 commentaires

7 votes

Une contrib — dans sa première partie — pour satisfaire une demande récurrente. Avoir des squelettes de mots en fonction des groupes de mots et des squelettes de groupe selon les groupes à la façon des squelettes article-XX.html pour les articles de la rubrique n° XX.

La première partie peut être utilisée indépendamment pour se contenter d’avoir un plusieurs squelettes particuliers à tel ou tel type de mots-clés.


Un supplément (février 2009) sur comment étendre la recherche sur vos nouvelles pages groupes de mots-clés.

Première phase : créer des squelettes de mot-clé par groupe de mots

Très simple à utiliser. Il suffit de copier votre fichier mot.html en mots.html. C’est ce fichier mots.html qui vous servira à créer les fichiers mots-10.html (pour les mots du groupe de mots-clés n° 10), mots-XX.html etc. [et les fichiers groupes et groupe-XX.html de la — facultative — deuxième phase] lorsque vous désirez un traitement différent pour des mots-clés d’un groupe donné. En effet, je veux bien mélanger mes mots-clés choux et carottes du groupe légumes, mais n’est pas envie que les mots-clés limaces et vers blancs du groupe parasites viennent les bouffer.

Quant au malheureux fichier mot.html, vous y substituez tout le contenu par cette boucle on ne peut plus simple [1] :

La version depuis 1.9x

La balise #CHEMIN est utilisée pour tester — avec le filtre |? — la présence du fichier à deux reprises. La première pour appeler le fichier spécifique au groupe, s’il est présent. La seconde pour faire appeler le fichier de base si la premier appel était négatif.

Le critère {self=#SELF} est nécessaire si on veut utiliser la balise #PAGINATION dans le squelette inclus.

La version Spip 1.8.2-1.8.3

Il s’agissait précédemment de la syntaxe depuis Spip 1.9. Pour la 1.8.2 et 1.8.3, il faut utiliser la syntaxe :


Phase seconde : créer des pages de groupes de mots et pouvoir les différencier

Après avoir si facilement créé une page mot spécifique à (éventuellement) chaque groupe de mots, vous voulez aller plus loin et créer une page pour vos groupes.

1re partie : la préparation

Il suffit de reprendre la première phase ; soit créer un fichier groupe.html un peu similaire à notre mot.html modifié précédemment. Ici {id_groupe=#ENV{groupe}} va récupérer l’id du groupe dans l’url qui sera de la forme http://monsite/spip.php?page=groupe[&groupe=(#ID_GROUPE)]

La version depuis 1.9x

Ici encore, vérification de la présence d’un fichier groupes-XX.html sinon utilisation de groupes.html. Ajout optionnel aussi du {self=#SELF} pour la pagination.

L’inévitable version Spip 1.8.2-1.8.3

Il s’agissait, précédemment, encore de la syntaxe depuis Spip 1.9. Donc, pour la 1.8.2 et 1.8.3, il faut utiliser la syntaxe :

2e partie : créer la page « groupe de mots »

Un fichier groupes.html sert à créer les fichiers groupes-10.html, groupes-XX.html etc. lorsque vous désirez un traitement différent pour un groupe donné de mots-clés. Il s’agit de partir de notre fichier mot.html de départ (de la dist/ par exemple) que vous avez copié sous le nom mots.html.

Lui-même est modifié en lui ajoutant une boucle BOUCLE_groupe_principal. Donc, vous faites une copie de votre fichier de base en groupes.html et ainsi vous modifiez :

en

puis, un « Fil d’Ariane » (chemin hiérarchique utilisé dans les squelettes de la dist) — simplifié — à échanger :

Enfin, vous modifiez la boucle BOUCLE_articles [2] en BOUCLE_mots_groupe (puisque vous ne listez plus les articles attachés à un mot-clé mais les mots-clés d’un groupe donné :

Il s’agit ici d’un copié-collé par rapport au squelette 1.9.1 de la dist ; vous devez donc modifier/supprimer les "class" de l’exemple en fonction de votre squelette.

3e partie : accéder à votre page de « groupe de mots »

Maintenant qu’il y a les données, vous devez afficher le chemin d’accès. Changez le « Fil d’Ariane » dans les fichiers mots.html et mots-XX.html :


Il ne vous reste plus qu’à affiner le squelette et c’est tout bon.

Ainsi, autant pour les squelettes mots.html et groupe.html que mots-XX.html et groupes-XX.html vous pouvez modifier le « menu de navigation mots-cles » [ici de la dist] pour avoir directement la page d’un groupe plutôt que la page du 1er mot du groupe. :

Il s’agit ici aussi d’un copié-collé par rapport au squelette 1.9.1 de la dist ; vous devez donc... J’y ai rajouté la possibilité d’exposer le groupe dans lequel on se trouve (valable pour la page mot comme pour la page groupe).

En 1.8.2/1.8.3 il faut bien sur utiliser la syntaxe page.php3?fond= à la place de spip.php?page=.


Supplément recherche Spip (par denisb)

En Spip 1.8 comme en 2.0, les pages des groupes de mots-clés donnent satisfaction et sont recensées par les moteurs de recherche si elles sont significatives. Pourtant, la recherche par le moteur interne de Spip ne les fait pas apparaitre !

Deux petites manœuvres à faire : premièrement, permettre l’affichage des réultats des recherches en modifiant recherche.html. Rien n’apparait encore car il faut aussi modifier le pipeline ’rechercher_liste_des_champs’ dans le fichier /ecrire/inc/rechercher.php (remerciements à DenisB).

Étape 1 : rajout dans la page recherche.html (ici, d’après le squelettes-dist de la 2.0.3)

href="[(#URL_PAGE{groupe}|parametre_url{groupe,#ID_GROUPE})]"
et href="[(#URL_PAGE{groupe})][&groupe=(#ID_GROUPE)]"
utilisé plus haut, sont équivalents. L’écriture avec "parametre_url" étant plus universelle.

Étape 2 : dans mes_options.php :

Ensuite, vous videz le cache et supprimez tmp/charger_pipelines.php.

Cette étape est équivalente à rajouter le code ci-après dans le pipeline 'rechercher_liste_des_champs' (dans ecrire/inc/rechercher.php) mais sans avoir à modifier le core [3].

Il ne vous reste plus qu’à pondérer — de 1 à 8, du plus faible au plus fort — les champs à votre convenance. Ici "8" est saisi par défaut pour l’exemple et vous pouvez vous inspirer des tableaux de ecrire/inc/rechercher.php.

Voir en ligne : Un exemple de page avec groupes-40.html. À comparer avec les exemples en fin d’article.

P.-S.

La contribution offre donc l’analogie article/article-XX et rubrique/rubrique-XX — hormis l’utilisation du pluriel — avec les graphies mots/mots-XX et groupes/groupes-XX.


Quelques exemples pour mieux expliciter cet article

  • d’abord des groupes différenciés :
    • groupe 40 (http://hortical.com/spip.php?page=g...) où les mots sont d’abord regroupés par descriptifs (grâce au filtre « unique ») puis classés par titre avec pour chacun un certain nombre d’articles correspondants pris au hasard pour rappel.
    • groupe 19 (http://hortical.com/spip.php?page=g...) liste des articles avec exposition des articles ayant le seul et unique mot du groupe. Ici, une plante est nectarifère ou non (même si la réalité est plus complexe).
    • groupe 27 (http://hortical.com/spip.php?page=g...) banale liste d’articles liés à chaque mot, sans pagination.
  • ensuite des pages mots différentes selon le groupe les contenants :

À vos boucles.

Notes

[1Merci à Pierre Andrews de l’aide pour retrouver le chemin dans les fichiers où je m’égarais de par la malédiction de sainte Axe.

[2Ici, /dist de la 1.9.1. Vous pouvez supprimer les données sur la pagination si vous le désirez.

[3Voir aussi : Prendre en compte un nouveau champ dans les recherches de Mathieu Marcillaud.

Dernière modification de cette page le 20 février 2016

Retour en haut de la page

Tout afficher

Vos commentaires

  • Le 12 septembre à 15:27, par PRX En réponse à : Squelettes pour groupes et par groupes de mots

    Bonjour,

    pour moi c’est assez confus pour être honnête.
    Je veux « simplement » créer une page avec la liste des mots clés d’un groupe de mots clés.

    Avec le plugin « menus », je créé une entrée de menu qui appelle :
    http://www.monsite/groupe_mots2.html

    Sous le répertoire « squelettes » , que dois-je ajouter comme noms et contenus de fichiers pour avoir cette liste SVP ?

    Répondre à ce message

  • Le 20 février 2016 à 16:19, par o2 En réponse à : Squelettes pour groupes et par groupes de mots

    Bonjour

    Est-ce que quelqu’un a essayé ce plugin sur 3.1 et fonctionne-t-il ?

    Merci
    o2

    • Le 20 février 2016 à 16:25, par Maïeul En réponse à : Squelettes pour groupes et par groupes de mots

      bonjour,

      si le plugins n’est pas marqué compatible 3.1, c’est que personne ne l’a testé en 3.1 ou bien que le test s’est averé infructueux.

      Cela étant, il ne s’agit pas ici d’un plugin mais d’une contribution, pas « clef en main ». Donc à tester, mais un survol rapide me dit qu’il n’y a pas de raison que cela ne marche pas

    • Le 20 février 2016 à 16:47, par claudeD En réponse à : Squelettes pour groupes et par groupes de mots

      je l’utilise en 3.1.0 et précédemment dans les RC. Je répare cet oubli et complète l’info .

    • Le 22 février 2016 à 13:55, par o2 En réponse à : Squelettes pour groupes et par groupes de mots

      Super, merci ClaudeD :-)

      Bon ben voilà, ce n’était pas si bête comme question Maïeul ;-)
      de toute façon j’allais le tester de mon côté sur plusieurs sites que je dois migrer.

      Bye bye

    • Le 22 février 2016 à 14:00, par Maïeul En réponse à : Squelettes pour groupes et par groupes de mots

      je n’ai pas dit que la question était bête. J’ai dit qu’en l’occurence nous n’avions pas affaire à un plugin ;-)

    Répondre à ce message

  • Le 21 mars 2011 à 23:01, par chris En réponse à : Squelettes pour groupes et par groupes de mots

    C’est impeccable, merci, rajoutons que cela marche aussi avec spip 2.1

    Répondre à ce message

  • Le 19 février 2010 à 09:35, par J-Ph Guihard En réponse à : Squelettes pour groupes et par groupes de mots

    Un grand merci pour cette contrib qui est ce que je cherchais.

    Bravo.

    Répondre à ce message

  • Le 16 mars 2009 à 16:54, par Abel En réponse à : Squelettes pour groupes et par groupes de mots

    Juste génial !
    Exactement ce que je cherchais, c’est super bien pensé !

    Merci !

    Répondre à ce message

  • Le 29 novembre 2008 à 10:37, par Zerocool En réponse à : Squelettes pour groupes et par groupes de mots

    oui j’ai bien mis Utiliser la configuration avancée des groupes de mots-clés
    l’id du mot est 1, l’id du groupe est 1

    Répondre à ce message

  • Le 28 novembre 2008 à 20:04, par Zerocool En réponse à : Squelettes pour groupes et par groupes de mots

    non je n’ai pas d’url je travail en local mais bizarre quand meme ca a l’air super simple j’ai 3 fichiers
    mot.html (copier-coller le code dans la 1re partie)
    mots.html (copier fichier depuis le dossier dist)
    mots-1.html (qui contient le design) et j’ai bien verifier le mot 1 (news) est relier a 3 articles

    • Le 29 novembre 2008 à 07:17, par claudeD En réponse à : Squelettes pour groupes et par groupes de mots

      un mot 1 dont l’id=1 donc. Mais est-il dans un groupe de mots dont l’id est 1.

      Il faut donc avoir validé :
      « Utiliser la configuration avancée des groupes de mots-clés »
      _dans la page configuration de spip

    Répondre à ce message

  • Le 28 novembre 2008 à 17:57, par Zerocool En réponse à : Squelettes pour groupes et par groupes de mots

    est ce que ca fonctionne sous spip2 rc1 car moi j’arrive pas a le faire fonctionner

    Répondre à ce message

  • Le 2 septembre 2008 à 18:02, par Patman En réponse à : Squelettes pour groupes et par groupes de mots

    Super ça marche ! une petite question cependant, doit-on systématiquement créer une page groupe-xx.html par groupe de mots ?
    Ne peut on avoir : un « si pas de page groupe-xx » alors « page groupe » par defaut ?
    Vu que je doit juste créer une page différente pour un seul groupe de mots, je ne voudrait pas créer toutes les pages pour les autres groupe qui utiliseront le même squelette...
    Doit-on faire un lien différent de “[(#URL_PAGEgroupe)][&groupe=(#ID_GROUPE)]” ? dans ce cas il cherche forcement une page groupe-xx.html.
    Espérant ne rien avoir raté, dans les explications, plus haut, merci d’avance pour votre aide

    • Le 2 septembre 2008 à 20:06, par claudeD En réponse à : Squelettes pour groupes et par groupes de mots

      Bonjour,

      pas de problème :
      Spip cherche d’abord un squelette groupes-N.html
      s’il ne trouve pas, il utilise le squelette groupes.html/ Ce dernier suffit pour l’ensemble des pages de groupes de mots. Il ne faut donc pas oublier de créer groupes.html.

    • Le 3 septembre 2008 à 11:29, par Patman En réponse à : Squelettes pour groupes et par groupes de mots

      Effectivement dans mon cas, 3 pages suffisent : groupe.html avec “< BOUCLE_groupe_principal(GROUPES_MOTS)...>”, groupes.html avec la mise en page générale et groupe-N.html avec la mise en page spécifique à l’ID groupe N. D’un autre coté j’ai changer tous les liens qui font référence à “#URL_MOT” en “[(#URL_PAGEgroupe)][&groupe=(#ID_GROUPE)]”, car au début c’était ce qui me fausser le résultat. Merci beaucoup pour votre aide et la rapidité de votre réponse.

    Répondre à ce message

  • Le 12 mars 2008 à 11:13, par Sabine En réponse à : Ne fonctionne pas pour spip 1.9.2d ?

    Merci pour cette contrib qui m’est bien utile. Je la teste sur spip 1.9.2.d
    ça marche impec pour les squelettes des mots clés (mot.html et mots.html)
    En revanche, ça ne fonctionne pas pour les squelettes des groupes de mots clés (groupe.html et groupes.html)
    L’URL spip.php ?groupeX renvoie vers le sommaire.
    Quelqu’un aurait-il une solution ?
    merci...

    Répondre à ce message

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

  • Champs Extras 3

    16 janvier 2012 – 588 commentaires

    Ce plugin permet de créer et/ou de gérer des champs supplémentaires dans les objets éditoriaux de SPIP. Il permet donc de prendre en compte et d’afficher de nouveaux éléments dans n’importe quel objet éditorial de SPIP. Screencast Vous n’aimez pas (...)

  • Plugin Domlang : Domaines par secteur de langue

    4 septembre – commentaires

    Domlang est un plugin qui permet d’associer un nom de domaine ou un sous-domaine à un secteur de langue. Ce plugin convient pour un site qui utilise des secteurs de langues. En configuration, pour chaque secteur, vous pourrez définir une URL (...)

  • Plugin Speedsyndic 2

    11 octobre 2010 – 24 commentaires

    Ce plugin est une version compatible spip 2.0.x / 2.1 du plugin Speedsyndic Note : Une bonne partie du texte ci-dessous a été pompé de cet article, expliquant la version précédente du plugin. je n’ai fait qu’adapter le code pour spip 2, ajouter une (...)

  • Formidable, le générateur de formulaires

    23 janvier 2012 – 2229 commentaires

    Un générateur de formulaires facilement configurable pour les non-informaticiens et facilement extensible pour les développeurs. Introduction L’objectif était de créer un plugin permettant de générer des formulaires. Historiquement, 2 plugins (...)

  • Statuts d’articles par lots

    19 mai 2015 – 13 commentaires

    Ce plugin permet de modifier rapidement le statut des articles d’une rubrique ou de tout un site. Une fois installé, le plugin propose une entrée « Statuts d’articles » dans le menu Publication. Un formulaire permet de sélectionner les articles à (...)

Ça spipe par là