Accès Restreint Partiel

Voulez-vous masquer une partie du contenu de vos articles aux visiteurs de passage ? et réserver la totalité à certains de vos membres ? Voulez-vous remplacer le contenu occulté par un appel à l’action (pour devenir Membre, bla bla bla...) ?

Le plugin Accès Restreint Partiel permet d’afficher partiellement les articles faisant partie d’une zone à accès restreint. Il s’utilise en complément du plugin Accès Restreint.

Utilité et fonctionnalités du plugin

Ce plugin est utilisé en sur-couche du plugin Accès Restreint. Ce dernier permet de définir des zones à accès restreint et d’attribuer des droits d’accès aux visiteurs et rédacteurs. Sur ce dernier point cela ne change pas.

Alors quelles sont les différences ?
Avec le plugin Accès Restreint, tout le contenu est occulté. Et même plus, puisque les articles concernés ne sortent même plus des résultats des boucles, sauf si le visiteur possède les droits d’accès à la zone restreinte, bien évidemment.

Avec le plugin Accès Restreint Partiel, tous les articles sortent dans les résultats de la boucle, mais c’est le contenu affiché par la balise #TEXTE de l’article protégé qui sera partiellement occulté, en fonction des filtres que vous aurez sélectionnés et configurés.

Par exemple, il est possible d’afficher seulement N mots, un certain pourcentage de l’article, couper juste avant le Nième intertitre, rien du tout, etc.

Il est également possible de configurer ce qui doit être affiché avant et après un texte qui a subit un filtrage.

Pour voir ce que cela donne, voici un exemple avec un guide de construction partiellement occulté : https://cabane.bilp.fr/guide-constr...

I. Installation du plugin

Le plugin s’installe comme tout autre plugin. Cependant, le plugin Accès Restreint 3.x doit être préalablement installé. Les zone doivent aussi être définies.

Il faut ensuite passer à la configuration du plugin. Si vous omettez de le faire, tous les articles des zones restreintes seront listés mais le #TEXTE sera complètement occulté à l’affichage.

II. Définir les règles de filtrage

Les règles de filtrage indiquent comment on souhaite occulter le texte des articles.
Il est possible de configurer jusqu’à 8 règles de filtrage, à choisir parmi un choix de filtre.

On peut choisir la règle qui est appliquée par défaut. Ainsi on peut rapidement choisir une règle de filtrage pour l’ensemble du site, puis choisir une règle spécifique pour chaque zone, ou pour chaque article.

Pour chaque règle, on choisit un filtre et on indique les paramètres du filtre.
Le paramètre « Nombre de caractère minimum » n’est pas encore implémenté.

Dans l’exemple ci-dessous, la règle #2 consiste à filtrer 50% du texte :

Les filtres

Diminutif Description Paramètre xxx Remarque
arp_filtre_ncar Couper à xxx caractères Nombre de caractères à conserver dans l’article Les modéles, balises html, raccourcis typographiques, comptent pour 1 caractère
arp_filtre_pourcentage Ne conserver que xxx % de l’article Définit le % de caractères à afficher idem
arp_filtre_nintertitre Couper juste avant le xxx ième intertitre Exemple : si xxx=3, on affiche uniquement les 2 premiers intertitres avec leur texte Si xxx est supérieur au nombre d’intertitres présents dans l’article, alors tout l’article est affiché
arp_filtre_que_intertitre Ne laisser que les intertitres et remplacer le texte par xxx ATTENTION, pas encore implémenté
arp_filtre_tout Tout le texte est filtré (aucun affichage) non utilisé
arp_filtre_rien Rien n’est filtré, le texte est affiché tel que non utilisé Utile pour désactiver ponctuellement le filtrage partiel

III. Configurer chaque zone

Pour chaque zone, on peut indiquer la règle de filtrage à appliquer.

On peut également définir les textes AVANT et APRES : si le texte de l’article a subi un filtrage, il est possible d’insérer un bout de texte AVANT et APRES le texte de l’article.

