Добрый день, уважаемы читатели. Сегодня я хочу поговорить об одной очень важной вещи — о перелинковке. В этой статье я расскажу, зачем она нужна, и как сделать правильную перелинковку для wordpress.
Начнем с того, зачем же нужна эта перелинковка. Самое главное — это трафик. Правильная перелинковка помогает собрать огромное количество НЧ трафика, который так важен для успешного сайта. По статистике, большинство крупных порталов имеют около 50-70% именно НЧ трафика, а не СЧ и ВЧ, на долю которых приходится до 40-50% посетителей. Однако нужно помнить, что трафиковое продвижение, которое и заключается в сборе НЧ трафика, не подразумевает только лишь создание перелинковки. Трафиковое продвижение — это целая наука, о которой я и буду писать в следующих постах.
Итак, я думаю, что Вы уже загорелись создать перелинковку на своем wordpress блоге. Ну, что же, приступим. Однако, есть ещё некоторая информация, которую я обязан вам сказать:
Теперь, мы дошли до скрипта. Скрипт, который будет представлен ниже, выполняет следующие функции: он берет X (вы задаете это число сами) id статей, находящихся до вашей статьи в этой же рубрике, и выводит ссылки на них. Разберем на примере: у этой статьи id = 255, она находится в рубрике SEO, скрипт найдёт в бд статьи, относящиеся к рубрики SEO и выберет X предыдущих статей, то есть, возьмет статьи с id=249,250,251,252,253,254 (для X=6).
Чем хорош данный скрипт? Во-первых, только у первых X записей ссылки будут моргать, у других записей они будут постоянными. Во-вторых, каждая запись (если статей большем, чем Х), получает ссылки ровно с Х статей. В-третьих, перелинкова идёт по рубрике, что делает статьи на самом деле похожими. В-четвертых, если у вас есть рубрика, куда вы публикуете продажные статьи, то нормальные разделы их не будут прокачивать.
Данный скрипт, я считаю — это лучшая перелинковка для wordpress. Его авторы — владелец одного из лучших блогов по wordpress — dimox.name, и выдающийся человек, автор многих плагинов и скриптов для wordpress — wp-kama.ru.
Скрипт:
[sourcecode language=»php»]
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;
?>
Количество ссылок, которые будет выводить скрипт, изменяется в предпоследней строке. В данном случае скрипт будет выводить 5 последних записей из этой же рубрики.
Если вы захотите сделать перелинковку с миниатюрой и описанием в 50-100 символов, то пишите в комментарии, я дам вам код скрипта, который сделает это (основа моего скрипта — этот скрипт).
———
Обновление. В комментариях попросили добавить код, который выведет похожие записи с миниатюрами и текстовым анонсом. Для того чтобы использовать этот код вам нужно:
1) Установить плагин для ресайза картинок от wp-kama.
2) Добавить в functions.php вашей темы следующий код:
[sourcecode language=»php»]function the_excerpt_max_charlength($charlength) {
$excerpt = get_the_excerpt();
$charlength++;
if(strlen($excerpt)>$charlength) {
$subex = substr($excerpt,0,$charlength-5);
$exwords = explode(» «,$subex);
$excut = -(strlen($exwords[count($exwords)-1]));
if($excut<0) {
echo substr($subex,0,$excut);
} else {
echo $subex;
}
echo "...";
} else {
echo $excerpt;
}
}[/sourcecode]
3) Добавить в single.php вашей темы код туда, где будет происходить непосредственно вывод похожих записей:
[sourcecode language="php"]
cat_ID;
show_previous_posts_from_category($post->ID, $the_cat_id, 2);
wp_reset_query();
?>
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;
?>