Задать вопрос
@ligisayan

Можно ли на wordpress вынести по разным пунктам админ меню посты различающиеся по ключу?

Всем привет! Есть зарегистрированный кастомный тип записи lesson на wordpress.

На сайте использую 2 типа занятий одиночные ($single_lesson) и повторяющиеся ($repeater_lesson), которые различаются выбранным в advanced custom fields ключом lesson_single.

Код function.php
//регистрация типа записи
add_action( 'init', 'register_my_cpt' );
function register_my_cpt() {
    register_post_type('lesson', array(
        'public' => true,
        'has_archive' => true,
        'menu_icon' => 'dashicons-welcome-write-blog',
        'label'  => 'Занятия',
        'rewrite' => array(
            'slug' => 'lesson', 
            'with_front' => false
        ),
        'supports' => array( 'title', 'editor', 'thumbnail' )
    ));
    }


В админке и одиночные и повторные события выводятся в потоке все вместе общим списком, что не удобно отслеживать и редактировать.
Есть ли возможность их разделить по разным пунктам админ меню так, чтобы не пересекались между собой или это возможно только с помощью регистрации нового типа записей?

Если да, то как?

//вывод
    $single_lesson = new WP_Query( array ( 
        'post_type' => 'lesson', 
        'posts_per_page' => '-1', 
        'order' => 'ASC', 
        'post_status' => array( 'future' ),
        'meta_query' => array( 
            array(
                'key' => 'lesson_single', 
                'value' => '1'
            )
        )
    ) );

        $repeater_lesson = new WP_Query( array ( 
            'post_type' => 'lesson', 
            'posts_per_page' => '-1', 
            'order' => 'ASC', 
            'post_status' => array( 'publish', 'future' ),
            'meta_query' => array( 
                'relation' => 'OR',
                array(
                    'key' => 'lesson_single', 
                    'compare' => 'NOT EXISTS',
                ),
                array(
                    'key' => 'lesson_single', 
                    'value' => '1',
                    'compare' => '!=',
                    'type' => 'NUMERIC'
                )
            )
        ) );
  • Вопрос задан
  • 21 просмотр
Подписаться 1 Средний Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы