Changer le permalien de l'auteur

4

Les URL d'origine des utilisateurs ressemblent à /author/login/

.

Est-il possible de remplacer le nom de connexion par l'identifiant de l'utilisateur?

Dans mon rêve, les URL devraient devenir /users/34/ (34 est l'ID utilisateur).

Merci.

    
posée ilovewordpress 29.03.2011 - 00:01

2 réponses

6

vous avez besoin de 3 fonctions simples et crochets

changez d'abord 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');

ajoutez ensuite des 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;
}

ajoutez ensuite 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 utiliser cela, copiez tout le code et collez-le dans le fichier functions.php de votre thème.

    
réponse donnée Bainternet 29.03.2011 - 02:25
0

Vous pouvez utiliser une règle htaccess pour réécrire / users / 34 en /? author = 34

    
réponse donnée AutoBlogged 29.03.2011 - 00:20

Lire d'autres questions sur les étiquettes