On peut définir ces textes AVANT/APRES pour l’ensemble des zones par défaut. Mais on peut aussi le définir spécifiquement pour chaque zone. Dans ce cas, ce sont les textes spécifiques qui sont prioritaires sur les textes définis globalement.

Exemple de configuration d’une zone
On peut insérer des modèles et du HTML. Voir plus loin l’explication des modèles <liste_intertitre1> et <liste_doc1>

Les textes AVANT/APRES sont au standard typographique SPIP. On peut même ajouter des modèles, des balises HTML, etc.

Deux modèles pour donner envie

Voilà ce que cela donne

Occulter une partie du texte pour susciter la curiosité, c’est une chose. Mais dévoiler subtilement, c’est encore mieux.

Alors voici deux modèles à insérer dans les textes AVANT ou APRES.
-  <liste_intertitre> : liste tous les intertitres de l’article
-  <liste_doc> : liste tous les documents de l’article sous forme de mini-vignette non cliquables. Avec deux paramètres :

  • width : largeur de la vignette en px,
  • raz : nombre de vignette sur une seule ligne. Juste après la Nième(raz) vignette, un <br class='nettoyeur'> est inséré.

Définir des règles spécifiques à certains articles

Comme nous l’avons vu, on définit des règles de filtrage globalement pour tout le site, ou zone par zone.
Mais il est également possible d’agir localement au niveau d’un article. Par exemple, on peut choisir d’afficher 80% du texte pour tous les articles d’une zone donnée. Et pour un article précis de cette zone, on choisit de tout afficher.

Pour cela, il suffit de décider quelle règle à on souhaite affecter à un article, en lui attribuant un mot-clé de la forme arp_regle# ou # est le numéro de la règle.

Choisir précisément l’endroit de la coupe

Enfin, on peut être encore plus précis en choisissant l’endroit exact où on souhaite que le texte soit coupé. Il suffit d’insérer la balise <couper_ici> à l’endroit exact dans le texte.
Cette disposition est la plus prioritaire de toutes les règles.

Pour éviter de tourner en rond

Avant de crier à l’aide, je ne peux que vous encourager à lire la doc ci-dessus et à appliquer.
En particulier :
-  vous devez définir au moins règle, c’est-à-dire définir un filtrage.
-  vous devez définir au moins une zone en accès restreint.
-  vous devez indiquer quelle règle doit-être appliquée à cette zone, ou alors au moins déclarer la règle par défaut.

Discussion

