WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Получай пассивный доход от сайта с помощью браузерных PUSH уведомлений

Отмена уникальности slug для рубрик

Как отменить проверку на уникальность slug в рубриках? Для записей такую проверку отключаю с помощью следующего кода

add_filter( 'wp_unique_post_slug', function( $slug, $post_id, $post_status, $post_type, $post_parent, $original_slug ) {
	if ( $post_type == 'post' )
		$slug = $original_slug;

	return $slug;
}, 10, 6 );

Как такое проделать с рубриками? Знаю, что должен быть использован этот фильтр, но не могу в нем разобраться. Подскажите пожалуйста.

apply_filters( 'wp_unique_term_slug', string $slug, object $term, string $original_slug )
0
Дмитрий
4 месяца назад
  • 0
    Kama8235

    Для постов лучше делать так:

    # Отключаем проверку на уникальность ярлыка slug для типа записи post
    add_filter( 'pre_wp_unique_post_slug', function( $null, $slug, $post_ID, $post_status, $post_type ) {
    
    	if( 'post' === $post_type )
    		return $slug;
    
    	return $null;
    }, 10, 5 );

    Для терминов (таксономий) по аналогии:

    # Отключаем проверку на уникальность ярлыка slug для таксономии category
    add_filter( 'wp_unique_term_slug', function( $slug, $term, $original_slug ) {
    
    	if( 'category' === $term->taxonomy )
    		return $original_slug;
    
    	return $slug;
    }, 10, 3 );

    Но ты должен понимать, что такой код может вызвать баги когда ярлыки одинаковые...

    Дмитрий 4 мес назад

    Добавил код, все равно не дает сохранить рубрику с уже существующим slug, пишет "Рубрика не обновлена.".

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация