0
我想禁用使用分頁禁用SQL_CALC_FOUND_ROWS。爲此,我使用SQL_CALC_FOUND_ROWS中的以下代碼,但由於該代碼分頁無效。我如何做這個或如何改善以下代碼?後"WordPress: SQL_CALC_FOUND_ROWS, why it’s slow and what to do about it"的使用分頁禁用SQL_CALC_FOUND_ROWS
if (! function_exists('oz_optimized_get_posts')):
function oz_optimized_get_posts() {
global $wp_query, $wpdb;
$wp_query->query_vars['no_found_rows'] = 1;
$wp_query->found_posts = $wpdb->get_var("SELECT COUNT(*) FROM wp_posts WHERE 1=1 AND wp_posts.post_type = 'post' AND (wp_posts.post_status = 'publish' OR wp_posts.post_status = 'private')");
$wp_query->found_posts = apply_filters_ref_array('found_posts', array($wp_query->found_posts, &$wp_query));
$posts_per_page = (! empty($wp_query->query_vars['posts_per_page']) ? $wp_query->query_vars['posts_per_page'] : get_option('posts_per_page'));
$wp_query->max_num_pages = ceil($wp_query->found_posts/$posts_per_page);
return $wp_query;
}
add_filter('pre_get_posts', 'oz_optimized_get_posts', 100);
endif;