13 discussions

  • 3
    Boltzmann_Solver

    Bonjour,

    Un bug plutôt gênant. Lors de l’utilisation du plugin, les documents ne sont plus restreints. Peut-on réactiver la restriction ?

    • Bonjour

      Cela un fonctionnement volontaire.
      En effet, j’ai dû activer l’accès aux docs pour pouvoir les afficher avec le modèle liste_doc.

    • Boltzmann_Solver

      Bonjour,

      Merci de l’information. Pourriez vous m’indiquer la portion de code à modifier pour réactiver le contrôle des documents même si je perds l’affichage des documents.

      Cordialement.

    • Bonjour

      arp_pipelines.php, commenter la ligne 38, // case ’documents’ :

      A tester, suis pas sûr que cela soit suffisant ?

    Répondre à ce message

  • BUG dans l’affichage des modèles liste_intertitre et liste_doc

    Il se peut que ces deux modèles n’affiche rien malgré la présence d’intertitres et de doc.
    C’est probablement parce qu’un autre plugin a été activé plus récemment, par exemple un plugin squelette qui joue avec les pipelines et la table_des_traitements[TEXTE[article]].

    Dans ce cas, il suffit de désactiver arp, vider le cache, puis réactiver arp.

    Répondre à ce message

  • 10

    Bonjour. Ce plugin m’intéresse, je l’ai installé et la configuration par défaut fonctionne. Mais je n’ai pas été capable de configurer quoi que ce soit dans la page de configuration, je n’ai pas trouvé de boîte de texte ou quelque moyen que ce soit de configurer quelque chose.
    Ce peut être un problème de librairie ou de browser internet, j’utilise Safari sous MacOS, et j’ai aussi testé Firefox.
    Auriez-vous une piste, merci d’avance.

    • Bonjour
      Avez-vous l’icone de configuration dans la liste des plugins actiffs, sur la ligne du plugin Accès Restrient, à droite ?

      Accédez-vous à la page http://votresite.com/ecrire/?exec=configurer_arp ?

    • Bonjour. Réponse oui aux deux points. Je suis bien sur la page de configuration.
      Rien ne répond sur cette page, sauf le bouton « enregistrer ».

      Configuration : Spip 3.0.17 ; Accès restreint 3.8.13 ; Ahuntsic 2.02 ; Couteau Suisse 1.9.1
      J’ai d’abord chargé ARP en manuel puis en automatique, pas de différence.

    • Est-ce que le plugin SAISIES est bien installé ?

    • Ce n’était pas le cas, je l’ai installé.
      Pas de différence.
      Il m’a semblé qu’il fallait aussi cfg. Je l’ai installé.
      Après avoir vidé le cache, la configuration fonctionne.

      J’ai voulu tester une config qui limite à l’affichage de 500 caractères, avec un message,
      Il n’y a toujours que le titre qui est affiché.
      J’ai eu des erreurs d’exécution qui ont disparu en réinstallant tous les plugins de ma configuration.
      On rentre dans une heure ou le site a pas mal de lecteurs, je continuerai plus tard ou demain.
      Merci de ton aide. La liste des plugins nécessaires serait à préciser dans la doc.
      Régis

    • OUI à préciser mais pas dans la doc, mais dans le paquet.xml

    • Bonjour, suite de mes essais.
      J’ai d’abord désactivé mes plugins non nécessaires (Ahuntsic et Couteau Suisse) puis je les ai réactivés, il n’y a pas d’impact.
      Le seul filtrage qui fonctionne est la balise , les filtrages sur le nombre de caractères (test avec 500 ou 200) et le pourcentage du texte (20%) ne fonctionnent pas.

      Remarque. Lorsque j’active ARP, le compte-rendu d’activation est affiché 2 fois, je ne sais pas si cela signifie quelque chose, mais j’ai un autre plugin dans cette situation.

      Nota : la balise n’a pas d’effet dans la partie « description » de l’article. Ce serait un sujet de réflexion à avoir. Filtrer la description présente aussi des inconvénients... Pour moi, l’idéal serait un filtrage indépendant du champ « description » avec uniquement la balise (cas du lien réservé aux abonnés qui peut être utilisé sans ouvrir l’article).

      Les messages affichés avant et après la partie filtrée fonctionnent quand c’est filtré (testé avec des messages simples en couleur).

      En résumé, je serais intéressé à faire fonctionner les règles simples et ce serait pour mon site un plus important. Il manque peut-être un autre plugin ?
      .

    • Idéalement, il me faudrait un accès admin pour pouvoir investiguer.

    • Conclusion : aucune règle de filtrage n’était déclarée pour la zone restreinte.
      Donc par défaut, le plugin filtrait tout. NORMAL !

      J’ai mis à jour cet article pour insister sur les minimums à effectuer.

    • Bonjour Bruno
      Merci de l’intervention, désolé pour le dérangement, je vais maintenant pouvoir profiter de toutes les fonctionnalités d’ARP.

      Commentaire sur le comportement par défaut.
      En absence de choix de règle pour un article (pour la zone ou spécifique à l’article), le plugin coupe totalement le texte de l’article sans autre indication, mais je pense que dans une vision utilisateur, il serait plus NORMAL de cacher complètement l’article.
      Je vais continuer à explorer les possibilités.

      Merci pour ce plugin qui manquait.

    • Merci pour la proposition.

      Cependant, tel que le plugin est implémenté-table, cela n’est pas possible. ou alors cela alourdirait considérablement l’implémentation.

    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