5 октрября 10:22
Рубрика: Обходимся без плагинов 29 комментариев

Как вывести похожие статьи без плагинов

Здравствуйте, уважаемые читатели. Сегодня будет небольшой, но очень полезный пост, где расскажу вам как вывести похожие статьи без плагинов. Может возникнуть резонный вопрос: а какая же в этом необходимость? Не лучше ли оставить все как есть и заниматься другими неотложными делами, чем ковыряться в каких-то непонятных кодах?

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

Содержание

Небольшое предисловие
Почему лучше обходиться без плагинов?
Как вывести похожие статьи без плагина

 

Небольшое предисловие

 

В последнее время избавляюсь от тех плагинов, без которых можно легко обойтись или работу которых можно заменить кодом. Например, я удалил совершенно ненужный, с моей точки зрения, плагин «WordPress Database Backup». Он и работает как-то половинчато, делает только резервную копию базы данных ( а бэкап файлов блога кто будет делать? ).

Поэтому раз в неделю сам выполняю эту работу, тем более что это не трудно. О том, как правильно делать бэкап сайта читайте тут. Во-вторых, резервное копирование моего блога запланированно выполняется на моем хостинге ( на какие параметры нужно обращать внимание при выборе хостинга читайте в этой статье ). Если что, могу восстановиться и оттуда.

Также отказался от услуг всем известного плагина «WP No External Links». Почему я это сделал, можете ознакомиться в моей статье о битых ссылках здесь. Внимание! Я не настаиваю на этой точке зрения, поэтому если вдруг решите последовать моему примеру, сначала взвесьте все «за» и «против».

Ну и, наконец, плагин для вывода похожих статей с миниатюрами «WordPress Related Posts». Относительно него у меня давно чесались руки, а теперь и повод возник. Дело в том, что он малоэффективен. Анализируя статистику Liveinternet заметил, что нет ни одного перехода с «похожих статей». Со ссылок внутри статьи есть, а вот с них нет. Мне кажется виной всему являются как раз-таки эти самые миниатюры, которые пользователь проскакивает даже не заметив. А если вывести ссылки на другие статьи просто текстом, то они очень даже видны, сразу обращаешь на них внимание. В любом случае посмотрим, можно даже сказать, что это эксперимент.

 

Почему лучше обходиться без плагинов?

 

Во-первых, они очень сильно тормозят загрузку блога. Я не буду здесь подробно рассказывать почему это плохо, так как уже писал об этом тут и тут. Какие именно плагины и как грузят ваш блог может помочь узнать еще один специальный плагин «P3 Performance Profiler». Установите, как обычно, через админку и активируйте, затем нажмите на «Scan Now» прямо на странице с плагинами.

Затем «Auto scan», после того как плагин выполнит работу-  «View Results».

На скриншоте видно, что плагины у меня загружаются за 0,145 сек. и число обращений к серверу составляет 54. После того как удалил «WordPress Related Posts» время загрузки уменьшилось до 0,114 сек., а число обращений к базе данных уменьшилось до 39.

Вот вам и первая причина. Кстати, не забудьте после проверки деактивировать «P3 Performance Profiler» или же вовсе удалите.

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

Ну и, в-третьих, существует мнение, что коды просто-напросто работают лучше, чем плагины.

 

Как вывести похожие статьи без плагина

 

Все очень просто. Сначала деактивируйте свой плагин, затем скопируйте этот текст:

<div class="sample-posts">
<h4>Читайте также:</h4>
<?php
$categories = get_the_category ($post->ID);
if ($categories) {
$category_ids = array ();
foreach ($categories as $individual_category) $category_ids[] = $individual_category->term_id;
$args=array (
'category__in' => $category_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 '<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>';
}
wp_reset_query ();
}
?></div>

Теперь пройдите в админку вашего блога, выберите «Внешний вид»-"Редактор", затем откройте файл «single.php». Поскольку похожие статьи уместно будет расположить после основного контента, разместите код после вот таких строк:

