博客安装在子目录中,但需要在根目录下创建页面。如何使用永久链接?

时间:2013-09-12 作者:Michelle

我们的公司博客安装在/blog. 我们的permalink结构是/%postname%/ 所以帖子现在看起来像https://www.domain.com/blog/post

我们被要求发布一系列指南,这些指南必须安装在/buying-guides/ e、 g。https://www.domain.com/buying-guides/kittens i、 e.在WordPress文件夹之外。

我认为答案是简单地创建一个名为“购买指南”的页面,然后在儿童时期为每个指南创建一个页面。然后,我们会得到如下URLhttps://www.domain.com/blog/buying-guides/kittens. 然后我创建了一个.htaccess 根文件夹中的规则

RewriteRule ^buying-guides/(.+)$    /blog/$1 [L,NC]
而且它似乎工作得很好!直到我意识到这一点,WordPress显然没有意识到重写。例如,我们使用the_permalink() 函数在我们的页面标题中生成链接,现在显然生成了错误的链接(虽然它仍然可以工作,但我们不希望客户看到任何关于/blog/ 浏览购买指南时。

以上问题有没有好的解决方案?也许在页面呈现之前,过滤器会自动更改所有URL/blog/buying-guides//buying-guides/?

任何帮助都将不胜感激!

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

您是否尝试使用the_permalink() filter hook?

add_filter(\'the_permalink\', \'remove_blog\');
function remove_blog($url) {
    //only affects the permalink of pages
    if(is_page()){
        return str_replace(\'blog/\', \'\', $url);
    }
    return $url;
}
结合中的当前重写规则。htaccess根目录。

结束

相关推荐