Changement permalien auteur
-
16-10-2019 - |
Question
Les urls d'origine pour les utilisateurs ressemblent /author/login/
Est-il possible de remplacer la connexion par l'id utilisateur?
Dans mes urls de rêve devrait devenir à /users/34/
(34 est id utilisateur).
Merci.
La solution
vous avez besoin 3 fonctions simples et crochets
premier changement de la base de l'auteur:
//change author/username base to users/userID
function change_author_permalinks() {
global $wp_rewrite;
// Change the value of the author permalink base to whatever you want here
$wp_rewrite->author_base = 'users';
$wp_rewrite->flush_rules();
}
add_action('init','change_author_permalinks');
puis ajoutez les utilisateurs à query_vars:
add_filter('query_vars', 'users_query_vars');
function users_query_vars($vars) {
// add lid to the valid list of variables
$new_vars = array('users');
$vars = $new_vars + $vars;
return $vars;
}
puis ajoutez la nouvelle règle de réécriture:
function user_rewrite_rules( $wp_rewrite ) {
$newrules = array();
$new_rules['users/(\d*)$'] = 'index.php?author=$matches[1]';
$wp_rewrite->rules = $new_rules + $wp_rewrite->rules;
}
add_filter('generate_rewrite_rules','user_rewrite_rules');
Maintenant, si vous ne savez pas comment l'utiliser, il suffit de copier tout le code et collez-le dans le fichier functions.php de votre thème.
Autres conseils
Vous pouvez utiliser une règle htaccess pour réécrire / utilisateurs / 34 /? Author = 34
Je construit un plugin pour le faire. Un ami a voulu cacher son URL de l'auteur est comme il n'a pas aimé le fait qu'ils affichaient les noms d'utilisateur de son auteur. Je décide d'aller plus loin et permettre à tout utilisateur de définir leur propre URL. Il réoriente leurs vieilles pages de l'auteur. https://wordpress.org/plugins/wp-custom-author-url/