SF Author Url Control est un plugin que je vient de créer pour personnaliser l’url des pages auteur de WordPress. La base /author
de l’url est éditable, ainsi que l’identifiant de chaque utilisateur.
Ce que fait le plugin
Une fois le plugin installé et activé, aller dans Réglages > Permaliens pour découvrir un nouveau champ permettant de modifier la base de l’url (par défaut : /author
). Le plugin vérifie que le terme rentré n’est pas déjà utilisé ailleurs (comme les mots tag, category, l’url d’une taxonomie, etc).
Ensuite, aller dans Utilisateurs puis dans la page d’édition d’un utilisateur. Un nouveau champ en bas de page permet de modifier l’identifiant dans l’url (ça ne change pas son login hein ;)). Le plugin vérifie bien sûr qu’un tel identifiant n’existe pas déjà.
Pour accéder à ce champ, l’utilisateur doit avoir le droit « edit_users ». En d’autres termes, seul un administrateur pourra voir et modifier ce champ.
Ce changement d’identifiant a en plus un caractère sécuritaire. En effet si mon Login est « Terminator », l’identifiant apparaissant dans l’url de mon profil sera « terminator »… Voilà qui rend la tâche beaucoup plus facile lorsque l’on veut pénétrer dans un site sans y être invité.
Ainsi, l’url par défaut www.screenfeed.fr/author/terminator/ peut devenir www.screenfeed.fr/jedi/obiwan/.
Un petit plus : dans la liste des utilisateurs, une nouvelle colonne « Identifiant d’url » apparait (désactivable) et indique… (wait for it)… l’identifiant d’url de chaque utilisateur. Un administrateur aura droit à un marquage supplémentaire :
– si l’identifiant est noir, il s’agit de celui par défaut.
– s’il est vert c’est qu’il a été modifié.
Configuration
Installation minimale : Aucune idée en fait. Testé sur 3.3.1 et 3.4b2. (je pense qu’en 3.0 ça passe)
Langues : anglais et français
Compatible Multisite (prise en compte également du préfixe /blog
pour le site principal)
WordPress Plugin Directory : SF Author Url Control
Côté perfs :
– Front-end : aucun impact, juste un set de variable à l’init, et 3 define de constantes.
– Back-end : négligeable. Pas de javascript ou de CSS ajoutés, juste le strict nécessaire aux bons endroits.
Note de l’auteur : « Yeah! Le 50ème article du blog ! »
Commentaires
Commentaire de Geoffrey @ Geoffrey.Crofte.fr.
Trop bien !
Je te le pique !
Merci pour ton travail Greg :)
Commentaire de Greg.
You’re welcome.
C’est la faute à Steph ça, c’est elle qui m’a donné l’idée -_-‘
Commentaire de Pascal.
Bonjour,
Merci pour votre site, et pour ce plugin en particulier ! Je me demandais s’il serait pas possible de ne rien avoir du tout comme « author base ». C’est à dire que la page d’un auteur soit du type :
http://www.mon-url.com/Prénom-Nom
Bien utile comme plugin en tous cas ! merci pour le travail !
A +
Commentaire de Greg.
Bonjour,
Je n’ai jamais tenté mais je ne pense pas que ce soit possible à mon avis. Le plugin ne le permettra pas en tout cas.
A+
Commentaire de Fulgence.
J’aimerais beaucoup forcer cette possibilité pour des raisons SEO … peut-être une idée ?
merci pour ce plugin en tout cas …
Commentaire de Geoffrey @ Geoffrey.Crofte.fr.
Hello,
J’ai testé sur une installation pas tout à fait propre de WP en renseignant un « . » (point) en guise de slug pour les pages author. J’obtiens un message de confirmation de la prise en compte du nouveau slug, mais le point n’apparait pas.
Ensuite j’essaye de renseigner un nom « poney » ici (va savoir pourquoi), et :
« ERREUR: Ce préfixe des pages auteur est déjà utilisé ailleurs (pour une page d’archive de contenu personnalisé). Merci d’en choisir un autre. »
Pourtant promis je n’ai pas de CTP « poney », ni « kikoo » ou « hop », pourtant j’ai toujours le même message.
J’ai installé en parallèle ton plugin d’archive des CPT (la dernière version)… il semblerait que ce soit ce plugin la cause du problème. En le désactivant (oui, juste désactivé) je peux ensuite éditer le champ dans les réglages de permaliens. Si je réactive le plugin d’archive des CPT je ne peux plus éditer ce même champ.
Bon courage ! :p
Commentaire de Greg.
« J’ai testé sur une installation pas tout à fait propre de WP en renseignant un « . » (point) en guise de slug pour les pages author. J’obtiens un message de confirmation de la prise en compte du nouveau slug, mais le point n’apparait pas. »
Ok, c’est normal qu’il n’apparaisse pas car le champ est sanitizé, les points sont virés. Par contre j’ai dû faire cette sanitization trop tard, après les vérifications je suppose. Je corrigerais.
Hmmm… T’es tombé sur un poney assez vicieux je trouve :/
Pourtant, sur les 3 installations où j’ai testé le plugin, SF Archiver était installé et je n’ai pas eu ce problème.
Je vais jeter un œil là-dessus, mais si je n’arrive pas à reproduire le bug je vais avoir du mal à savoir d’où il vient. Bon, restons confiant ^^
Merci pour ce retour de bugs :)
[edit] Je viens de tester avec un point. Le comportement est normal. Le point est viré et le champ est considéré vide, donc la base « /author » par défaut est prise. Une amélioration serait de mettre en place un message pour ce cas précis (valeur du champ qui devient vide après sanitization).
Commentaire de Greg.
@Geoff.
Qu’entend-tu par « je ne peux plus éditer ce même champ » ?
Je viens de faire pas mal de tests sur différents sites et… rien. Je n’arrive pas à reproduire le bug :(
Commentaire de Geoffrey @ Geoffrey.Crofte.fr.
J’entends par là que je peux modifier la valeur du slug pour les pages author, mais lors de la validation j’ai le message d’erreur mentionné dans mon précédent commentaire, et le slug reste le même, il n’est pas changé.
Je refais des tests sur une autre installation ;)
Commentaire de Greg.
Ok c’est bien ce que j’avais compris alors.
Au début je me suis dit que tu avais peut-être laissé dans un coin un bout de code qui créé un CPT « poney » juste pour tester quelque chose, puis oublié de l’enlever. Mais ça n’expliquerait pas que ça refuse les autres valeurs. Donc hypothèse à écarter.
Pour la vérification des CPTs je fais 2 tests :
– L’un va chercher s’il existe un CPT avec la base auteur comme has_archive (c’est le cas qui nous intéresse) pour les pages archives,
– L’autre va chercher les CPTs ayant le slug du rewrite identique à notre base auteur.
Je ferais des tests plus poussés du côté du has_archive, j’ai forcément dû louper un truc pour avoir un tel bug.
Commentaire de Geoffrey @ Geoffrey.Crofte.fr.
Bonne nouvelle, ou pas… je n’ai pas réussi à reproduire le bogue. Fausse alerte ou cas isolé…
J’espère ne pas t’avoir fait perdre inutilement du temps :s
En tout cas tu as un code super propre ! Bravo !
Encore merci pour ce plugin Greg !
Commentaire de Greg.
You’re welcome :)
Commentaire de Jerome.
Bonjour,
je viens d’installer ton plugin, il est excellent. Je trouve vraiment « tordu » que WordPress affiche le login de l’utilisateur dans la page auteur et dans la feuille de style sous forme de class pour les commentaires ! Grosse faille de sécurité. Ton code apporte une solution à ces deux problèmes ;) Bravo.