L’installation et l’activation du plugin se font comme pour tout plugin.
Une fois activé, le plugin propose une nouvelle entrée Recherche / Remplace dans le menu Maintenance de la partie privée, et permet de là :
- de saisir une chaîne à rechercher,
- de rechercher toutes les occurrences de cette chaîne dans les champs éditables (ou si non declarés, dans les champs versionnés) de type text
ou varchar
des objets SPIP [1],
- affiche les résultats de la recherche par type d’objet avec : le nombre d’occurrences dans chaque objet.
- présente le contexte de chaque occurrence avec les caractères juste avant et juste après
- en option, de saisir une chaîne de remplacement, pour
- demander le remplacement par la 2e chaîne de toutes les occurrences trouvées de la première chaîne,
Lors de la demande de confirmation, le remplacement est sélectionnable type par type (on peut ne remplacer que dans les articles par exemple).
Seuls les Administrateurs complets (non restreints) sont autorisés à utiliser ce plugin.
Paramétrage webmestre
- Le webmestre peut personnaliser la longueur du texte contexte affiché pour chaque occurrence de la chaîne cherchée. Pour cela il définit la constante RECHREMP_CONTEXTE_NB_CHARS
. Sa valeur indique la longueur du texte contexte présent avant et après chaque occurrence. Si elle vaut 0, le détail des occurrences n’est pas affiché du tout. Par défaut, 20 caractères avant et 20 caractères après sont affichés.
- Le webmestre peut personnaliser l’affichage de chaque objet résultat en définissant la constante RECHREMP_INFO_RESULTAT_A_GENERER
dans le fichier d’options du squelette ou d’un plugin. Pour cela, il spécifie un autre champ ’info’ que la valeur par défaut qui est ’titre’. Cette autre valeur peut être un champ existant ou bien ce peut être une info calculée par une fonction generer_${info}_${type_objet}($id, $objet)
et/ou generer_$info_entite($id,$type,$objet)
qu’il doit également définir.
Développements envisageables
Vos contributions sont bienvenues si vous voulez étendre les possibilités de ce petit outil bien pratique :
- paramétrer plus finement le champ d’application de la recherche ou du remplacement : dans telle rubrique seulement ou dans telle liste de rubrique seulement...
- permettre à un administrateur partiel d’accéder à l’outil et de faire des remplacements dans ses rubriques seulement.
- permettre une recherche par expression régulière : fait par Marcimat en mars 23.
Discussions par date d’activité
Une discussion
Bonjour,
Sous Spip 4.2 Rechercher-remplacer trouve 1456 occurrences de <media
mais lorsque je demande de remplacer par <doc , après validation, je reçois comme résultat :
Résultat du remplacement« <media »
Aucun remplacement sur les Articles
Rien n’a été remplacé.
Que puis-je faire ?
Je ne reproduis pas.
Tu coche bien la case « Articles » avant de demander le remplacement ?
Tout marche bien en fait.
J’avais bien coché la case article mais pas celle qui sélectionne tous les résultats trouvés et que je n’avais pas remarquée. Je validais directement et comme rien n’était sélectionné...
J’aurai une demande d’amélioration (trop tard pour moi et mes 134 occurrences). Y aurait-il un moyen de revenir en cas d’erreur une fois le remplacement finalisé ?
Pour annuler le remplacement, il faut avoir fait une sauvegarde de la BDD juste avant, pour la réinstaller juste après. Mais il est plus simple de ne pas faire le remplacement si c’est ça le but.
Il faut donc être très prudent et ne jamais faire d’erreur, oubli, faute de frappe dans le choix du mot de remplacement.
Ma BD dépasse la limite de sauvegarde de la BD interne à Spip. De plus s’il faut faire une sauvegarde pour chaque changement, c’est assez lourd.
Quoi qu’il en soit, c’est un bon outil pour mes besoins.
Je n’ai jamais eu de pb en faisant des remplacements mais effectivement il faut faire attention à ne pas faire d’erreur vu que c’est un changement global, qui peut impacter plusieurs articles.
Fort heureusement, la sauvegarde de la BDD zipée se fait en 2 clics une fois que phpMyAdmin est ouvert.
Répondre à ce message
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires : |