Как выводить похожие записи в WordPress без плагина и с помощью него?
Доброго дня! Мы уже не раз говорили о том, насколько важно проводить внутреннюю оптимизацию на сайте. Один из способов сделать эффективную внутреннюю перелинковку – вывод похожих записей внизу каждой статьи. Такое дополнение позволяет увеличить длительность пребывания посетителей на сайте, уменьшает показатель отказов, а соответственно положительно сказывается на поведенческих факторах. О том, как добавить похожие записи на WordPress-блог, какие плагины для этого подойдут, а также о том, как это сделать без плагинов пойдет речь в сегодняшней статье.
Похожие записи на WordPress без плагина
Есть два варианта вывода похожих записей под статьей – по категориям и по тегам (меткам). Теги позволяют показывать схожие по тематике статьи, которые могут относиться к разным разделам. За вывод статьи отвечает файл single.php. Если кто забыл, можно ознакомиться со статьей про структуру шаблона WordPress.
Т.е. чтобы добавить похожие записи без плагина к статье, нам нужно вставлять код непосредственно в single.php.
Вот код для вывода блока записей по категориям с миниатюрами (миниатюры нужно добавить в админке):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | <div id="related_posts"> <p>Читайте также</p> <?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'=>3, 'orderby'=>rand, '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(); ?>"> <?php the_post_thumbnail(); ?><br /><?php the_title(); ?></a></li> <?php } echo '</ul>'; } wp_reset_query(); } ?> </div> |
- Если заменить строку
'category__in' => $category_ids,
на такую:'tag__in' => $tag_ids,
то сортировка похожих записей будет осуществляться по тегам. - В этом коде следует обратить внимание также на строку
'orderby'=>rand,
. Она отвечает за случайный порядок вывода ссылок на записи. Если вы хотите, чтобы записи были показаны согласно датам создания, эту строку следует убрать. - Cтрока
'caller_get_posts'=>1
запрещает повторение записей под постом. - Cтрока
'showposts'=>3,
указывает на количество выводимых записей.
Приведенный код нужно вставлять сразу после вывода статьи в файле single.php.
Но это еще не все. Если вы хотите, чтоб по ссылкам похожих записей переходили, вам придется дополнительно их оформить. Для этого нужно внести изменения в файл стилей style.css.
Чтобы получилось, как на данном скриншоте, добавьте следующий код:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | #related_posts{ margin-right: -25px; } #related_posts p{ font-size: 18px; } #related_posts li{ float: left; width: 205px; margin: 0 20px 20px 0; padding: 4px; background: #f8f8f8; /* цвет фона серый*/ height: 160px; } #related_posts li:hover{ background: #f6fffd; /* смена фона на голубой при наведении */ } #related_posts li a{ text-align: center; display: block; padding: 5px; color: #222; /* цвет ссылок */ } #related_posts li img{ width: 195px; height: 117px; } |
Внося изменения в код, вы можете выводить записи с миниатюрами различного оформления и стиля.
Плагин Вордпресс «Похожие записи»
Если вы отдаете предпочтение плагинам, то вот несколько из них для выводапохожих записей: WordPress Related Posts, Simple Tags, Similar Posts или Yet another related posts.
Наиболее популярный WordPressRelatedPosts анализирует содержание статьи и подбирает соответствующие ей посты с вашего блога. Преимуществом данного плагина похожих записей перед остальными является то, что он наиболее легкий, т.е. меньше других нагружает сервер. Читайте «Как правильно установить плагин в WordPress». В настройках WordPressRelatedPosts так же, как и с помощью кода, но без лишних трудов, можете указать количество выводимых записей, принцип сортировки (по дате, случайный, по популярности). Также вы можете выводить посредством плагина в Вордпресс похожие записи с миниатюрами (Thumbnail), но для этого для ваших статей на сайте должны быть предварительно созданы эти миниатюры.
Выбирайте свой способ, чтоб выводить похожие записи в WordPress:плагин или код. Главное, чтоб выбранный метод соответствовал вашим ожиданиям и привлекал все больше посетителей на сайт.
К сожалению, я не смогла перейти на сайт советов по глаженью вещей, не кликаются ссылки. Может только так у меня. Хотя другие ссылки здесь открываются.
Людмила, на своем блоге я не размещаю ссылки на сторонние сайты (тем более нетематические). Если вам необходима ссылка на сайт по глаженью, напишите мне на почту, я вам ее пришлю. А лучше поищите в интернете, сайтов для домохозяек полно:)
В моей статье всего лишь приведен скриншот оформления блока «похожие записи».
Спасибо, я поняла, что это для примера:)))
АЛЛО Люди где этот профи который писал этот код , просто первые 5 страниц в поисковике с одинаоквым кодом , а тот человек который все это написал где он ? . Мастера все спарсили а объяснить код не могут. Ну вы там вставьте поправьте все заработает , класс ребята лучше бы не писали тогда ничего
Анна, Вы пишете «Приведенный код нужно вставлять сразу после вывода статьи в файле single.php» Точнее можно? А в какое место файлf стилей style.css вставить рекомендуемый код. Без разницы?
Точнее нельзя, т.к. у всех разные шаблоны, а соответственно разный состав этих файлов. Советую не лениться, а пробовать вставлять код в разные места и смотреть, что получается. В style.css не важно куда, добавьте в конец.
Что-то у меня не получается: код вроде работает, но картинки не отображаются. с чем это может быть связано?
У вас точно для каждой статьи заданы миниатюры (при редактировании записи справа)?
не могу сказать точно, не нахожу их справа. но через плагин все миниатюры выводятся. правда они у меня большие 250×250, это имеет значение?
это значения не имеет. делайте через плагин, раз через него все работает.
Не работает вывод по тегам, почему то наоборот начинает выводит посты подряд со всех рубрик если поменять 'category__in' => $category_ids, на 'tag__in' => $tag_ids, — в чем может быть причина ?
И не может работать. Массив данных формируется по категории поста,а не по тэгу, и заменой одной строчки не обойтись
Спасибо за пример. А не подскажешь, как можно выводить определенный текст в зависимости от наличия у записи того или иного тега? У меня есть записи с тегом «алгебра», и я хочу во всех этих записях добавить ссылку на новую запись, относящуюся к теме Алгебра.
Анна, подскажите, пожалуйста, а как сделать русский текст на кнопке, которая появляется при выборе в настройках плагина вариант отображения «Pinterest Inspired». Там на кнопочке надпись «Load more posts», а хочется чтобы было на русском. Вы мне очень поможете, если подскажите, в каком месте можно заменить этот текст на свой
Ольга, не вижу ответа на Ваш вопрос. Отвечу, путь к файлу — /wp-content/plugins/wordpress-23-related-posts-plugin/static/js/pinterest.js . Находите надпись целиком Load more posts и меняете на нужную Вам. Удачи.
Какую добавку в код вывода «похожих записей на WordPress без плагина» нужно сделать, чтобы сортировка выполнялась по всем меткам, КРОМЕ одной, для определенности кроме метки с ID=100?
Смотрю у вас домен аж pro-wordpress, тогда вы наверное мне точно поможете, как теперь весь этот код запихнуть в функцию, для того , что бы я мог выводить его где угодно?
Борис, код нужно вставить в файл single.php, а стили в файл style.css. Внимательно прочтите урок, по моему все понятно написано, что и какой код куда вставить. А вообще советую подучить основы HTML, PHP и CSS
О вордпресе а не профессиональный вордпрес. Пора развивать ум и не пилить людей, которые стараются бесплатно помочь.
Анна, очень полезная статья, спасибо большое! С редакцией под дизайн своего сайта разобралась, остался последний вопрос- не могу его решить: миниатюры выводятся либо искаженными, либо (при смене параметров) в пропорции. Но когда они сохраняют пропорции, полоса со статьями выходит разной высоты. Нельзя ли включить функцию обрезки изображений? Если можно, то как это сделать?
В общем кратко:
1. Ненавижу плагины!
2.У меня проблема с выводом подобных постов, а именно с картинкой, возможно потому, что я сам писал тему.
3. Мне нужна Ваша помощь, Хелп Ми плиз!
Леонид, при написании поста нужно задать ему миниатюру. Эта функция находится внизу справа, когда вы начинаете писать новый пост. А так зайдите в редактирование поста и посмотрите справа внизу
Подскажите, а есть решение, позволяющее самому назначать какие статьи будут показаны после контента?
Может какой-то плагин?
'caller_get_posts'=>1);
в чем может быть проблема, если эта функция не выполняется?
записи под постом повторяются на всей странице.
Может дело в том, что я код разместила в категориях? у меня идет список статей, под каждой статьей вывод похожих.
Подскажите, как тут исправить ситуацию?
Нужно скорей всего разместить в single.php, перед строчкой
комментария.
Поставьте плагин related-posts. Скажу сразу, что на скорость и ранжировку не влияет. Ставьте сво,одно, есть фишки в наcтройках, например как в пинтерест прокрутка. У меня на сайте стоит обычная. Советую.
Подскажите пожалуйста как выводить похожие записи только в одной рубрике. Как исключить вывод в других рубриках
Классный пост!!! Как раз мне в тему, я уже вывел похожие записи через код, но вот решил поменять стиль вывода, а тут случайно попался ваш пост и не нужно придумывать самому эти стили. Спасибо за хорошую статью!
Подскажите почему не отображаются картинки,просто название в квадрате,а картинки нет,и как убрать точку,возле каждой фотки.
Доброго дня, Анна!
Спасибо за статью. Очень полезно.
Вопрос только один: как дополнить код таким образом, чтобы скрыть текст «Читайте также» в том случае, если в рубрике пока только одна статья? В такой ситуации под единственной в рубрике статьёй отображается просто «Читайте также» и больше ничего нет.
С уважением,
Сергей
Все работает, но посты выводятся из всех рубрик, а не из той в которой находимся. В чем может быть проблема?
Большое Спасибо автору этого поста!
Сделала у себя на Сайте Музыкальных Открыток Вывод похожих статей (без плагина)
И теперь у меня внизу поста выводится ещё 5 Открыток. С картинками Гифками!!
БлагоДарю))
Спасибо Аннушка за Ваш пост. Представленный пример очень легок, и я могу сказать, что он не только хорош в работе, но и адаптивен к моему шаблону. Немного стили подкорректировать, и все.
Выражаю Вам большое ЧЕЛОВЕЧЕСКОЕ СПАСИБО.
Если не возражаете, я обращусь к Вам вот с какой просьбой, можно ли в этом коде указать сортировку похожих записей по определенным категориям.
И еще в догонку, а возможно указать сортировку записей по новым постам.
С уважением А
Советую похожий плагин ARK Related posts, от Александра Каратаева.
Совместим с версией WP 4.7.2
Здравствуйте, а что нужно добавить в стилях, чтобы ограничить вывод заголовка по символам? Просто когда выводишь 6 записей, то название выходит за рамки и друг на друга/
А вот у меня вопрос совершенно другой. Но непосредственно относиться к этой теме. Я успешно, установил на сайт код, воспользовавшись вашими инструкциями. Но столкнулся с одной «проблемкой». Дело в том, что что на главной, у меня выводиться отдельная страница. И теперь, внизу появилась строка «Ркомендуем к прочтению» под которой соответственно нет никаких записей, так как это отдельная страница.
Подскажите как исправить эту ситуацию. Чтобы на главной странице перестали выводиться «рекомендации», а на остальных остались?