Как сделать структуру ссылок в кастомной таксономии WP?

Структура ссылок в кастомной таксономии в WordPress может быть настроена с помощью регистрации таксономии и использования аргументов при её создании. По умолчанию, WordPress использует структуру ссылок вида "yoursite.com/taxonomy/term". Однако с помощью аргументов регистрации таксономии можно изменить эту структуру и создать свои собственные пермалинки.

Для изменения структуры ссылок в кастомной таксономии, вам нужно использовать аргументы 'rewrite' или 'slug' при регистрации таксономии. Вот пример кода, который поможет вам установить свою структуру ссылок:

// Регистрация кастомной таксономии
function custom_taxonomy() {
    $labels = array(
        'name'                       => 'Название таксономии',
        'singular_name'              => 'Ед. число таксономии',
        'menu_name'                  => 'Меню таксономии',
        'all_items'                  => 'Все элементы',
        'parent_item'                => 'Родительский элемент',
        'parent_item_colon'          => 'Родительский элемент:',
        'new_item_name'              => 'Новое название элемента',
        'add_new_item'               => 'Добавить новый элемент',
        'edit_item'                  => 'Редактировать элемент',
        'update_item'                => 'Обновить элемент',
        'view_item'                  => 'Посмотреть элемент',
        'separate_items_with_commas' => 'Разделите элементы запятыми',
        'add_or_remove_items'        => 'Добавить или удалить элементы',
        'choose_from_most_used'      => 'Выберите из наиболее используемых',
        'popular_items'              => 'Популярные элементы',
        'search_items'               => 'Поиск элементов',
        'not_found'                  => 'Не найдено',
        'no_terms'                   => 'Без элементов',
        'items_list'                 => 'Список элементов',
        'items_list_navigation'      => 'Навигация по списку элементов',
    );

    $args = array(
        'labels'                     => $labels,
        'hierarchical'               => true, // Включение иерархической таксономии
        'public'                     => true,
        'show_ui'                    => true,
        'show_admin_column'          => true,
        'show_in_nav_menus'          => true,
        'show_tagcloud'              => true,
        'rewrite'                    => array( 'slug' => 'your-custom-slug' ), // Изменение структуры ссылок
    );

    register_taxonomy( 'custom_taxonomy', array( 'post' ), $args );
}
add_action( 'init', 'custom_taxonomy', 0 );

В этом примере мы регистрируем новую таксономию с помощью функции register_taxonomy(). Мы используем аргумент rewrite для изменения структуры ссылок, устанавливая свой собственный пермалинк your-custom-slug. Вы можете использовать любое значение вместо your-custom-slug, которое соответствует вашим потребностям.

После добавления этого кода в вашу тему или плагин, вы должны обновить пермалинки в настройках WordPress, чтобы изменения вступили в силу. Для этого перейдите на страницу "Настройки" -> "Постоянные ссылки" и нажмите кнопку "Сохранить изменения".

Теперь, если вы создаете термины в этой таксономии, их ссылки будут иметь структуру "yoursite.com/your-custom-slug/term".

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