Все это мы с Вами сделать без каких-либо плагинов, т. к. известно, что дополнительно установленный плагины тормозят скорость загрузки сайта. Поэтому, если есть возможность обойтись без них, то надо этим обязательно воспользоваться. Итак, перейдем непосредственно к настройке.
Вывод похожих статей без плагина
Найдите в своей теме сайта файл 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 |
<div> <h3>Статьи по теме:</h3> <?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'=>10, '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> |
Код можно вставить через FTP, через хостинг, или через панель администратора сайтом. Здесь я буду рассказывать, как вставить код через админку WordPress.
Перейдите в Панели Администратора «Внешний вид» > «Редактор», а затем в правой колонке найдите файл single.php. Нам нужно отредактировать файл, который отвечает за вывод одиночных статей. Обязательно сделайте копию этого файла, чтобы можно было его восстановить, если что-то сделаете не так.
Теперь нужно грамотно вставить этот код в нужное место. Я вставил его после строки wp_link_pages()
Это всего лишь часть кода, но ориентироваться можно по нему. Эта строка выводит ссылки навигации по страницам. Теперь под окном редактора нажмите «Обновить файл», чтобы сохранить его. Вот и все. Все должно работать.
Но, если сайт перестал правильно функционировать, можно попробовать вставить код в другом месте, например, после строки $format = get_post_format();
или get_template_part
Обратите внимание на строку в коде 'showposts'=>5,
Число пять в этой строке означает, какое количество похожих статей будет выводится. Если у Вас похожих статей меньше пяти, то будет выводиться меньшее число.
Алексей, в конце всех ссылок стоит слеш «/», но я его не хотел устанавливать. Я просто, когда настраивал ЧПУ — не заметил слеш. Если его убрать, то все статьи будут недоступны, т. е. все ссылки в блоге будут битые
Статья конечно очень полезна. Поставив код можно и от плагина избавиться. Вообще, Юрий, я попал к вам из поиска и у меня вопрос не по теме поста: У вас правильно настроены ЧПУ или вы специально так задумали? Просто у вас конец ссылки получается вот такой:
wordpress-bez-plagina/.html
я вижу выводит только 4 похожие статьи на вашем сайте. 11 строка отвечает за вывод. У меня в коде указано 10, такое же количество и должно выводить. Можете посмотреть на моем сайте, я специально добавил этот код в своей шаблон.
Сделал все как тут описано, но всех постах выводятся только последние 5 статей… почему так? обьясните. мой сайт I2life.ru прошу помощи, так как в кодах не силен(((
Я сделал с помощью плагина, но без него, конечно, лучше. А вот как сделать такой блок с картинками? Или с картинками хуже?
У меня стоит код перед строкой < ?php comments_template(); ?>,
Подскажите, пожалуйста, в какое «нужное» место следует вставить код. Пробую вставлять в начало шаблона, в конец шаблона, чуть ниже начала — тишина, никакого результата. На что ориентироваться?
Спасибо, Юрий. Вставил в шаблон почти в самом начале, и статьи по теме появились у меня сразу после кнопок соцсетей в конце статьи перед формой комментариев
Федор, я только что проверил, все должно работать.
Всё сделал, как в статье прописано — но нет 🙁
Обязательно заходите! Будут еще интересные посты.
Спасибо, буду вашим постоянным посетителем, как новичок, который умеет только размещать статьи =)
Ладно, и так хорошо.
Юрий, после того как вы подправили коды у меня все получилось. Но возник вопрос, компьютер сам выбирает какие статьи включить в этот список? Нельзя ли этот список подкорректировать? Не количество, а названия.
К сожалению это сделать нельзя. Для этого нужно другой скрипт писать.
Мария, код нужно вставлять не в текст, а в файл comments.php
Юрий, у меня видимо проблема с копированием кодов, в этом уроке тоже не получилось установить. Вставляю код в начало текста, обновляю и вообще исчезают комментарии.
Спасибо, Владимир.
Огромное спасибо! Будем искать методом научного тыка! У вас замечательный сайт. Удачи вам!!! ❗ 😉
Владимир, у Вас ошибка в файле comments.php в 15 строке. Такая ошибка может появляться, если Вы вставили криво свой код. Еще может быть если Вы использовали короткий тег вместо
Спасибо за интересную и полезную информацию. И ещё у меня к вам просьба о помощи. Пытаюсь поставить код ( урок 29) на блог, а он выдает: Parse error: syntax error, unexpected ‘>’ in H:\home\localhost\www\localblog\wp-content\themes\Division-Wordpress\comments.php on line 15
Заранее благодарен!