Главная » Не в тему » WordPress 3.1 — не работают рубрики

WordPress 3.1 — не работают рубрики



Воскресенье, 27 февраля 2011
Вчера утром обновился до версии wordpress 3.1 и ужаснулся… Блог перестал работать должным образом — не работают рубрики и слайдер не показывает! При попытке открыть какую-либо рубрику открывается главная страница… Ужас! Блог накрылся!…

Я даже не сразу заметил такую подставу, лишь к вечеру. А увидев — списал все на изменения, которые сделал в коде в течение дня. Тут же поспешив исправить проблему — понял, что не всё так просто. Дело в другом. Скорее всего — проблема возникла именно в связи с обновлением на wordpress 3.1. Я в шоке! Что делать? Может откатить назад? Но это долго.

Нужно:

  • Отключить все плагины
  • Перейти на дефолтную тему
  • Перезалить wordpress более ранней версии
  • Вернуть свою тему оформления
  • Включить все плагины
  • Заново настроить блог

Уже ночь и что-то расстроился я, ладно «утро вечера мудренее», буду искать завтра. Решение проблемы с утра нашлось неожиданно быстро. Оказывается, всё дело в плагине Simple Tags, который выводит похожие записи на основе тэгов. Этот плагин конфликтует с новой версией wordpress – его нужно отключить. После чего не забудьте удалить и код из single.php.

Выводим похожие записи без плагина

Все бы хорошо. Но что делать с внутренней перелинковкой. Все-таки вывод ссылок на похожие посты — дело хорошее. Как говорится — «нету худа без добра». Говорят плагин Simple Tags очень нагружет базу данных, что замедляет работу блога. Оказывается можно обойтись без него. Для этого в single.php следует прописать следующий код:

<?php
$tags = wp_get_post_tags($post->ID);
if ($tags) {
$tag_ids = array();
foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id;

$args=array(
'tag__in' => $tag_ids,
'post__not_in' => array($post->ID),
'showposts'=>5, // Количество записей для вывода.
'caller_get_posts'=>1
);
$my_query = new wp_query($args);
if( $my_query->have_posts() ) {
echo '<h3>Похожие записи</h3><ul>';
while ($my_query->have_posts()) {
$my_query->the_post();
?>
<li><a href="<?php the_permalink() ?>" rel="bookmark" title="Постоянная ссылка на статью <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
<?php
}
echo '</ul>';
}
}
?>
<?php wp_reset_query();?>


Это не единственный способ обойтись без плагина, но я решил сделать так.
А у Вас были проблемы с обновлением wordpress и как Вы выводите похожие записи?

Источник: www.photo-revue.ru

Нашли интересный материал! - поделитесь с друзьями из социальных сетей.




Теги: , .

Похожие записи

Рубрика: Не в тему

