进行以下基本查询:
$posts = new WP_Query(array(
\'post_type\' => \'page\'
\'s\' => \'some search query\'
));
WordPress将拆分some search query
分为3个单独的搜索词,这就是为什么我需要使用这个$wpdb函数。我想要相同的功能,但将整个查询视为一个搜索词。这就是我所处的位置:
global $wpdb;
$post_type = \'product\';
$db_matches = $wpdb->get_results("
SELECT ID
FROM $wpdb->posts
INNER JOIN $wpdb->term_relationships ON $wpdb->term_relationships.object_id = $wpdb->posts.post_title
WHERE post_title LIKE \'%$query%\'
AND post_type = \'$post_type\'
AND post_status = \'publish\'
");
这是我有史以来第一次进行内部连接,所以可能完全错了。要修复此查询,需要做两件事:修复内部联接行中的语法,在WHERE
子句(应类似于AND term_taxonomy_id = 2
, 对吧?)。我使用的是Polylang,所以我只需要检查object_id
存在于中term_relationships
具有值的表2
.