您的问题与包含模板零件文件无关(顺便说一下,您应该使用get_template_part()
或locate_template()
), 一切都与Doing It Wrong 关于query_posts()
.
如果试图覆盖主循环查询,则需要确保操作正确。如果需要维护默认查询上下文和追加查询参数,则必须维护默认$wp_query
. 最简单的方法如法典所述:
global $wp_query;
$args = array_merge( $wp_query->query, array( \'post_type\' => \'product\' ) );
query_posts( $args );
要使用自定义参数,例如:
// Globalize $wp_query
global $wp_query;
// Define custom query args
$custom_query_args = array(
\'meta_key\' => \'post_views_count\',
\'order\' => \'DESC\'
);
// Merge custom query args with default query
$custom_query = array_merge( $wp_query->query, $custom_query_args );
// Query posts based on modified query arguments
query_posts( $custom_query );
如果碰巧您打算执行辅助循环,那么您不想使用
query_posts()
但需要使用
WP_Query()
或
get_posts()
.