8ответ(ов) в теме
Задача: сделать раздел Новостей со своей таксономией (аналог рубрик), чтобы:
урл раздела был: /news/
урл таксономии был: /news/nazvanie-taxonomii/
урл самой новости был: /news/nazvanie-novosti/
У меня есть вот такой код:
//НОВОСТИ
add_action( 'init', 'register_news_post_type' );
function register_news_post_type() {
// рубрика новости - rubrika
register_taxonomy('rubrika', array('news'), array(
'label' => 'Рубрики новости', // определяется параметром $labels->name
'labels' => array(
'name' => 'Рубрики новостей',
'singular_name' => 'Рубрика новости',
'search_items' => 'Искать рубрику новости',
'all_items' => 'Все рубрики новостей',
'parent_item' => 'Родит. рубрика новости',
'parent_item_colon' => 'Родит. рубрика новости:',
'edit_item' => 'Ред. рубрику новости',
'update_item' => 'Обновить рубрику новости',
'add_new_item' => 'Добавить рубрику новости',
'new_item_name' => 'Новая рубрика новости',
'menu_name' => 'Рубрики новостей',
),
'description' => 'Рубрики для Новостей', // описание таксономии
'public' => true,
'show_in_nav_menus' => false, // равен аргументу public
'show_ui' => true, // равен аргументу public
'query_var' => true,
'show_tagcloud' => false, // равен аргументу show_ui
'hierarchical' => true,
'rewrite' => true,
'show_admin_column' => true, // Позволить или нет авто-создание колонки таксономии в таблице ассоциированного типа записи. (с версии 3.5)
) );
// тип записи - Новости - news
register_post_type('news', array(
'label' => 'Новости',
'labels' => array(
'name' => 'Новости',
'singular_name' => 'Новость',
'menu_name' => 'Новости',
'all_items' => 'Все новости',
'add_new' => 'Добавить новость',
'add_new_item' => 'Добавить новость',
'edit' => 'Редактировать',
'edit_item' => 'Редактировать новость',
'new_item' => 'Новая новость',
),
'description' => '',
'menu_icon' => 'dashicons-video-alt',
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'show_in_rest' => false,
'rest_base' => '',
'show_in_menu' => true,
'exclude_from_search' => false,
'capability_type' => 'post',
'map_meta_cap' => true,
'hierarchical' => false,
'has_archive' => 'news',
'query_var' => true,
'supports' => array( 'title', 'editor', 'excerpt', 'author', 'thumbnail', 'comments', 'revisions', 'custom-fields', ),
'taxonomies' => array( 'rubrika' ),
) );
}
Все работает, но у таксономий урл вот такой: /rubrika/nazvanie-taxonomii/
Реально ли сделать так, чтобы урл таксономий был /news/nazvanie-taxonomii/ ?
Редакции сообщения
10.09.2020 08:21Причина: не указано
10.09.2020 08:22Причина: не указано
10.09.2020 08:27Причина: не указано
Preci сказал(а)
Так а в чем проблема сделать у таксономии slug news, а посту slug post-news?И через
Вы не можете просматривать опубликованные ссылкинастроить нужный url
Проблема с моим уровнем программирования 🙂 Я перепробовал (методом тыка) все вариации с rewrite, но так ничего и не вышло. Если это не проблема для вас, то готов оплатить решение (немного позже напишу вам в личку по этому вопросу).
Редакции сообщения
12.09.2020 05:38Причина: не указано
Вы не имеете права на публикацию сообщений в этой теме