通过wp_list_ages的自定义导航栏因博客滚动而中断

时间:2012-09-19 作者:tr3online

这个问题很简单。

我通过“阅读”将网站上的“博客”设置为mysite上的“博客”页面。com/blog。/blog 是分级的,因为它有子级。

我有一个自定义侧栏,通过中的函数包含functions.php 这包括(即:function get_right_sidebar() { include(\'sidebar_right.php) }; ). 我通过一个简单的函数列出所有页面和子页面:

function get_post_top_ancestor_id(){
    global $post;

     if($post->post_parent){
        $ancestors = array_reverse(get_post_ancestors($post->ID));
        return $ancestors[0];
    }

     return $post->ID;
}
之后是:

    <ul class="clearfix">
        <?php wp_list_pages( array(\'title_li\'=>\'\',\'include\'=>get_post_top_ancestor_id()) ); ?>
        <?php wp_list_pages( array(\'title_li\'=>\'\',\'depth\'=>1,\'child_of\'=>get_post_top_ancestor_id()) ); ?>
    </ul>
在实际页面模板中sidebar_right.php

现在,这个导航栏工作得很好,当我导航到基本级别时接受/blog. 侧边栏中没有显示任何内容。

在完成global $post; print_r($post)sidebar_right.php 我看到它将一篇文章列为查询,而不是页面(因此没有将子页面列在提要栏中)。

我试着在wp_reset_query, 但它什么也没做。

有人能推荐我应该怎么做才能在/blog 部分

谢谢

Tre公司

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

当博客在后端滚动时设置“页面”的问题是,它会自动将页面指定为“存档”。

为了解决这个问题,我删除了这个选项(即:将blog roll设置为--Select--)。我将页面设置为它自己的自定义模板,并创建了一个自定义查询提要,以便可以利用wp_reset_query(). 然后恢复了功能和我的右侧边栏导航。

结束

相关推荐

/blog/url是从哪里设置的?

我在建立网站时遇到了一个奇怪的问题。似乎/blog/url已经被保留或已经在使用,只是我还不能确定。我设置了一个名为“Blog”的新页面,并将永久链接设置为“/Blog/”。然后在“设置”=>“阅读”下,我将帖子页面设置为“博客”。然后我更进一步,设置了一个名为“tpl博客”的新模板。并将其分配到“博客”页面。在我输入了一些内容并进行了测试之后,它看起来不太对劲,我的文本没有一个在那里,标题显示了一个小写的“blog”。我做了更多的测试,发现它正在使用这个页面。php文件,而不是我的自定义tpl博客