23 комментария на " WordPress 3.1 — не работают рубрики "

  1. Поэтому я пока и не обновляюсь….

    • Сергей Юрченко:

      И, правильно. Я теперь перед обновлением вордпресс смотрю, что изменилось.

  2. rxs:

    >как Вы выводите похожие записи?
    С помощью плагина Yet Another Related Posts Plugin подробнее http://usingwp.ru/wordpress/plaginy-wordpress/related-posts-svyazannye-posty-poxozhie-zapisi-nabor-plaginov/

    • Сергей Юрченко:

      Спасибо. Может попробую. Не хочется лишних плагинов…

      • У меня тоже YARPP; вроде прилично, настроек много и т. п.
        А ещё в RSS отдаёт список похожих записей.

        Спасибо за инфу по рубрикам — совершенно случайно заметил (у меня в рубриках разные языки; и вдруг в rss одного языка вывалился весь контент).

        • Сергей Юрченко:

          А меня устраивает код вывода похожих постов. Все работает и хорошо.

  3. Привет!

    Правильно ли я понимаю, что то, что прописывается в код, надо переписывать после каждого обновления движка?

    У меня тоже появились проблемы после обновления. Правда, не в Simple Tags дело (кстати, уже и обновление этого плагина вышло — может, снимает проблему?), а в Advanced Permalinks, который убил мой фид. Вот тут я описала проблему — http://daytails.ru/575/postoyannye-ssylki-chto-s-nimi-delat.html
    А для похожих записей я пока использую yet-another-related-posts. «Пока», так как еще не определилась, что для меня лучше — плагин или код править…

    • Сергей Юрченко:

      Нет – не надо переписывать. Вы же прописываете в код темы, а не движка. Вот если Вы тему смените, то да.

      Другое дело, что, возможно – это не лучший код. У меня, в частности, он стал перенаправлять на последний пост из похожих записей. И комментарий приписывать к другому посту. Но, может это только у меня.

      Буду искать другое решение. Насчет новой версии Simple Tags, слышал, что проблема не решена. Да и другой плагин ставить не хочется — их и так много установлено. Сокращать нужно количество — нагружают.

      • Вот и я тоже — поначалу плагинов наставила, а теперь думаю, как их количество уменьшить.
        С видео, например, поторопилась удобств себе добавить — чтобы не код вставлять, а кнопочку нажимать. А если какой глюк с движком или плагином, и плагин отключить придется, то вместо видео только ссылка появляется. Хорошо, что хоть не много видео надобавляла таким образом — вроде уже все ручками переправила.
        Согласна, что чем меньше плагинов, тем лучше.

  4. Сергей Юрченко:

    Нашел проблему с кодом вывода похожих записей — исправил. Теперь не перенаправляет на другой пост.

  5. а мне не помогает отключение плагина simple tags (и убрала из single.php код, все как полагается), а для вывода похожих записей не работает Ваш код:( пользуюсь плагином WordPress Related Posts…
    да у меня все как не у людей, вылетела из поиска Яндекса…

  6. хм, у меня скорее Advanced Permalinks конфликтовал, уже все работает кажись…

    • Сергей Юрченко:

      Есть еще плагин для тех же целей Similar Posts. Так же слышал, что новая версия Simple Tags 2.0-beta5 совместима с wordpress 3.1. Но я пока обхожусь приведенным выше кодом.

      • да, все нормализовалось при отключении другого плагина, а simple tags нормально работает и не мешает работе блога…

  7. У меня тоже отвалились рубрики. Я убрал второе меню и вместо него сделал ссылки на некоторые теги. Да, теперь там будет не все, но наиболее часто используемые будут видны. Жаль, конечно, что так резко все поменяли.

    • Сергей Юрченко:

      Говорят, уже исправили. Но я останусь с кодом. Плагинов и так много.

  8. Огромное спасибо. Убил несколько часов на поиск проблемы, думал с темой траблы, хорошо, что нашел этот пост. Причем протестил на домашней версии, с ней было все ок, внешне, а вот рабочую разнесло еще и по дизайну.

  9. Где возможно обойтись без плагинов,то пользуюсь этой возможностью.В предыдущей теме также без плагинов выводил похожие посты,в новой теме уже было по умолчанию.
    А в целом лучше обновляться через неделю-полторы после выхода релиза.К тому времени и плагины обновятся и возможные косяки CMS.
    У меня было что не работал архив никак вообще,весь код перерыл,так и не нашёл в чём проблема.Потом сам заработал.

    • Сергей Юрченко:

      Я вот тоже стал искать различные коды, чтобы от плагинов избавляться. Интересно, конечно. Но многие так вордпресс и БД грузят, что скорость загрузки блога страдает.

  10. Здравствуйте Сергей!!Все сделал как написали,после установки кода записи появились, только вот не могу понять как выносить их в новых постах?

    • Сергей Юрченко:

      Если Вы все сделали правильно, вставили код в нужное место в single.php под записью «Тэги» («Метки»), то похожие записи будут появляться автоматически в новых постах. Обратите внимание, что записи завясят от тегов. Должны быть посты с такими же метками, если их нет, то и похожих записей не будет.

      Посмотрел Ваш блог. У Вас какая-то ошибка в коде, посмотрите. Удалите эту строку < ;? PHP wp_related_posts ()?>. Кроме того у Вас не работает капча, потому невозможно оставить комментарий.

  11. Андрей:

    Спасибо за решение, у меня заработало!
    Единственный момент — после вставки кода надо преобразовать в utf-8 без BOM (чтобы корректно выводились надписи на кириллице).

    Добавить комментарий