Уже многие фирмы, компании, предприятия и не только вполне освоились с использованием сайтов на движке WordPress. Но улучшать навыки работы с ним достаточно тяжело, так как редко где встретишь доступную информацию по этой тематике, изложенную просто и понятно. Продолжая тему сайтов WordPress, сегодня мы поговорим о внутренней перелинковке, но без использования плагина.
Этот процесс достаточно простой, и использовать его может даже малоопытный вебмастер. Обращаться с плагинами, правильно их настраивать даже по инструкции можете не каждый, поэтому сейчас мы и будем учиться создавать перелинковку без этого средства.
Если не затрагивать дополнительные элементы и взять классический (стандартный) блог на вордпрессе, то самой практичной будет перелинковка, ориентированная на низкочастотные запросы. Этому споспособсвует плагин WordPress Related Posts, (упоминал его в прошлой статье) который связывает похожие записи между собой, но тема нашего сегодняшнего пособия «Вывод похожих записей без использования плагинов» и этим мы сейчас и займёмся.
Заменить функционал плагина достаточно просто, если он в своём роде автоматизирует процесс, то мы с вами переводим его под ручную работу и открывая исходники страниц вставляем дополнительные кусочки кода, и редактируем их по своему желанию.
На первых этапах очень тяжело бывает разобраться вебмастеру со всеми этим шаблонами, кусками незнакомого кода и так далее. И кому-то проще кое-как установить плагины и забыть о них. Но в конечном итоге всё равно придется либо качественно настроить плагин, либо вручную поколдовать над кодом. Именно правильно организованная перелинковка внутри сайта/блога помогает в раскрутке и продвижении сайта в первые строчки поисковых выдач.
Кроме того, избавление от части плагинов даст вам некоторые плюсы, начиная от вполне ощутимого ускорения работы сайта, что сейчас является одним из важных критериев, заканчивая снижением нагрузки на хостинг, что позволит сэкономить на его оплате.
Итак, перейдём непосредственно к шаблонам и тому, как всё это сделать правильно и красиво.
Делаем вывод похожих записей wordpress без плагина
Чтобы копаться в исходниках лучше использовать notepad++, так как он подсвечивает одинаковые теги. Переходим к файлу comments.php. Теперь вставляем наш шаблон, посредством которого мы и будем выводить все записи. Выводя записи по тегам код будет выглядеть приблизительно вот так:
<ul class="tags-posts"> <?php //for use in the loop, list 5 post titles related to first tag on current post $tags = wp_get_post_tags($post->ID); if ($tags) { $first_tag = $tags[0]->term_id; $args=array( 'tag__in' => array($first_tag), 'post__not_in' => array($post->ID), 'showposts'=>5, 'caller_get_posts'=>1 ); $my_query = new WP_Query($args); if( $my_query->have_posts() ) { while ($my_query->have_posts()) : $my_query->the_post(); ?> <li><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></li> <?php endwhile; } wp_reset_query(); } ?> </ul>
Чтобы осуществить перелинковку по сайту используя категории, тогда нам нужно несколько иная вариация кода:
<ul class="category-posts"> <?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, // Number of related posts that will be shown. 'caller_get_posts'=>1 ); // Rest is the same as the previous code $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(); } ?> </ul>
Строка showposts определяет количество похожих записей/постов, которые будут отображены в дальнейшем, после основного поста, открытого в данный момент. Чтобы всё это выглядело как единое целое, нужно подобрать соответствующие стили (CSS). Для тех кто только начал вот один из вариантов уже готовых записей:
.tags-posts {
list-style-type: circle;
line-height: 1.28;
margin-left: 20px;
margin-bottom: 40px;
font-size: 15px;
}
Вставить этот элемент можно куда угодно, и если вы не знаете куда конкретно, то можете разместить его в самом конце кода. Работать со структурой CSS удобно через Firebug для огненной лисы. Для максимальной оптимизации необходимо придумать общий заголовок:
<div class=»zagolovak»>Еще статьи по данной теме: </div>
Вот CSS для данного дива:
.zagolovak {
margin-top: 60px;
margin-bottom: 20px;
font: normal 15px Verdana,Arial;
}
Кроме уже представленного варианта, который вы можете просто скопировать, вы можете просто создать свой. Все представленные здесь шаблоны полностью рабочие и поэтому вы можете вставить их без проблем.
P.S. Код не мой, но он благополучно опробован на некоторых проектах, так что смело можете пользоваться.
С уважением, фрилансер-вебмастер Александр Шульгинов
2 комментария. Оставить новый
Еще вариант реализации вывода схожих записей без плагина — это шорткодом. Вывод осуществляется по меткам. А самый лучший вариант сделать шаблон, блок , и каждый раз при новой публикации ручками выбирать записи для перелинковки.
Отличная реализация, мне нравится, спасибо!