Поддержка Проблемы и решения Ссылки рубрик без иерархии

  • Добрый день,
    Скажите, можно-ли как-то переписать условие для стандартной таксономии (category), чтобы для каждой рубрики генерировалась ссылка без иерархии.

    ПС: Стандартный ярлык «category» удален при помощи плагина «wp-no-category-base«. Постоянные ссылки установлены как /%postname%/. Включен мультисайтовый режим, упомянутый выше плагин, также удалил ярлык «blog» для рубрик.

    Пример:

    Сейчас:
    (Рубрика каталог) example.com/catalog/
    (Под-рубрика двери) example.com/catalog/doors/
    (Под-под-рубрика деревянные) example.com/catalog/doors/wooden/

    А надо:
    (Рубрика каталог) example.com/catalog/
    (Под-рубрика двери) example.com/doors/
    (Под-под-рубрика деревянные) example.com/wooden/

    Точнее, не можно-ли, а как это сделать.

    Большое спасибо!

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • а как это сделать.

    Думаю, что при создании «вложенных» рубрик надо не назначать им родителя.. Если уже созданы, то убрать..
    Проверьте на одной рубрике и посмотрите, сработает или не сработает.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Возможно, будет полезен плагин No Category Parents или Remove Parents (он старый, но код довольно простой).

    wikicms — на сайте используются хлебные крошки, поэтому без родителей там будет что попало выводится (без иерархии). А вот ссылочная иерархия именно такая нужна, потому что сайт уже давно с такой структурой ссылок существует и страницы вес большой набрали.

    Сергей, огромное спасибо, плагин No Category Parents — убрал ярлык «blog», но в мультисайтовом режиме почему-то не убрал иерархию и оставил ярлык «category». Но я потом добавил этот код, и убилась и иерархия, и ярлык «category» убрался:

    add_action( 'init', 'build_taxonomies', 0 );
    function build_taxonomies(){
    	register_taxonomy('category', 'post', array(
    		'hierarchical' => true,
    		'update_count_callback' => '_update_post_term_count',
    		'query_var' => 'category_name',
    		'rewrite' => did_action('init') ? array(
    			'hierarchical' => false,
    			'slug' => get_option('category_base') ? get_option('category_base') : 'category',
    			'with_front' => false) : false,
    		'public' => true,
    		'show_ui' => true,
    		'_builtin' => true,
    	));
    }
Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «Ссылки рубрик без иерархии» закрыта для новых ответов.