bonjour
dans un plugin je met une configuration de la rubrique x a droite dans pipeline avec
function paramsite_affiche_droite($flux){
$exec = $flux["args"]["exec"];
switch($exec)
{
case "rubrique" :
$id_rubrique = $flux["args"]["id_rubrique"];
if ( $id_rubrique > 0) ....
cela met bien mon encadré a droite mais si je clique sur « modifier cette rubrique » cela exécute a nouveau la fonction et j’ai donc l’affichage droite en double. si je sort de modifier les 2 restent.
comment faire pour que si on clique sur « modifier cette rubrique » cela ne s’affiche pas une deuxième fois.
Il faut tester si l’objet courant est en cours d’édition.
Pour cela il y a une fonction trouver_objet_exec, qui donne plusieurs infos sur l’objet (son id, etc.), et s’utilise de la sorte :
$e = trouver_objet_exec($flux['args']['exec'] ?? '');
if (
$e !== false // c'est la page d'un objet
&& !$e['edition'] // pas en mode édition
&& ... // les autres tests éventuels
) {
Un exemple (là c’est avec afficher_milieu, mais c’est le même principe) : Sourcegraph
Je viens de marquer le fil comme résolu et de compléter le titre afin qu’il puisse être plus facilement trouvé par d’autres personnes qui en auraient besoin.