Поддержка Проблемы и решения WordPress 3.8 — пропали рубрики

  • Обновил движки, на паре сайтов, до WordPress 3.8. И пропали страницы рубрик… Когда перехожу на страницу рубрики — пишет «Ничего не найдено».
    Хотя в админке рубрики видны… Кто сталкивался? Как исправить?

Просмотр 9 ответов — с 1 по 9 (всего 9)
  • Начните с прочтения FAQ.
    http://codex.wordpress.org/ЧАВО/Не_работают_постоянные_ссылки

    Если не поможет, то стандартная процедура проверки:
    http://codex.wordpress.org/Как_задавать_правильные_вопросы

    Разобрался… Беда была в этом —

    <?php //Уберает посты подрубрик с рубрик
    function no_children($query) {
        if ( $query->is_category ) {
            $query->set( 'category__in', array( get_queried_object_id() ) );
        }
    }
    add_action('pre_get_posts', 'no_children');
    ?>

    Может кто подсказать, как код адаптировать к новому ВП?

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Проблема в том, что функция WP_Query::get_queried_object() при вызове в pre_get_posts перестала возвращать для рубрик правильный результат.

    Это баг в WordPress 3.8, должен быть исправлен в 3.8.1:
    http://core.trac.wordpress.org/ticket/26627

    Благодарю!

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

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

    Это не решит проблему с WordPress 3.8, но избавит от побочных эффектов, если на странице используется несколько циклов.

    Рекомендую такой вариант:

    function no_children( $query ) {
    	if ( ! is_admin() && $query->is_main_query() && $query->is_category() ) {
    		$query->set( 'category__in', array( get_queried_object_id() ) );
    	}
    }
    add_action( 'pre_get_posts', 'no_children' );

    Подозреваю, что и моя проблема с отказом функции исключения рубрик с этим связана. Откатил ВП на предыдущий 3.7.1 все заработало.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Подозреваю, что и моя проблема с отказом функции исключения рубрик с этим связана.

    Возможно, но вероятность небольшая (я проверил эту версию перед ответом в вашей теме). Думаю, у вас проблема в чём-то другом.

    Обновил до WordPress 3.8.
    Исчезли рубрики, и не ставятся, как и шаблона рубрик нет в этой теме.

    «Рубрик нет»
    Как откатить до предыдущей версии, не нашёл.

    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    p1112, вы используете тот же код для скрытия записей из дочерних рубрик на страницах родительских, что и solomko.net? Если нет — создайте, пожалуйста, новую тему (согласно правилам форума).

Просмотр 9 ответов — с 1 по 9 (всего 9)
  • Тема «WordPress 3.8 — пропали рубрики» закрыта для новых ответов.