2011
jan
7





WordPress : Publier des vidéos embed en auteur

Depuis quelques semaines, un nouveau rédacteur "Neokyo" m'offre son aide dans la rédaction d'article sur mon blog d'actualité smartphone TouchMobile.fr.

touchmobile

Celui-ci m'a récemment soumis un problème, il n'arrivait pas à publier de vidéo dans ses actualités. Pensant que le problème venait de chez lui, je publiais jusqu'à aujourd'hui les vidéos pour lui. Pourtant, le problème étant persistant, je me suis décidé à me pencher sur le sujet.

Après une brève recherche, il s'avère que ce problème est dû à une restriction du code html pour les utilisateurs ayants le rôle "auteur". Les éditeurs et administrateurs ne sont donc pas concernés par ce problème et WordPress ne permet pas d'origine une gestion des rôles très avancées.

La solution souvent proposée afin de palier à ce problème est d'utiliser l'extension WordPress Role Manager. Mais n'ayant pas envi de passer par un plugin juste pour ce petit problème, j'ai trouvé une solution plus simple à mon goût.

En effet, dans wordpress énormément de fonctionnalités peuvent être gérées depuis le fichier functions.php de votre template (par exemple dans mon cas, il fait pas loin de 130 lignes).

Sans plus attendre, voici la solution en deux petites lignes pour désactiver le filtrage html pour les auteurs qui leurs permet notamment de publier des vidéos <object><embed></embed></object>.

Dans le fichier functions.php de votre template, ajoutez les lignes ci-dessous :

// Récupérer le rôle auteur
$role = get_role( 'author' );


// Autoriser le code html pour ce rôle
$role->add_cap( 'unfiltered_html' );

Problème réglé :D

3 Comments to “WordPress : Publier des vidéos embed en auteur”

  • Ada 10 avril 2012 à 0 h 25 min

    Error parse ! Super méthode dis !! Heureusement que j’ai pu remodifier le code ;) sorry mais ca fonctionne pas ! tu pourrais donner un peu plus de détails dans ton tuto ! genre Ou placer le code !

  • Alexandre 15 avril 2012 à 15 h 17 min

    J’utilise ce code dans la dernière version de mon template : http://www.touchmobile.fr/ qui utilise lui-même la dernière version de WordPress.

    Donc avant de me reprocher le fait que ça fasse planter ton site ou de dire que ça ne fonctionne, faut-il encore maîtriser un minimum le php ? Je veux bien faire du SAV mais quand c’est dit plus gentillement c’est plus agréable.

    Bref, un simple copier/coller de ce bout de code ne fonctionnera pas, il faut penser à ouvrir et fermer avec les balises php qui vont bien. Après je ne connais pas ton niveau. Où placer ce code ? Je le dis dans l’article « Dans le fichier functions.php de votre template ».

  • Pierre 24 juin 2012 à 17 h 58 min

    Un grand merci à toi ! ça marche parfaitement, et mes rédacteurs se plaignaient de se soucis depuis 2 semaines. Je me demandais d’où venait le soucis. Merci encore.

Poster un commentaire

Mes tweets

Mes sites

Sites amis