如何防止默认主页重写到静态页面

时间:2015-04-14 作者:josh

我正在寻找一种方法来防止默认行为(当您将静态页面设置为网站主页或“frontpage”(在settings>reading>front page displays );

我想要domain.com/ 页面指向此处(实际上),但如果我创建了一个页面home, 否则会住在domain.com/home Wordpress自动重定向到domain.com, 所以没有办法参观和停留domain.com/home.

有人知道如何/在哪里做这件事吗?我试过调查php$_SERVER 变量并试图更改重写规则,但我在其中找不到与这种情况可靠匹配的规则。(对于带有homeid, 但我无法可靠地确定这一目标(我认为这实际上是路由domain.com/ -> domain.com/home.)

为了重申(也许是澄清),如何使wordpress“frontpage”在域根目录下可用(默认和有效),但也在页面的默认永久链接上可用。。。

2 个回复
最合适的回答,由SO网友:TheDeadMedic 整理而成

重定向是由于redirect_canonical() - 我们可以使用一个过滤器快速进入并在首页禁用它:

function wpse_184163_disable_canonical_front_page( $redirect ) {
    if ( is_page() && $front_page = get_option( \'page_on_front\' ) ) {
        if ( is_page( $front_page ) )
            $redirect = false;
    }

    return $redirect;
}

add_filter( \'redirect_canonical\', \'wpse_184163_disable_canonical_front_page\' );
现在您可以从根目录访问首页and 这是slug,没有重定向。

SO网友:Bysander

如果我理解正确,你只需要domain.com/home 也要显示您的主页?只需在名为home 与您的/wp-content

将其命名为索引。php

?php
    header("Location: http://domain.com");
    exit();
?>

结束

相关推荐

Change Taxonomy Permalinks

我有自定义帖子,我创建了一个显示所有自定义帖子的页面。示例:www.example.com/archive-page我想知道是否可以更改与此自定义帖子相关的类别和标签的永久链接。现在我有:www.example.com/my-custom-post-type-cats/my-category-1www.example.com/my-custom-post-type-tags/my-tag-1</我想要这样的东西:www.example.com/archive-page?category=1www.e