Ajouter les mots-clés de l’article à leurs événements

Il arrive parfois que le choix éditorial d’un site change en cours de route. J’en ai fait les frais sur le site de notre association. Les choix du début étaient de mettre les mots-clés d’un événement sur l’article qui le contient au lieu de l’événement en lui même...
Aujourd’hui, grâce à un formulaire de proposition d’événements par l’espace public (un plugin développé par Cerdic sur la zone de SPIP), les mots-clés sont assignés directement aux événements. De ce fait, nous sommes contraints de mettre les mots-clés des anciens articles sur leurs propres événements pour faciliter les boucles du squelette SPIP.
Une requête MySQL serait assez complexe surtout qu’on devrait prendre en compte 3 tables différentes... Euh... C’est du haute voltige...
Une astuce : importer un fichier csv dans la base de données MySQL qui contiendra toutes les relations entre les mots-clés et les événements. Ce fichier csv sera créé par le biais de squelette pur spip. Voici comment faire :
<BOUCLE_agenda(RUBRIQUES) {id_secteur=10}><BOUCLE_articles(ARTICLES) {branche}{par id_article}{doublons}><BOUCLE_appel_events(EVENEMENTS){id_article}{doublons events}> </BOUCLE_appel_events></BOUCLE_articles></BOUCLE_agenda>
<BOUCLE_evenement(EVENEMENTS){!doublons events}{par id_evenement}><BOUCLE_mots(MOTS) {id_article=#ID_ARTICLE}{par id_mot}>"#ID_MOT";"#_evenement:ID_EVENEMENT"
</BOUCLE_mots></BOUCLE_evenement>
A noter, peut-être pour votre besoin, que je prends dans ma boucle la rubrique secteur de l’agenda qui contient tous les événements que je désire. Si vous le désirez, vous pouvez changer id_secteur=10
par id_rubrique=XX
où XX est le numéro de la rubrique que vous désirez...
Lorsque vous aurez appelé la page du squelette que vous avez fraîchement créé, copiez-collez le code qui vous intéresse pour en créer un fichier csv. Cela ok, importer le fichier csv dans votre base de données par l’intermédiaire de phpMyAdmin dans la table "spip_mots_evenements".
Et voilà, le tour est joué !
Derniers commentaires
# Le 30 décembre 2022 à 09:55, par Teddy Payet
En réponse à : Home Assistant : Routine le matin avant l’école
# Le 14 septembre 2022à 23:51, par spipfactory
En réponse à : Nettoyer la médiathèque
# Le 16 août 2022à 11:21, par idem2lyon
En réponse à : Home Assistant : Routine le matin avant l’école
# Le 12 mars 2022à 05:39, par BijouLePou
En réponse à : Je suis passé à SPIP 4.0
# Le 10 janvier 2022à 17:41, par julien
En réponse à : Je suis passé à SPIP 4.0
# Le 14 septembre 2021 à 13:12, par Teddy Payet
En réponse à : Je suis passé à SPIP 4.0