马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
修改方法在主题 functions.php 中加入以下代码: - /**
- * 修改url重写后的作者存档页的链接变量
- */
- 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;
- }
- /**
- * 替换作者的存档页的用户名,防止被其他用途
- * 作者存档页链接有2个查询变量,
- * 一个是author(作者用户id),用于未url重写
- * 另一个是author_name(作者用户名),用于url重写
- * 此处做的是,在url重写之后,把author_name替换为author
- */
- 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;
- }
修改管理员ID编号最直接的方法是操作数据库,在修改之前请先备份好数据库。WordPress 储存用户数据是在 wp_users 和 wp_usermeta 两个表中(wp_ 为数据库前缀),我们需要直接修改这两个表中的数据。除此之外,我们还必须修改文章作者的 post_author,不然就会导致文章作者信息出错;因为评论也会记录已登录的作者 user_id,所以评论的用户 ID 也要一起修改。综上所述,我们大致需要执行下面几条 SQL 语句:(记得修改为自己的数据库前缀) - UPDATE wp_users SET ID = 2 WHERE ID = 1;
- UPDATE wp_usermeta SET user_id = 2 WHERE user_id = 1;
- UPDATE wp_posts SET post_author = 2 WHERE post_author = 1;
- UPDATE wp_comments SET user_id = 2 WHERE user_id = 1;
SQL 执行后的效果为:把用户 id=1 修改成 id=2。 当然如果你还有其它插件或功能关联过用户 ID,那么修改方面同样很简单,找到对应的数据表,然后将字段对应做修改就可以了,因为子凡做二次开发的时候就是这样,以上 SQL 语句只是一个最基本的修改。
|