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

Une discussion

  • Petite erreur dans la doc qui s’avère pénalisante pour les utilisateurs :
    Le nom du mot clé ne doit pas être « arp_regle# » mais « arp_regle_# » (avec un underscore).

    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