php - 通过元数据进行 WordPress 搜索

标签 php wordpress search

这是我想要实现的目标:

我有一个自定义搜索表单来根据各种元数据搜索帖子。

此代码包含 WordPress 搜索的设置:http://pastebin.com/5dj16Atj 对自定义字段的引用都在其中。

上面的文件中引用了此代码,其中包含自定义搜索表单的实际布局: http://pastie.org/private/yebozm9kaqazywkilr8fkq

我的主要问题是自定义搜索表单中只有 3 个字段有效,即:价格范围和面积。其余字段(例如属性类型 (srch_ptype)、年龄 (srch_age) 和城市)不会作为搜索条件显示。我希望所有字段都能发挥作用,并在人们搜索时作为标准包含在内。 请查看这两个文件,看看我出了什么问题。

非常感谢。

编辑: adomnom 很友善地建议我使用 wp_query 进行搜索。如果有人能告诉我如何将搜索表单与查询连接起来,我将不胜感激。

最佳答案

我对此表示赞同。我建议查看get_posts()query_posts() ,甚至用特殊的钩子(Hook)覆盖默认的 WordPress 搜索。

你应该能够做类似的事情......


定义搜索参数(更多信息请参见 WP_Query Page )并运行

$searchArgs = array(
    'post_type' => 'post',
    'meta_query' = array(
        'relation' => 'AND',
        array( 'key' => 'srch_age',   'value' => $_REQUEST['srch_age'] ),
        array( 'key' => 'srch_ptype', 'value' => $_REQUEST['srch_ptype'] )
        // ... Add as many other criteria as you need
    )
);

query_posts( $searchArgs );
while( have_posts() ): the_post();
...

关于php - 通过元数据进行 WordPress 搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10774547/

相关文章:

php - 使用 jquery load 事件填充下拉列表

php - 递归记录

php - 具有云存储的 Google App Engine 无法在本地运行

php - WordPress have_comments 不起作用

Android在ListFragment中实现搜索

javascript - JQuery Datepicker 删除已填充的日期字段

php - Laravel "Target [Illuminate\Contracts\Bus\Dispatcher] is not instantiable."

php - 如何在 foreach 循环内划分数组结果?

java - 数据结构ArrayList中的高效搜索

eclipse - 在 Eclipse 中搜索 *.class 文件