X

Comment modifier le slug de l'URL de l'auteur

Extraits par IsItWP

Vous cherchez un moyen de changer le slug de l'URL de l'auteur ? Cet extrait modifiera le slug par défaut, mysite.com/author/name, en mysite.com/profile/name. Cependant, vous pouvez le changer pour tout ce que vous souhaitez.

Instructions :

  1. Ajoutez ce code au fichier functions.php de votre thème ou dans un plugin spécifique au site.
  2. Changez profile à la ligne 4 par le nom que vous souhaitez.
add_action('init', 'cng_author_base');
function cng_author_base() {
    global $wp_rewrite;
    $author_slug = 'profile'; // change slug name
    $wp_rewrite->author_base = $author_slug;
}

Remarque : Si c'est la première fois que vous ajoutez des extraits de code dans WordPress, veuillez consulter notre guide sur la manière de copier / coller correctement des extraits de code dans WordPress, afin de ne pas casser accidentellement votre site.

Si vous avez aimé cet extrait de code, n'hésitez pas à consulter nos autres articles sur le site tels que : 9 meilleurs outils de référencement pour augmenter le trafic de votre site Web, RAPIDEMENT !

Commentaires   Laisser une réponse

  1. Ni votre code ni le mien ne fonctionneront ! ! ! ! C'est énervant !……

    // Changer la base de l'auteur pour l'URL de l'auteur.
    function custom_author_base() {
    global $wp_rewrite;
    $author_slug = ‘@’; // Définir le slug de base de l'auteur sur ‘@username’
    $wp_rewrite->author_base = $author_slug;
    }
    add_action( ‘init’, ‘custom_author_base’ );

    // Réécrire l'URL de l'auteur vers une nouvelle structure d'URL.
    function custom_author_rewrite_rules( $author_rewrite ) {
    $author_new_rules = array(
    ‘@([^/]+)/?$’ => ‘index.php?author_name=$matches[1]’
    );
    $author_rewrite = array_merge( $author_new_rules, $author_rewrite );
    return $author_rewrite;
    }
    add_filter( ‘author_rewrite_rules’, ‘custom_author_rewrite_rules’ );

    // Rediriger l'ancienne URL de l'auteur vers la nouvelle structure d'URL.
    function custom_author_redirect() {
    if ( is_author() && strpos( $_SERVER[‘REQUEST_URI’], ‘/author/’ ) !== false ) {
    wp_redirect( home_url( str_replace( ‘/author/’, ‘/’, $_SERVER[‘REQUEST_URI’] ) ), 301 );
    exit();
    }
    }
    add_action( ‘template_redirect’, ‘custom_author_redirect’ );

  2. Bonjour, est-il possible de changer le slug de l'auteur uniquement pour les types de publication personnalisés en utilisant une condition if ?
    Merci

  3. Ces codes servent à changer la base de l'auteur, pas le slug de l'auteur.

    1. Ceci n'est pas pour les noms d'auteurs individuels, mais plutôt pour changer le slug /author/ en autre chose, comme /profile/. Le résultat final serait /profile/nomdelauteur

  4. Merci !!

  5. Merci beaucoup !!

  6. merci

  7. merci

  8. Vous vous souvenez de la question de Mike Kennedy ?
    Comment peut-on avoir seulement site.com/nom-auteur/ ?

    Si vous définissez author_slug = '' ;

    cela fonctionnera pour les pages d'auteur, mais dans mon cas, j'obtiens maintenant des erreurs 404 non trouvées pour les pages normales. Il semble qu'un slug d'auteur vide casse la réécriture pour les pages normales.
    Quelqu'un a une solution ?

    1. Ce que vous pourriez essayer, c'est d'aller dans « Permaliens » dans les paramètres, puis de cliquer sur « Enregistrer les modifications » pour vider les règles de réécriture.

  9. How to change author url base on your WordPress site October 2, 2013 at 10:30 am

    […] à Kevin Chard pour le cool […]

  10. J'ai pu modifier la structure des permaliens d'auteur_base avec un code similaire à celui ci-dessus, mais j'ai créé un rôle personnalisé et je me demande si je pourrais avoir 2 author_base différents basés sur le rôle de l'utilisateur. La structure par défaut pour les administrateurs, les auteurs, etc. (/author/nomdutilisateur) et une autre pour le nouveau rôle utilisateur (/gift-registry/nomdutilisateur).

    Ryan

  11. Merci !

  12. @wpsnipp:disqus est-il possible de créer des slugs d'auteur personnalisés basés sur les rôles des utilisateurs ?

  13. ajoutez $wp_rewrite->flush_rules()
    à la fin de la fonction, cela fonctionnera sans 404 🙂

    1. merci mec

  14. J'ai placé ceci dans functions.php et cela a changé le slug, cependant j'obtiens un 404 lorsque je visite le nouveau slug. Des suggestions ? Merci

    1. Salut Zach, si vous continuez à avoir des problèmes, vous pourriez essayer ce plugin car vous ne devriez avoir aucun problème.

      http://wordpress.org/extend/plugins/author-slug/

      1. Salut Kevin,

        Merci pour la suggestion. Cependant, j'ai vu ce plugin et j'aimerais savoir comment l'utiliser sans plugin - je construis un très grand site et j'essaie de réduire le nombre de plugins.

        Merci,
        Zach

        1.  Salut Zach, vous pourriez simplement retirer le code du plugin et le placer dans votre functions.php et cela fonctionnera très bien.

        2. Pour toute autre personne ayant le même problème... vide simplement les permaliens (Aller dans Paramètres->Permaliens les vide)

Ajouter un commentaire

Nous sommes heureux que vous ayez choisi de laisser un commentaire. N'oubliez pas que tous les commentaires sont modérés conformément à notre politique de confidentialité, et tous les liens sont nofollow. N'utilisez PAS de mots-clés dans le champ nom. Ayons une conversation personnelle et significative.

Liste de contrôle de lancement WordPress

La checklist ultime pour lancer un WordPress

Nous avons compilé tous les éléments essentiels de la liste de contrôle pour le lancement de votre prochain site Web WordPress dans un ebook pratique.
Oui, envoyez-moi l'eBook gratuit !