Seulement sur invitation !

Publié le

par

Crédits photo Bar Code de Marco Ro, on Flickr

Dernièrement, on m’a fait une demande étrange : faire en sorte qu’un blog d’un WordPress Network ne soit visible que sur renseignement d’un code commun à tous ses éventuels visiteurs. Du coup, au lieu de sortir la grosse artillerie avec un plugin, ma réponse a consisté à intégrer ce comportement dans un thème, d’autant que seul un blog était concerné…

Sésame, ouvre toi !

Cependant, ce principe de fonctionnement m’a légèrement ennuyé, car en l’état cela revient à ignorer les éventuels membres du blog et leurs privilèges pour leur servir cette demande de code d’invitation..

J’ai donc décidé d’un commun accord, que si l’utilisateur loggé était membre du blog, alors je lui économiserais cet étape ! Ainsi grâce à la condition current_user_can(‘read’), je sais si l’utilisateur est loggé et s’il est membre du site en question 🙂

functions.php

Comme d’habitude, direction ce script pour ajouter le code adhoc… J’utilise tout simplement un cookie afin de stocker le code d’invitation (le temps de la session) pour éviter de le redemander à l’utilisateur à chaque affichage et le comparer au code défini par l’admin du blog.

Bravo, le code d’invitation is all good 😉

Ajouter un sous menu au menu Apparence

Afin que cela soit plus simple pour l’admin, on ajoute un sous menu dans le menu d’administration du thème afin d’inclure le code qui stockera le code d’invitation dans les options du blog. Je ne détaille pas ici le code en question.. Mais vous le retrouverez dans le fichier zip du child thème 🙂

A+

2 réponses à “Seulement sur invitation !”

  1. Avatar de TheMyr34
    TheMyr34

    Super idée ! 😉

    1. Avatar de imath

      merci TheMyr34 🙂