WordPress-在将作者页面重定向到首页时添加斜杠

时间:2018-12-18 22:06:59

标签: wordpress url-redirection

我有两次安装Wordpress,一次安装在根目录(例如www.example.com),另一次在文件夹中(例如www.example.com/ask /)。

我已经将所有作者页面都重定向到了第一个页面的根目录,但是第二个页面却以例如www.example.com/ask结尾(注意没有尾部斜杠)。作为一种解决方法,然后我为此添加了重定向,例如www.example.com/ask/,但是连锁店并不理想。

如何使用此代码:

function disable_author_page() {
    global $wp_query;
    if ( $wp_query->is_author ) {
        wp_safe_redirect( get_bloginfo( 'url' ), 301 );
        exit;
    }

}
add_action( 'wp', 'disable_author_page' );

..并在末尾添加斜线吗?

谢谢!

更新:这行得通吗?

function disable_author_page() {
    global $wp_query;
    if ( $wp_query->is_author ) {
        wp_safe_redirect( $path = trailingslashit( get_bloginfo( 'url' ) ), 301 );
        exit;
    }

}
add_action( 'wp', 'disable_author_page' );

1 个答案:

答案 0 :(得分:1)

尝试使用此:

$url = home_url( '/' );
$redirect_url = esc_url( $url );

wp_safe_redirect( $redirect_url, 301 );

get_bloginfo('url')是home_url()的包装函数,参考:https://codex.wordpress.org/Function_Reference/home_url

如您在示例中所见,它将在URL的末尾添加斜杠。因此,您的最终功能将如下所示:

function disable_author_page() {
    global $wp_query;

    if ( $wp_query->is_author ) {
       $url = home_url( '/' );
       $redirect_url = esc_url( $url );

       wp_safe_redirect( $redirect_url, 301 );

       exit;
    }

}

add_action( 'wp', 'disable_author_page' );

希望这有帮助=)