希望这只是语法的一种情况。
我正在为Wordpress编写一个自定义搜索功能,除了我想排除一些依赖于他们ID的结果外,它一切都很好。
这可以使用一个ID
$sqlp_page ="select ID, post_title, post_name, post_excerpt from wp_posts where post_type='page' and ID != '236' ";
$sqlp_page .="and post_status='publish' ";
$sqlp_page .="and (post_title like '%".$_GET['s']."%' ";
$sqlp_page .="or post_content like '%".$_GET['s']."%') ";
$sqlp_page .="and post_status='publish' ";
$sqlp_page .="order by id ASC ";
但我似乎无法为ID传递多个值。 我在网上搜索并尝试了几种不同的方法,但似乎没有什么对我有用。
$sqlp_page ="select ID, post_title, post_name, post_excerpt from wp_posts where post_type='page' and ID != '236,239' ";
或者
$sqlp_page ="select ID, post_title, post_name, post_excerpt from wp_posts where post_type='page' and ID != '236' or '239' ";
和
$sqlp_page .="and ID != '236' ";
$sqlp_page .="and ID != '239' ";
但似乎没有任何效果。 非常感谢任何帮助。
答案 0 :(得分:6)
使用NOT IN
:
$sqlp_page ="select ID, post_title, post_name, post_excerpt
from wp_posts where post_type='page' and ID NOT IN ('236','239') ";
在NOT IN
内,您需要用逗号分隔多个ID
值。