Этот пост надо читать сразу после прочтения предыдущего «Использование и подбор ключевых слов в заголовках постов«, в этой статье я буду говорить о seo оптимизации шаблона вордпресс.

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

Для перелинковки мы будем использовать один из плагинов вывода заголовков случайных/предыдущих/похожих записей блога.

Плагины которые нам подойдут:

Related Posts Thumbnails — выводит предыдущие/случайные посты с миниатюрой.

Search keywords — выводит в постах ссылки на другие посты, анкорами которых являются ключевые фразы по которым были переходы в ваш блог.

Это те что использую я, а на самом деле таких плагинов демятки.

Без плагинов тоже можно сделать вывод похожих записей:

Отображает посты с такими же тегами:
<?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>’;
}
}
?>

Если не используете теги тогда лучше воздержаться от использования этого кода.

Этот код выведет для каждой статьи 5 (по умолчанию) предыдущих записей из этой рубрики:

<?php
function show_previous_posts_from_category ($the_post_id, $the_category_id = 0, $post_num) {

$num = 0;
global $wpdb;

$sql = «SELECT wposts.*
FROM $wpdb->posts wposts
LEFT JOIN $wpdb->term_relationships ON (wposts.ID = $wpdb->term_relationships.object_id)
LEFT JOIN $wpdb->term_taxonomy ON ($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id)
WHERE $wpdb->term_taxonomy.taxonomy = ‘category’
AND $wpdb->term_taxonomy.term_id = ‘$the_category_id’
AND wposts.post_status = ‘publish’
AND wposts.post_type = ‘post’
AND wposts.ID < ‘$the_post_id’
ORDER BY wposts.ID DESC
LIMIT $post_num»;

$result = $wpdb->get_results($sql, OBJECT);
global $post;
?>
<ul>
<?php
foreach ($result as $post) {
setup_postdata($post);
?>
<li><a href=»<?php the_permalink() ?>» rel=»bookmark»><?php the_title(); ?></a></li>
<?php
$num++;
$save_ids[] = $post->ID;
}
if ( $num < $post_num || !$result ) {
$need_more = $post_num-$num;
$save_ids[] = $the_post_id;
$save_ids = join (‘,’, $save_ids);
$more_posts = get_posts(«numberposts=$need_more&category=$the_category_id&exclude=$save_ids»);
foreach ($more_posts as $post){
setup_postdata($post);
?>
<li><a href=»<?php the_permalink() ?>» rel=»bookmark»><?php the_title(); ?></a></li>
<?php
}
}
?>
</ul>
<?php } ?>

<?php
$the_cat = get_the_category();
$the_cat_id = $the_cat[0]->cat_ID;
show_previous_posts_from_category($post->ID, $the_cat_id, 5); // 5 — это количество отображаемых постов
wp_reset_query();
?>

Такой способ очень хорош так как не нужно подключать плагины, которые увеличат нагрузку на сервер.

В эфире: Хорошие, добрые домофоны сложно купить, но домофоны не искажающие звук ещё существуют!

От Val

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *