Vous n'avez pas besoin de l'éditeur de blocs pour utiliser l'extension. Chaque bloc a un jumeau en code court, et les règles d'accès s'appliquent sur le serveur, bien en dessous de ce qui a construit la page.
Des codes courts partout
Partout où WordPress exécute des codes courts, ceux de memberarea fonctionnent :
dans l'éditeur classique, dans un widget de code court d'Elementor, dans un
module de code ou de texte de Divi, dans un module HTML de Beaver Builder, et
dans des fichiers de gabarit via do_shortcode().
| Code court | Attributs |
|---|---|
[memberarea_checkout] |
product, label, class |
[memberarea_product] |
product, layout (compact ou full), class |
[memberarea_cart] |
class |
[memberarea_form] |
form, class |
[memberarea_badge] |
badge, class |
[memberarea_login] |
sign_in, sign_out, avatar, name, logout, align, class |
[memberarea_my_courses] |
empty, signedout, link, linklabel, class |
[memberarea_progress] |
course, empty, signedout, link, linklabel, class |
[memberarea_course_catalogue] |
button, owned, empty, link, linklabel, class |
product, form, badge et course prennent l'UUID de l'élément, que vous
copiez depuis votre memberarea. L'attribut class pose votre propre classe sur
le conteneur : c'est ainsi qu'un bloc s'accorde au style d'un constructeur.
Protéger une page faite avec un constructeur
Le panneau qui pose la règle vit dans l'éditeur de blocs, mais la règle elle-même est stockée sur la page et vérifiée à chaque requête. Vous pouvez donc la poser une fois dans l'éditeur de blocs et continuer à travailler la page dans votre constructeur : la protection reste.
Pour une page dont le constructeur prend en charge tout le gabarit, choisissez avec soin la réponse donnée aux visiteurs sans accès :
- L'envoi vers la connexion et l'envoi vers une autre page se produisent avant que la page ne soit rendue, et fonctionnent donc quel que soit ce qui la dessine.
- Le court message remplace le contenu de la page. Un constructeur qui rend son propre gabarit sans le filtre de contenu habituel peut passer à côté, et le visiteur voit alors la page.
Testez chaque page protégée faite au constructeur, une fois, dans une fenêtre privée. Si le contenu s'affiche encore, basculez la règle de cette page vers la connexion ou la redirection, que rien ne contourne ainsi.
Ce qui est toujours couvert
Quelle que soit l'origine de la page, l'extension protège aussi les endroits par
lesquels le contenu fuit : extraits, listes d'archives et de recherche, boucles
de requête, plan de site WordPress et API REST. Une page protégée ne se lit pas
non plus via /wp-json.
Ce qui demande des blocs
Deux choses n'ont pas de code court, parce qu'elles sont des propriétés d'un bloc et non quelque chose que l'on place :
- La visibilité d'un bloc isolé, qui ne montre un bloc qu'aux membres, qu'aux invités ou qu'aux détenteurs d'un cours.
- Poser une règle de page, comme décrit plus haut.
Si vous travaillez surtout dans un constructeur, la voie pratique est d'ouvrir la page une minute dans l'éditeur de blocs, de poser la règle, et de revenir.
Mise en cache
Rien ne change pour les constructeurs : les pages restent cachables pour les
visiteurs anonymes, et les réponses destinées aux membres connectés sont
marquées comme non cachables. Si votre constructeur embarque son propre cache,
vérifiez qu'il respecte DONOTCACHEPAGE avant de compter sur une page protégée.