创建高级搜索我在创建自定义查询高级搜索和使用$wpdb->get_results($query , OBJECT);
问题使用查询
在WordPress的普通搜索时,我们搜索xxx yyyy
或搜索yyyy xxx
我们有相同的结果,它是一个好问题。 但是,当我被迫使用查询来创建高级搜索时,搜索字段中的单词序列是重要的,并且进一步xxx yyyy
或搜索yyyy xxx
不是相同的结果。 我想用一个例子说: 我创建两个输入字段之一为标题和另一个作者的我的帖子(作者仅是一个例子,在这个地方是一个自定义字段) 我尝试阅读这些字段,并搜索他们in wordpress
<?php
$t = $_REQUEST['title'];
$a = $_REQUEST['author'];
global $wpdb;
$query = "SELECT DISTINCT wp_posts.* FROM wp_posts, wp_postmeta WHERE wp_posts.ID = wp_postmeta.post_id";
if ($t != '') {
$t_sql = " AND wp_posts.post_title like '%$t%' ";
}
if ($a != '') {
$a_sql = " AND wp_postmeta.meta_key = 'Author' AND wp_postmeta.meta_value like '%$a%' ";
}
$query .= $t_sql;
$query .= $a_sql;
$pageposts = $wpdb->get_results($query , OBJECT);
global $post;
if ($pageposts):
foreach ($pageposts as $post):
setup_postdata($post);
//...
endforeach;
endif;
?>
在你的想法中,我该怎么做?
您能否在您的问题中添加一些额外的细节?如果你愿意的话,给出这些功能的含义。你以前做过吗?代码中的“OBJECT”是什么? $ query是一个SQL吗? – 5ervant 2013-04-09 06:10:55