Post_per_page -1 возвращает только половину результатов

У меня есть пользовательский тип сообщения, который я создал в functions.php.

function codex_custom_init() { $labels = array( 'name' => 'Restaurantes', 'singular_name' => 'Restaurante', 'add_new' => 'Añadir Nuevo', 'add_new_item' => 'Añadir Nuevo Restaurante', 'edit_item' => 'Editar Restaurante', 'new_item' => 'Nuevo Restaurante', 'all_items' => 'Todos los Restaurantes', 'view_item' => 'Ver Ver Restaurante', 'search_items' => 'Buscar Restaurantes', 'not_found' => 'No se encontraron restaurantes', 'not_found_in_trash' => 'Restaurantes no encontrados en la Papelera', 'parent_item_colon' => '', 'menu_name' => 'Restaurantes' ); $args = array( 'labels' => $labels, 'public' => true, 'publicly_queryable' => true, 'show_ui' => true, 'show_in_menu' => true, 'query_var' => true, 'rewrite' => array( 'slug' => 'restaurante' ), 'capability_type' => 'post', 'has_archive' => true, 'hierarchical' => false, 'menu_position' => null, 'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'comments' ) ); register_post_type( 'restaurante', $args ); } add_action( 'init', 'codex_custom_init' ); 

Я пытаюсь отобразить все элементы, принадлежащие этому настраиваемому типу сообщений, на странице архива. У меня есть 460 записей этого настраиваемого типа сообщений. Я создал файл archive-restaurante.php

Я пытаюсь отобразить весь заказ результатов в настраиваемом поле под названием restaurante_municipio

 <?php query_posts( wp_parse_args( $wp_query->query ,array('post_type' => 'restaurante', 'posts_per_page' => -1, 'meta_key' => 'restaurante_municipio', 'orderby' => 'meta_value', 'order' => 'ASC') ) ); global $wp_query; $total_results = $wp_query->found_posts; echo '<p><b>Restaurantes: '.$total_results.'</b>'; ?> if(have_posts() ) { ?> ... .. . <?php while (have_posts()) : the_post(); ?> ... .. . <?php endwhile; ?> ... .. . 

Количество отображаемых элементов – 230 общее количество результатов (460), деленное на 2.

Если я изменил post_per_page на 100, количество отображаемых результатов равно 50. Снова post_per_page делится на 2.

Если я изменил post_per_page на 920, количество отображаемых результатов равно 230.

Что я делаю не так?

Спасибо вам за помощь.

Как было отмечено комментариями, я заменил query_posts на запрос WP_Query.

 $args=array( 'post_type' => 'restaurante', 'posts_per_page' => -1, 'meta_key' => 'restaurante_municipio', 'orderby' => 'meta_value', 'order' => 'ASC'); $the_query = null; $the_query = new WP_Query($args); if ( $the_query->have_posts() ) { $total_results = $the_query->found_posts; echo '<p><b>Restaurantes: '.$total_results.'</b>'; while ( $the_query->have_posts() ) { $the_query->the_post(); ... .. . } } wp_reset_postdata(); 

Теперь он работает