WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

Как правильно настроить add_rewtire_rule для пагинации архива терма пользовательской таксономии?

Создано несколько пользовательских таксономий.
С помощью фильтров удалены названия таксономий из URL + Добавлены правила для роутинга.
Пример:

// Удаление slug таксономии
function remove_tax_slug_link( $link, $term, $taxonomy ) {
	if ( $taxonomy !== 'my_tax' )
		return $link;

	return str_replace( 'my_tax/', '', $link );
}
add_filter( 'term_link', 'remove_tax_slug_link', 10, 3 );

// Правило для роутинга
function custom_tax_rewrite_rule() {
	$cats = get_terms(
			'my_tax', array(
			'hide_empty' => false,
		)
	);
	if(sizeof($cats))
		foreach($cats as $cat)
			add_rewrite_rule( $cat->slug.'/?$', 'index.php?my_tax='.$cat->slug, 'top' );

}
add_action('init', 'custom_tax_rewrite_rule', 10, 0);

Все отлично, но не работает пагинация архива таксономии, вылетает ошибка 404.

Нашел вот такое решение проблемы:

add_rewrite_rule('([^/]+)/?$', 'index.php?my_tax=$matches[1]', 'top');
add_rewrite_rule( '(.+?)/page/?([0-9]{1,})/?$','index.php?my_tax=$matches[1]&paged=$matches[2]', 'top' );

Но в этом варианте пагинация работает тока в указанной пользавательской таксономии, а пагинация в рубриках и стандартных тегах не работает.

Как правильно настроить правило руотинга, не затронув стандартные рубрики и теги?

0
vtros
2 месяца назад

Нет ответов на этот вопрос.

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