Пользовательский тип записи «статьи» игнорирует posts_per_page, зарезервированный тип post_per?

У меня есть голова-скребок! У меня есть несколько различных типов сообщений, по умолчанию сообщение /страница /вложение + несколько созданных с настройками пользовательского интерфейса CPT по умолчанию. Только одна из них ( статьи ) ведет себя неправильно, аргумент WP_Query posts_per_page игнорируется.

Я не могу найти ничего о зарезервированных почтовых слагах, кроме обычные подозреваемые, упомянутые выше.

Итак, у нас есть куча post_type = статей . Чтобы проверить, я зашел в БД и изменил 3 из них на article - удалив s . Хотя я не создал тип записи в CPT IU или в функциях, WP_Query может вернуть его ... правильно, не меньше!

            $a_articles__featured = array (                'post_type'              => 'articles',                'nopaging'                           => false,                'posts_per_page'         => 2,                'update_post_term_cache' => false,                'update_post_meta_cache' => false            );            $q_articles__featured = new WP_Query( $a_articles__featured );

^^^ возвращает ВСЕ сообщения с типом CPTUI post_type, равным < em> Articles

            $a_articles__featured = array (                'post_type'              => 'article',                'nopaging'                           => false,                'posts_per_page'         => 2,                'update_post_term_cache' => false,                'update_post_meta_cache' => false            );            $q_articles__featured = new WP_Query( $a_articles__featured    );

^^^ возвращает 2 сообщения с настроенным вручную типом записи article

            $a_articles__featured = array (                'post_type'              => 'page',                'nopaging'                           => false,                'posts_per_page'         => 2,                'update_post_term_cache' => false,                'update_post_meta_cache' => false            );            $q_articles__featured = new WP_Query( $a_articles__featured    );

^^^ возвращает 2 сообщения с post_type по умолчанию для страницы

            $a_articles__featured = array (                'post_type'              => 'events',                'nopaging'                           => false,                'posts_per_page'         => 2,                'update_post_term_cache' => false,                'update_post_meta_cache' => false            );            $q_articles__featured = new WP_Query( $a_articles__featured    );

^^^ возвращает 2 сообщения с CPTUI post_type для событий

ВСЕХ ЭТИХ РЕЗУЛЬТАТОВ ПОВТОРЯЕТСЯ С SQL-ЗАПРОСОМ!

            $querystr = "                SELECT $wpdb->posts.*                FROM $wpdb->posts, $wpdb->postmeta                WHERE $wpdb->posts.ID = $wpdb->postmeta.post_id                AND $wpdb->posts.post_type = 'articles'                AND $wpdb->posts.post_date < NOW()                ORDER BY $wpdb->posts.post_date DESC            ";            $pageposts = $wpdb->get_results($querystr, OBJECT);

Помимо использования статьи, которая является нарушением в URL, кто-нибудь может посоветовать устранить неполадки отсюда?

Спасибо!

<

Ответы и комментарии:

Статьи не защищены (из памяти). Вы абсолютно уверены, что больше ничего не можете переопределить количество постов? Фильтр на pre_get_posts?
Создан 06-04-2018 03:34 Andy Macaulay-Brook

Довольно уверен! Я использовал стартер темы _underscores, который довольно голый. Я искал в файле функций «статьи», но ничего. Конечно, это первый тип поста, который я пытаюсь зациклить и вырвал мои волосы вчера днем ​​с обычной wp_reset_postdata (); Тип отладки, прежде чем найти другие типы сообщений работают.
Создан 06-04-2018 04:21 vars

Можете ли вы добавить свой запрос register_post_type и параметры к вопросу? Попробуйте выполнить запрос, не вмешиваясь в параметры кеша и nopaging.
Создан 06-04-2018 04:23 Andy Macaulay-Brook

Я пробовал без кеширования, без разницы. Register_post_type фактически обрабатывается плагином CPT UI, таким же, который делает тип публикации событий, который работает как шарм.
Создан 06-04-2018 05:20 vars

Ах - это настройка в этом плагине тогда?
Создан 06-04-2018 05:33 Andy Macaulay-Brook

Я удалил плагин CPT UI и объявил тип сообщения функционально ... это решило проблему.
function custom_post_type_articles () {

$ метки = массив (
    'name' => _x ('Статьи', 'Общее название типа сообщения', 'cyprusprofile'),
    'singular_name' => _x ('Article', 'Post Type Singular Name', 'cyprusprofile'),
    'menu_name' => __ ('Articles', 'cyprusprofile'),
    'parent_item_colon' => __ ('Parent Article', 'cyprusprofile'),
    'all_items' => __ ('Все статьи', 'cyprusprofile'),
    'view_item' => __ ('Просмотреть статью', 'cyprusprofile'),
    'add_new_item' => __ ('Добавить новую статью', 'cyprusprofile'),
    'add_new' => __ ('Add New', 'cyprusprofile'),
    'edit_item' => __ ('Редактировать статью', 'cyprusprofile'),
    'update_item' => __ ('Обновить статью', 'cyprusprofile'),
    'search_items' => __ ('Search Article', 'cyprusprofile'),
    'not_found' => __ ('Not Found', 'cyprusprofile'),
    'not_found_in_trash' => __ («Не найден в корзине», «кипрский профиль»),
);

$ args = array (
    'label' => __ ('Articles', 'Cyprusprofile'),
    'description' => __ ('Articles', 'cyprusprofile'),
    'ярлыки' => $ метки,
    // Возможности, которые этот CPT поддерживает в редакторе сообщений
    'поддерживает' => массив ('заголовок', 'редактор', 'выдержка', 'автор', 'эскиз', 'комментарии', 'ревизии', 'настраиваемые поля',),
    // Вы можете связать этот CPT с таксономией или пользовательской таксономией.
    // 'taxonomies' => array ('genres'),
    / * Иерархический CPT похож на Pages и может иметь
    * Родительские и дочерние предметы. Неиерархический CPT
    * это как сообщения.
    * /
    'иерархический' => ложь,
    'public' => true,
    'show_ui' => true,
    'show_in_menu' => true,
    'show_in_nav_menus' => true,
    'show_in_admin_bar' => true,
    // 'menu_position' => 5,
    'can_export' => true,
    'has_archive' => true,
    'exclude_from_search' => false,
    'publicly_queryable' => true,
    'ability_type '=>' page ',
);

// Регистрация вашего пользовательского типа сообщения
register_post_type ('article', $ args);

}
Создан 07-04-2018 03:59 vars1166