[SPIP Zone] editer_article

Salut

Pour « mon » plugin, je voudrais supprimer la fonction de découpage de texte long. Je fait donc une copie de editer_article.php dans le dossier exec de mon plugin et je supprime cette fonction. Par contre ça rentre en conflit avec d’autre plugin qui modifie aussi ce fichier.

Y a-t-il une meilleur façon de faire ? Puis-je par exemple ne modifier que la fonction qui m’intéresse dans ce fichier, supprimer toutes les autres et spip se débrouille pour les retrouver ?

VinceVg

Vince VG a écrit :

Salut

            Pour « mon » plugin, je voudrais supprimer la fonction de découpage de texte long. Je fait donc une copie de editer_article.php dans le dossier exec de mon plugin et je supprime cette fonction. Par contre ça rentre en conflit avec d’autre plugin qui modifie aussi ce fichier.

Y a-t-il une meilleur façon de faire ? Puis-je par exemple ne modifier que la fonction qui m’intéresse dans ce fichier, supprimer toutes les autres et spip se débrouille pour les retrouver ?

VinceVg

Si la fonction possède un _dist à la fin, ça ceut dire que spip l'appelle avec $fonction = charger_fonction('la_fonction','inc'); A ce moment là, tu peux créer dans mes_fonctions.php (enfin, l'équivalent pour ton plugin) la même fonction, sans le _dist ...

S'il n'y a pas de _dist, alors c'est le fichier complet qu'il faut réutiliser comme tu as fait...

Si c'est la fonction trop_long_articles()... bien, c'est raté !

mais tu peux proposer de mettre cette fonction (en ajoutant _dist à son nom) dans un nouveau fichier inc/articles ou je ne sais quel nom mieux adapté et faire :
include_spip(inc/articles);
$trop_longs_articles = charger_fonction('trop_longs_articles','inc');

et à la place de l'appel de la fonction , mettre $trop_long_articles()

De cette façon, tu pourras surcharger la fonction uniquement. Mais c'est à proposer sur dev pour que ce soit intégré...

MM.