如何替换WordPress显示的搜索结果?

时间:2011-08-18 作者:Wipqozn

我正在开发一个插件,该插件将使用自定义XML提要的结果覆盖Wordpress返回的搜索结果。但是,我不打算在单独的页面上执行此操作,而是用我的XML提要中的结果替换Wordpress通常显示在博客搜索页面上的结果。

我找不到允许我截取或覆盖wordpress返回结果的过滤器或挂钩,也找不到允许我覆盖页面上显示内容的过滤器或挂钩。我的第一个想法是寻找类似the_content, 但我找不到任何类似于这种情况的东西。

该插件将由销售人员使用,因此该插件的工作方式需要安装人员尽可能少的工作和技术知识。我之所以希望覆盖结果而不是插入新的小部件,是因为我希望插件使用与主题默认使用的搜索表单相同的搜索表单。

这可能吗?如果是这样的话,我该怎么做呢?

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

您可以使用template\\u include filter hook检查当前调用是否为搜索调用,如果是,请包括您自己的模板,您可以在其中执行任何您想要的操作:

add_filter(\'template_include\',\'my_custom_search_template\');

function my_custom_search_template($template){
    global $wp_query;
    if (!$wp_query->is_search)
        return $template

    return dirname( __FILE__ ) . \'/my_search_template.php\';

}

结束

相关推荐

Custom post_type search pages

因此,我的网站上有一个专门搜索YouTube视频自定义帖子类型的部分。我完全可以搜索自定义类型。然而,我不确定如何创建一个具有针对这种类型搜索的自定义格式的搜索页面。我在youtube上创建了一个自定义循环。php并在搜索中修改。phpget_template_part( \'loop\'); 到get_template_part( \'loop\', \'youtube\'); 但是,它会全局影响搜索结果。是否有创建自定义搜索的方法。特定post\\u类型的php页面?谢谢你的帮助。