Si je mets une page en privé, puis-je lui faire afficher un message au lieu d’une page 404 pour les utilisateurs publics?
C'est difficile, car montrer quelque chose nécessiterait que la page ne soit pas privée.
Il est plus courant de laisser la page publique, mais de la faire produire une sortie conditionnelle selon que l'utilisateur est connecté ( is_user_logged_in()
) ou à un autre critère.
J'utilise ceci:
if ( current_user_can('read_private_pages') )
Avec cette condition, seuls les administrateurs et les éditeurs peuvent afficher le contenu de la page.
Je suis d'accord avec Rarst. À moins que vous n'utilisiez une sortie conditionnelle, vous devrez trouver comment annuler ce que fait le Core avec les URL pour les publications privées. Sinon, un utilisateur non connecté obtiendra le 404.
Aller avec is_user_logged_in()
prendra soin de ce dont vous avez besoin.