1

我的网站上有一个 Wiki 部分,我想修改 WordPress 的本地搜索,使其仅搜索此 Wiki 中的页面,或者换句话说,仅搜索第 278 页的子页面。我已经成功地列出了带有 wp_list_pages 和参数“child_of”的给定页面的子页面,所以我一直在尝试类似的东西。到目前为止的两次尝试:在搜索页面中......

<?php if ( have_posts(array('child_of'=>278)) ) : ?>
...
<?php while ( have_posts(array('child_of'=>278)) ) : the_post(array('child_of'=>278)) ?>

或者在我的函数文件中......

function SearchWikiPages($query) {
    if ($query->is_search) {
        $query->query_vars['child_of']=278;
    }
    return $query;
}
add_filter('pre_get_posts','SearchWikiPages');

到目前为止没有运气。如果有人知道我该怎么做,请帮忙。如果插件能满足我的需要,我不会反对使用插件或任何其他创造性的解决方案。谢谢!

4

1 回答 1

0

你的方法应该有效;问题似乎与使用child_of. 我不认为这是一个参数可以理解(在CodexWP_Query中没有提到)。

更换

$query->query_vars['child_of']=278;

$query->set('post_parent', 278);

为我工作。

于 2012-07-27T11:40:56.047 回答