@WebforSelf

Создание своей таксомонии в Wordpress?

Задача такая,
Есть клиника,
Там есть направления и врачи
Это отдельные по сути рубрики, но потом надо будет связать их между собой, чтоб на странице направления были врачи.
Как лучше , создать отдельную таксономию "Клиника" с 2 рубриками и в ней уже забивать всех.
Структура такова
Поликлиника - направления - педиатрия, стоматология, неврология и т.д.
Поликлиника - специалисты - гинекологи, Урологи , Неврологи и т.д.

Если я разобью на 2 таксономии, то получится ли связать потом раздел "Педиатрия с разделом "педиатры" и т.д.

И да, смотрю что последние мануалы по созданию своей таксономии датируются 2017 годом, может кто скинет мануал который точно работает, а то натыкаюсь на статьи, многие старые и уже работают с ошибками.
  • Вопрос задан
  • 34 просмотра
Пригласить эксперта
Ответы на вопрос 1
vova87
@vova87
Разработка сайтов на wordpress
Я так понял врачи - это должны быть custom post type. Направления - таксономии.
Что то типа такого:

add_action('init', 'my_add_posts_types');
function my_add_posts_types(){

    register_taxonomy('department', array('doctors'), array(
        'label'                 => __('Department','my'), 
        'labels'                => array(
            'name'              => __('Department','my'),
            'singular_name'     => __('Department','my'),
            'search_items'      => __('Search Department','my'),
            'all_items'         => __('All Departments','my'),
            'parent_item'       => __('Department','my'),
            'parent_item_colon' => __('Department','my'),
            'edit_item'         => __('Edit Department','my'),
            'update_item'       => __('Department','my'),
            'add_new_item'      => __('Add Department','my'),
            'new_item_name'     => __('add Department','my'),
            'menu_name'         => __('Department','my'),
        ),
        'description'           => __('Department description','my'), 
        'public'                => true,
        'show_in_nav_menus'     => false, 
        'show_ui'               => true, 
        'show_tagcloud'         => false, 
        'hierarchical'          => true,
        'rewrite'               => array('slug'=>'department', 'hierarchical'=>false, 'with_front'=>false, 'feed'=>false ),
        'show_admin_column'     => true, 
    ) );


    register_post_type('doctors', array(
        'labels'             => array(
            'name'               => __('Doctors','my'), 
            'singular_name'      => __('Doctor','my'),
            'add_new'            => __('Add doctor','my'),
            'add_new_item'       => __('Add doctor','my'),
            'edit_item'          => __('Edit doctor','my'),
            'new_item'           => __('New doctor','my'),
            'view_item'          => __('See doctor','my'),
            'search_items'       => __('Search doctor','my'),
            'not_found'          =>  __('Not found doctors','my'),
            'not_found_in_trash' => __('Not found doctors','my'),
            'parent_item_colon'  => '',
            'menu_name'          => __('Doctors','my'),

        ),
        'public'             => true,
        'publicly_queryable' => true,
        'show_ui'            => true,
        'show_in_menu'       => true,
        'query_var'          => true,
        'rewrite'            => true,
        'capability_type'    => 'post',
        'has_archive'        => true,
        'hierarchical'       => false,
        'menu_position'      => null,
        'supports'           => array('title','editor','author','thumbnail','excerpt','comments')
    ) );



}
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы