Forcer le choix d’une rubrique

Il arrive fréquemment que des rédacteurs oublient de classer leurs articles dans les rubriques idoines. Ce plugin les en empêche en leur rappelant l’importance du rubriquage.

Présentation

Lors de la création d’un nouvel article, si le rédacteur n’était pas en train de naviguer dans l’arborescence des rubriques (que ce soit dans le site public ou privé), l’article en question est classé dans une rubrique qui n’a sans doute que peu de rapports avec elle.

De plus, il n’existe pas de rubrique par défaut dans SPIP et, souvent, les rédacteurs peu expérimentés demandent la publication de leurs articles sans avoir pensé à les classer autrement que dans la rubrique qui s’est présentée d’elle même. C’est alors à l’administrateur qu’il revient de modifier les articles proposés pour qu’ils ne se retrouvent pas placés par hasard dans l’arborescence du site.

Aperçu de la boîte d’avertissement

Ce plugin permet d’éviter ce problème, de deux manières :
-  tout nouvel article peut être classé dans une rubrique par défaut ;
-  lors de la première édition d’un nouvel article, une boîte de dialogue [1] recouvre la zone d’édition tout en la bloquant et rappelle au rédacteur qu’il doit faire le choix d’une rubrique. Il faut qu’il ferme cette boîte (après en avoir lu le message, espérons-le) pour accéder à l’édition du contenu. Cette boîte n’apparaît pas si le nouvel article est déjà rubriqué.

Installation du plugin

Comme pour les autres plugins, il suffit de télécharger l’archive ci-jointe, de la décompresser et d’installer le répertoire obtenu dans le répertoire /plugins de SPIP. L’activation du plugin se fait dans l’interface privée.

Forcer le choix d’une rubrique (1.3.0)

Consulter la documentation officielle pour plus de détails.

Fonctionnement et configuration

Une fois le plugin activé, la boîte rappelant qu’un nouvel article n’est pas rubriqué se manifeste automatiquement [2].

Il est possible de modifier le message affiché, en éditant le fichier message_boite.inc (écrit en HTML). Il convient de s’assurer, si le message par défaut doit être changé, que d’éventuels caractères étendus sont convertis en entités HTML, afin d’éviter tout problème de codage. Ce n’est pas une boîte de dialogue en javascript : la boîte est codée en HTML et CSS ; c’est un bloc transparent prenant tout l’espace d’affichage doté d’un bloc translucide plus petit comprenant le message à afficher ainsi qu’un lien pour faire disparaître le bloc conteneur. Ainsi, tant que le message est visible, il empêche d’accéder à la zone d’édition, qu’il recouvre entièrement.

Le fichier forcer_choix_rubrique_options.php, quant à lui, permet d’activer une option supplémentaire : le rubricage par défaut des nouveaux articles. Ce rubricage par défaut prend tout son sens si l’on utilise aussi le plugin Accès restreint par groupes : on peut ainsi créer une rubrique « fantôme » (nommée par exemple Choisissez une rubrique) qui ne peut pas apparaître dans le site public mais peut recevoir les articles qui resteraient non rubriqués malgré l’avertissement.

Compatibilité

Ce plugin n’est pas entièrement compatible avec Internet Explorer 6 (et versions inférieures) car ce navigateur ne sait pas gérer la propriété de positionnement fixed de CSS2. De fait, le bloc transparent empêchant d’accéder à la zone d’édition ne fonctionne pas ; seule la boîte contenant le message est affichée.

Notes

