你真正的大问题is 使用query_posts. 它打断主查询对象,并将主查询对象设置为query_posts. 你所看到的很正常。
您真正的解决方案是使用query_posts 将是将主查询重置回应该的状态。这就是wp_reset_query() 进来了。如果这是普通页面,is_search() 将返回false 之后wp_reset_query() 因为主查询被重置为页面的主查询。
query_posts( \'&s=crap\' );
// Do your loop as normal
wp_reset_query(); // Add this after your loop
var_dump( is_search() ); // Will return bool ( false )
记住,使用
query_posts 非常沮丧。您应该使用
WP_Query