仅在WordPress管理中才会出现父页面插件问题

时间:2012-04-19 作者:nickast

我使用的是permalink结构:

/%类别%/%postname%/以便在我的url中显示其类别下的我的博客文章。

我还安装了yoast的WordPress SEO(如果有帮助的话),但我注意到,当我发布页面并选择父页面时,管理中的URL变成:

http://www.mysite.com/current-page/current-page/ 而不是:http://www.mysite.com/parent-page/current-page/.

然而,我从网站上查看网页的url是正确的。只有在管理员中才会出现这个问题,这对客户端来说非常令人沮丧。

有没有人经历过同样的问题?我绝望了,因为我已经找了这么多天了,我根本没有找到任何解决办法。

如果你想让我提供任何其他信息,我将非常乐意这样做!!

提前感谢您!

1 个回复
SO网友:offroff

编辑这里有另一个解决方案,可以避免弄乱“编辑slug”按钮。

wp\\u admin/includes/post中的函数get\\u sample\\u permalink\\u html。php输出示例permalink和编辑按钮。可以按如下方式进行过滤:

add_filter(\'get_sample_permalink_html\',\'my_sample_permalink\',10,2);
function my_sample_permalink ($page_link,$id){
    $page = get_page($id);
    if($page->post_type == "page" && $page->post_parent) {
        $parent = get_page($page->post_parent);
        $page_link = preg_replace("/(sample-permalink\\">).*?(<)/","$1".home_url(\'/\').$parent->post_name."/$2",$page_link);
    }
    return $page_link;
}
我不能说我喜欢这个解决方案,但也许它对你有用。

结束

相关推荐

widgetlogic and permalinks

我试图使用widgetlogic在某些页面上有条件地显示菜单。每个菜单都使用如下标记is_page(array(\"Page Name\", \"Page Name 2\" ...)), 在我尝试更改permalinks之前,它一直工作得很好(因此所有菜单都会从各自的页面中消失)。我做错什么了吗?是否有解决方法?