搜索功能-包括日期、类别和作者搜索

时间:2020-07-08 作者:Maartje

当您使用默认的WordPress搜索功能时,您只能搜索标题,因此如果您键入标题,您搜索的帖子将显示在结果中。我想通过搜索日期、类别和作者来扩展这一点。

我试图查找它,但我主要发现的是在日期范围之间搜索或构建自定义搜索页面。然而,这并不是我想要实现的目标。我只想要一个普通的搜索栏?s=我在url中搜索,以便能够同时搜索这三件事。

这是否可能以某种方式扩展,或者我真的需要为此构建一个自定义搜索页面?

谢谢

2 个回复
SO网友:Ben

默认情况下,WordPress搜索为应该搜索任何内置WP内容的WP帖子和页面提供了类似omni的搜索功能。这可以通过Relevanssi等插件进一步扩展。

但是,如果我理解正确,您可以创建一个自定义搜索表单,您可以在其中指定可用于搜索的字段。

首先,您可以在主题的根目录中创建一个名为mysearch-searchform.php. 这只是一个HTML表单,所以无论您输入什么,理论上都可以。我必须知道的是,有一个隐藏字段可以告诉WP您要在其中搜索的帖子类型。因此,您可以使用以下内容:

<input type="hidden" name="search" value="mycpt">

仅搜索新闻帖子。因此,您现在有了自定义搜索表单,您可以使用以下方法在主题中调用该表单:

<?php get_template_part( \'mycpt\', \'searchform\' ); ?>

因此,您有自己的自定义表单,它将输出到您的页面上。现在您需要处理结果。为此,您将functions.php 其中,根据使用的搜索表单,我使用以下函数告诉WP要加载的结果文件:

function load_search_template_results(){
    if(isset($_GET[\'search\'])) {
        if( $_GET[\'search\'] == \'mycpt\' ) {
            load_template( locate_template( \'mycpt-search-result.php\' ));
        } else {
            load_template( locate_template( \'search.php\' ));
        }
    }
}
add_action(\'init\',\'load_search_template_results\');
页面mycpt-search-result.php 只是一个wp\\u查询循环,根据需要循环post数据以适应您的设计。

希望这能让你走上正轨。

SO网友:Az Rieil

使用默认的WordPress搜索功能时,只能在标题上搜索

WP\\U查询支持多参数搜索。包括作者、日期、类别。你可以检查它是如何工作的WP_Query->parse_queryWP_Query->get_posts 并构建您的请求,如

/?s=some&author=1&year=2020&monthnum=10

相关推荐

How to make a search form?

我在wordpress上迈出了第一步,新手。我发现我想制作一个具有自己风格的搜索表单,并使用一点javascript来重新标注尺寸。因此,我不知道应该如何从几个方面着手。使用get\\u search\\u form()方法检查和更改其样式是否更好?比如搜索字段类或html5 searchform<如果我的表单将有(许多)更改,那么从头开始创建自己的表单更好吗?如果最好使用get\\u search\\u form(),我会直接检查和更改样式吗?或者我是否支持html5并更改其样式?或者有没有办法将