<?php the_content (); ?>

И не забудьте обновить файл. Все, дело сделано. Я потратил на это 3 минуты. А вы? На этом я закончу свою небольшую заметку, если она была полезна вам, подписывайтесь на новые статьи блога. А пока я пишу их, почитайте старые, перейдя по ссылкам чуть ниже. Всего доброго.

С уважением Баяс Батуев

Хочешь получать статьи этого блога на почту?
29 комментариев
  • Si.A.A.

    А для blogspot это подойдёт? А то у меня уже было установлено в код что-то подобное. Однако затем ссылки (у меня было без картинок, просто название сообщения) куда-то пропали.

    2014-10-06
  • Баяс Батуев

    Должно работать, пробуйте.

    2014-10-06
  • Сергей

    Все правильно ...только не все учат коды пшп :))

    2014-10-06
  • Мария Зазвонова

    Ценная информация, Баяс, на старом шаблоне использовала плагин для вывода похожих записей,ма в новом уже все встроено.

    2014-10-06
  • Азик

    Ща попробуем этот скрипт) Может, одним плагином станет меньше... И блог станет быстрее загружаться, хотя... у меня долго загружается или нет?

    2014-10-07
  • Баяс Батуев

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

    2014-10-08
  • Ольга Андреева

    У меня стоят похожие записи. Но я совсем не помню. как я их устанавливала. плагином, конечно, не люблю копаться в кодах. Но вы так просто все объяснили, что надо будет попробовать сделать. Вообще, все собираюсь порядок сделать-разобраться, какие плагины нужны, а какие убрать можно.

    2014-10-08
  • Рита

    Привет, Баяс! Да уж... ты меня своей статьей заставил задуматься. Выводил мне этот плагин ссылки похожих статей и выводил себе... Я тоже против, когда блоггер использует много плагинов. И с тобой согласна на все 100, что не нужно использовать плагины, когда можно обойтись без них. Скорей всего я воспользуюсь твоим советом. Спасибо за полезную информацию. Удачи! ;-)

    2014-10-09
  • Ирина

    Баяс!У меня на блоге похожие записи выводились плагином.Вчера прочитала вашу статью и попробовала установить предложенным скриптом.Не туда вставила, в результате белая страничка.Буду еще пробовать, я с кодами совсем не дружу.

    2014-10-11
  • Polya Radost

    Баяс, спасибо! как раз активно работаю над ускорением своего сайта, так что с удовольствием воспользовалась вашими рекомендациями. Правда, у меня не нашлось такой строчки, после которой нужно было вставить код. Но я вставила после похожей (на мой взгляд:)). И все получилось! Спасибо!

    2014-10-12
  • Баяс Батуев

    Попробуйте обязательно, Ольга, все получится.

    2014-10-13
  • Баяс Батуев

    Удачи, Рита.

    2014-10-13
  • Баяс Батуев

    Ну и отлично, рад за вас.

    2014-10-13
  • Мария Шутова, врач-косметолог

    Не могу найти нужную строку, после которой надо вставлять код. она может выглядеть как-то по другому, Баяс?

    2014-10-14
  • Баяс Батуев

    Мария, скопируйте и отправьте мне, пожалуйста, ваш файл «single.php».

    2014-10-14
  • Евгений

    Очень важная информация для меня т.к у меня сейчас реализовано все с помощью плагина.

    2014-10-15
  • Мария Шутова, врач-косметолог

    Баяс, спасибо, вставила код после той строчки, которую Вы посоветовали. В смысле места - все в порядке. Но почему-то выводится всего 1 похожая статья и такими мелкими буквами, что ее, скорее всего, никто даже не заметит. Не так как у Вас - крупно и несколько статей. Это можно как-то исправить?

    2014-10-15
  • Баяс Батуев

    Выводится 1 похожая статья, потому что в той рубрике у вас всего 2 статьи. В остальных рубриках, где побольше статей, все нормально. Также вы можете сами указать количество выводимых похожих статей. Для этого вам всего лишь нужно в строке 'showposts'=>5, поменять цифру на нужную вам.

    2014-10-15
  • ZeroXor

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

    2014-10-21
  • Баяс Батуев

    Да, такая проблема существует- после обновления все искусственно вставленные коды стираются и их нужно восстанавливать заново. И если вы часто вставляете коды в различные файлы своего шаблона, то со временем действительно могут появиться проблемы. Но все решается очень просто- у меня, например, есть специальная тетрадка, куда я записываю свои умные мысли по поводу ведения блога, различные пароли и коды доступа. И в этой же тетради я фиксирую в каком файле, когда ввел изменения. За 6 месяцев их у меня всего 3: заголовок last-modified, страница благодарности и похожие статьи. Не так уж и много. Но в любом случае спасибо за комментарий-дополнение.

    2014-10-21
  • Виталий

    Я особо не вдаюсь в тонкости установки кодов, но все таки считаю, что лучше пользоваться плагином, выводящим похожие статьи. Ну а что касается ускорения загрузки блога, то есть другие проблемы, которые можно решить для ускорения. В частности при загрузки статьи получается много резервных копий, они накапливаются и замедляют загрузку. Может быть стоит решить проблему как их удалить?

    2014-10-21
  • Мария Шутова, врач-косметолог

    Здравствуйте, Баяс, спасибо за помощь и подробные объяснения. Я попыталась исправить размер букв и вот что у меня получилось "Наш самостоятельный отдых в Испании. Часть 1." Вот так теперь выглядит ссылка на похожие статьи. Шрифт стал жирным, но размер букв не увеличился и впереди появилась . Видно, не судьба, может тема как-то в противоречие вступает. Надо, наверное, к плагину возвращаться

    2014-10-21
  • Баяс Батуев

    Честно говоря, не совсем понял вопрос, но, возможно, вы имеете в виду ревизии постов. Дело в том, что каждый раз, когда мы редактируем статью, WordPress автоматически сохраняет ее предыдущий вариант, чтобы в случае чего мы могли вернуться к старой версии. О том, как можно решить эту проблему я писал в этой статье. А пользоваться плагином или кодом, каждый этот вопрос решает сам.

    2014-10-21
  • Баяс Батуев

    Конечно, мы с вами не программисты, но при некоторой настойчивости можно решить любую проблему. Хотя, если желаете вернуться к плагину, ваше право.

    2014-10-21
  • ZeroXor

    Здесь скорее всего имеет смысл поправить CSS. Дело минут 10-15, не больше.

    2014-10-22
  • Баяс Батуев

    Согласен. Я хотел увеличить текст выводимых статей прямо в коде, но у нее это не срабатывает. Если щелкнуть правой кнопкой мыши по ссылке на статью и выбрать "Исследовать элемент", то в Style css под номером 1312 есть запись font size-11 px, очевидно этот размер и надо увеличить?

    2014-10-22
  • Владислав

    Спасибо Баяс ! Вы один из не многих грамотных людей дающих работающие советы. Всё заработало без проблем. Подписался на новости блога.

    2015-01-20
  • Баяс Батуев

    Владислав, спасибо на добром слове, постараюсь оправдать ваше доверие.

    2015-01-20
  • Алексей

    Здравствуйте! Спасибо за интересную статью! Есть пару вопросов, может кто подскажет: 1. Я не хочу чтобы статьи выводились по рубрикам или меткам. Тем более что я так понимаю, что для того чтобы похожие статьи выводились по меткам, нужно обязательно прописывать метки для каждой статьи?! Подскажите, а есть ли теоретическая возможность, прописать какой-то код, чтобы похожие статьи выводились по-совпадению слов в тайтле? 2. Как убрать заголовок «Читайте также», на страницах где нет похожих статей?

    2015-03-01

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