wordpress教程:修改作者的url避免暴露wordpress用户名
wordpress的所有用户都有一个作者归档页,这个页面会将该用户名发布的所有文章显示出来,但是默认的作者归档页会暴露该用户的用户名,特别是管理员,所以我们要修改作者归档页的默认url。
默认的作者归档页url
默认的作者归档页的url是域名/author/用户名/,用户名直接显示在了地址栏中,而经过修改,用户名就变成了用户id,这样就避免了暴露用户名。
修改url的代码
将以下代码粘贴到你的主题functions.php文件中,然后清除所有缓存。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
add_filter(‘author_link’, ‘author_link’, 10, 2);
function author_link( $link, $author_id) {
global $wp_rewrite;
$author_id = (int) $author_id;
$link = $wp_rewrite->get_author_permastruct();
if ( empty($link) ) {
$file = home_url( ‘/’ );
$link = $file . ‘?author=’ . $author_id;
} else {
$link = str_replace(‘%author%’, $author_id, $link);
$link = home_url( user_trailingslashit( $link ) );
}
return $link;
}
add_filter(‘request’, ‘author_link_request’);
function author_link_request( $query_vars ) {
if ( array_key_exists( ‘author_name’, $query_vars ) ) {
global $wpdb;
$author_id=$query_vars[‘author_name’];
if ( $author_id ) {
$query_vars[‘author’] = $author_id;
unset( $query_vars[‘author_name’] );
}
}
return $query_vars;
}
|