Archive

Articles taggués ‘erreur 500’

WordPress: publier des articles et des pages privés (part 1)

22/03/2010 35 commentaires

J’ai eu aujourd’hui besoin de faire une maquette pour un nouveau site, destiné à un public à accès restreint et authentifié. Voyons voir ce que WordPress propose en standard…

De la visibilité des articles et des pages

Pour commencer, je me suis intéressé à la propriété de publication des articles et des pages : la visibilité.

public_prive

Les articles étant par défaut en « public« , essayons tout d’abord « Protégé par mot de passe« . Bon, autant vous dire que c’est totalement inutilisable.

Passons à la suite, « Privé« . Ça s’annonce mieux dans l’esprit. l’article marqué ainsi est invisible lorsque l’on est pas connecté.

L’administrateur le voit bien sûr, mais quid d’un membre du site non administrateur ?

Mais avant d’aller plus loin, je tombe sur un os de taille. En fait un blocage rédhibitoire : passez une page en mode « privé » et CRACK! le site est cassé, un superbe redirection vers Free.fr avec la classique page « Erreur 500« … Mais que s’est -il passé ? Et bien le fait d’enregistrer une page avec le statut « privé » à tout simplement généré un fichier .htaccess à la racine du site, et le code généré n’est pas autorisé chez Free.fr.

Donc retour à la sauvegarde – fin des tests en mode « privé« ….

Faites ce que je dis, pas ce que je fais…

En parallèle  je me suis mis à tester les rôles proposés par WordPress, associé à un article marqué comme « Privé ». Oui, je sais, je viens de dire que c’est inutilisable, mais bon, je voulais connaitre la corrélation avec les rôles WordPress.

Voici un petit tableau récapitulatif des rôles et de leurs effets sur un article « privé »

Permission – Rôle

Effet

Aucun rôle dans ce blog

L’utilisateur peut s’authentifier, mais il arrive sur
une page d’erreur : « Vous n’avez aucun droit ».

Abonné Les articles privés sont invisibles

Contributeur

Les articles privés sont invisibles
Auteur

Les articles privés sont invisibles

Editeur

Les articles privés sont visibles, mais les droits sont
trop élevés et avec ce rôle les membres peuvent modifier vos articles.
Administrateur Heu… il faut être inconscient pour mettre ses membres
administrateur, non ?

Visiblement, la solution n’est pas là.

Essayons de voir se qui se fait ailleurs…

Pourquoi réinventer la roue ? Voici une extension qui permet de masquer tout ou partie d’un article, visible seulement pour les membres connectés:
http://wordpress.org/extend/plugins/hidepost/

Pas mal, mais elle est très rudimentaire : ajout d’une balise dans le texte des articles.

Eurêka !

J’ai trouvé mon bonheur dans cette extension: wpnamedusers.
http://wordpress.org/extend/plugins/wpnamedusers/

reglagewp1Elle ajoute deux réglages dans l’administration du site :la création de groupe de permission, et l’ajout d’utilisateur (déjà existants) dans ces groupes.

Pour l’utiliser, il suffit ensuite de créer/modifier un article ou une page, et en bas des propriétés se trouve deux propriétés qui, si elles ne sont pas utilisées, laissent l’article ou la page en mode « public » classique. Si par contre vous choisissez de cocher un groupe d’utilisateur précédemment créé, l’article ou la page devient visible uniquement à ce groupe (et point de .htaccess sauvage en vue ;-) ). Même une recherche ne montrera pas l’article.

Seule petite modification est à apporter manuellement, afin d’empêcher les commentaires sur ces articles/pages à accès restreint d’apparaitre dans les commentaires récents du site à un visiteur anonyme. L’auteur l’a décrit dans son blog : http://wordpress.sundskard.dk/archives/119/comment-page-1

Dernier point, la désactivation de l’extension ne supprimera pas les trois tables qu’elle a créé à l’installation. Il vous faudra les supprimer manuellement dans l’administration SQL.

nouvelles_tables

La suite ?

Comme la dicussion associée le montre, cette extension à quelques lacunes, notamment lorsque de nouveaux articles sont publiés, il faut appliquer les permissions. De même, de nouveaux utilisateurs abonnés ne seront pas pris en compte automatiquement.

Mais il existe une alternative ! User Access Management, qui est détaillée dans ce second article à venir prochainement : WordPress: gérer un contenu privé pour ses abonnés (part 2)

WordPress: Erreur de page perso sur Free.fr

08/12/2008 10 commentaires

Il y a quelques jours, mon site WordPress hébergé chez Free est tombé en panne: « Internal Server Error 500″ . Il ne m’avait pas semblé avoir fait de manipulation destructive, mais voilà, le site ne marchait plus. L’accès FTP fonctionnait toujours, ainsi que le console d’administration phpMySQL. Par contre, plus aucun accès en http, quelle [...]