[1En HTML + CSS.

[2Il faut pour cela que les variables $GLOBALS['id_rubrique'], $_GET['id_rubrique'] et $GLOBALS['id_article'] soient vides et que la variable $_GET['exec'] vaille articles_edit.

Discussion

5 discussions

  • 1

    Bonjour,

    Je tente d’installer le plugin sur mon site qui est en version 2.1.10 et un rapport d’erreur m’indique qu ’il faut que mon site soit en version 1.9.2 ou 2.1 minimum....

    Donc comment puis-je corriger cette méprise ??

    Cordialement.

    Répondre à ce message

  • 1

    pourrais je mettre le plugin sur la spip-zone afin de permettre de le récuperer via svn ?

    Répondre à ce message

  • Bonsoir,

    Avec les nouvelles versions 2.1 qui positionnent tjrs l’article dans la dernière rubrique de la liste,
    cet outil pourrait etre bien utile ....

    J’aimerais meme pouvoir automatiquement positionner la rubrique à la valeur dont l’auteur est Admin.restreint : mais que diable peut-on bien devoir mettre dans forcer_choix_rubrique_options.php ?

    En lisant le code, cela devient un peu plus clair :
    $_GET['id_rubrique'] = "100";

    Reste plus qu’a imaginer la fonction qui va chercher dans la table ’spip_auteurs’ la bonne formule.....

    Je vais essayer

    @suivre

    Merci

    Répondre à ce message

  • 11

    Bonjour,
    totalement débutant j’ai installé ce plugin dans mon site et le fait est que ça marche ...trop bien !
    En effet, lorsque l’on clique sur « fermer » il ne se passe rien et l’on ne peut pas rédiger son article...
    Que faire ?

    • Si vous voulez qu’on vous aide, il faut donner un minimum d’information : message d’erreur javascript éventuel, version de SPIP utilisée, navigateurs testés...

    • Bonjour,
      j’utilise Firefox et la version de SPIP est 1.9.1. Il n’y a pas de message d’erreur mais simplement après mise en place de la grande fenêtre « ATTENTION... » l’action sur le bouton « Fermer » est sans effet et tout se bloque.
      J’espère que ces indications suffiront à vous aider à m’aider...

    • J’espère que ces indications suffiront à vous aider à m’aider...

      Difficilement, malheureusement, car ce plugin a été développé sous Firefox pour SPIP 1.9.1.

      Si vous voulez m’aider à déboguer, voici ce que vous pouvez faire :
      -  téléchargez l’extension Web Developer ;
      -  donnez-moi le contenu du débogueur JavaScript (icône qui, dans la barre d’outils du plugin, est tout à droite et devient rouge quand il y a un problème : cliquez dessus pour plus d’infos).

      Merci.

    • J’ai le même problème avec FF.
      Rapport webdevelopper :

      Deprecated method document.getSelection() called. Please use window.getSelection() instead.

      Erreur : monTitreparent has no properties
      Fichier source : http://******.net/test/ecrire/?exec=articles_edit&new=oui#
      Ligne : 43

    • Tout d’abord, merci de votre rapport.

      Ce qui me surprend, c’est que forcer_choix_rubrique n’utilise pas la méthode getSelection(). Je ne pense pas que ce problème soit spécifique à ce plugin. Du reste, je n’en trouve non plus aucune trace dans le source de SPIP. Quelle version utilisez-vous ?

      Sinon, j’ai trouvé d’où vient l’erreur : c’est que le plugin part du principe que l’affichage des rubrique passe par AJAX, ce qui n’est pas le cas pour votre site (soit que vous ayez défini la constante _SPIP_SELECT_RUBRIQUES à 100000, soit qu’il n’y ait pas assez de rubriques pour qu’AJAX se donne la peine d’intervenir. Dans ce cas, l’id est différent.

      Je suis en train de chercher une solution, que je publierai au plus tôt.

    • C’est corrigé : le nouveau zip contient la version mise à jour. Merci encore de votre retour.

    • Pour information : le plugin a été mis à jour et corrige ce bug.

    • Bonjour,

      pour ma part je n’arrive pas à personnaliser l’interface privée. Je suppose qu’avec la nouvelle version de spip, le code php proposé n’est plus valide. Quelqu’un pour m’éclairer ?

      Merci

    • Je viens de tester le plugin avec SPIP 2.0.6 et je ne rencontre aucun problème. Pourriez-vous être plus précis quant à l’erreur rencontrée ?

      Merci.

    • J’avoue ne pas comprendre le sens de ma question, qui date de l’an dernier, et qui semble n’avoir aucun rapport avec la contrib. D’autant que je n’ai jamais utilisé ce plugin. Quoi qu’il ait bien pu se passer, le plus simple est d’ignorer la question, désolé !

    • Zinzibulo

      Je viens de tester le plugin avec SPIP 2.0.6 et je ne rencontre aucun problème. Pourriez-vous être plus précis quant à l’erreur rencontrée ?

      Dans la compatibilité, il n’est pas précisé Spip 2. (2.0.9 pour ma part)
      Y-a-t-il une raison ? Oubli ou autre...

    Répondre à ce message

  • Super plug ; moi qui passé mon temps a redirigé les articles dans les bonnes rubriques

    Pour info fonctionne sous SPIP 1.9.3 dev [11312]

    @micalement stéphane

    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 :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

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.

Qui êtes-vous ?
[Se connecter]

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

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom