Рубрика: SEO

Как изменить ссылку страницы с результатами поиска?

Изменение урла страницы с результатами поиска

При установке ЧПУ на сайте движок никак не меняет урл страницы с результатами поиска. При необходимости этот недостаток можно легко исправить. Для этого вам необходимо добавить в файл functions.php вашей темы следующий код:

//ЧПУ для страницы с результатами поиска start 
function wph_search_prettylinks() {
    if (is_search() && !empty($_GET['s'])) {
        wp_redirect(home_url("/search/") . urlencode(get_query_var('s')));
        exit();
    }	
}
add_action('template_redirect', 'wph_search_prettylinks');
//ЧПУ для страницы с результатами поиска end

В этом случае гораздо легче прописать запрет индексации страниц с результатами поиска (это необходимо, чтобы избежать дублированного контента в глазах ПС).

Как использовать Open Graph разметку для ВКонтакте?

Вставляемая ссылка в комментах ВКонтакте

ВКонтакте при вставке ссылок умеет определять на сайте Open Graph разметку и использует ее при формировании сниппета ссылки. Эту самую Open Graph разметку можно добавить вашему сайту без использования сторонних плагинов. Для этого вам необходимо добавить в файл functions.php вашей темы следующий код:

Как добавить nofollow ссылкам конкретной рубрики?

Если вам необходимо закрыть на сайте все исходящие ссылки атрибутом rel="nofollow", то вы можете воспользоваться этим сниппетом. Но как закрыть ссылки в записях только одной или нескольких рубрик, оставив ссылки в записях других рубрик без изменений? На самом деле это не сложно, для этого вам необходимо добавить в файл functions.php вашей темы следующий код:

//атрибут nofollow для ссылок выбранной рубрики start
function wph_nofollow_in_category($content) {
global $post;
    if(in_category(1)) { //указываем ID рубрики
        $content = stripslashes(wp_rel_nofollow($content));
    }
    return $content;
}
add_filter('the_content', 'wph_nofollow_in_category');
//атрибут nofollow для ссылок выбранной рубрики end

В коде можно указать несколько ID рубрик, например вот так:

Как добавить в копируемый текст ссылку на запись?

Добавленная к скопированному тексту ссылка

Люди часто копируют текст статей различных сайтов, делясь им на форумах, блогах, комментариях и т.д. Но при этом они очень редко добавляют к скопированному тексту ссылку на оригинальную статью. Одним это делать лениво, другие просто забывают. Данную ситуацию можно поправить, автоматически присоединив к скопированному тексту ссылку на оригинальную статью. Конечно, никто потом не мешает ее удалить, но опять же - люди ленивы и редактировать вставленный текст не хотят. Добавьте в файл functions.php вашей темы следующий код:

Как добавить nofollow к внешним ссылкам в тексте?

Nofollow для внешних ссылок

Диалог добавления ссылок в WordPress не дает возможности прописать атрибут rel="nofollow" и это приходиться делать вручную, переключаясь в редакторе на вкладку "Текст". Если вы постоянно на кого-то ссылаетесь, то вручную прописывать этот атрибут может быть утомительным занятием. С помощью приведенного ниже сниппета вы сможете избавиться от этой проблемы - все внешние ссылки в тексте записей будут автоматически закрыты через атрибут rel="nofollow".

Как добавить nofollow к ссылкам на рубрики?

Если вы хотите закрыть от индексирования ссылки на ваши рубрики, то вы можете просто прописать необходимый запрет в файле robots.txt. Однако, хотя поисковики не включат страницы рубрик в поисковый индекс, они все равно передадут этим страницам определенный вес (например, Google передаст таким страницам PR, даже не добавляя их в индекс). Чтобы этого избежать, вам необходимо добавить ссылкам на рубрики атрибут rel="nofollow". Сделать это можно с помощью вот такого кода в файле functions.php вашей темы:

//добавление nofollow для ссылок на рубрики start
function wph_nofollow_cats($text) {	
    $text = stripslashes($text);
    $text = preg_replace_callback('|<a (.+?)>|i', 
	        'wp_rel_nofollow_callback', $text);
    return $text; }
function wph_nofollow_cat($text) {
    $text = str_replace('rel="category tag"', "", $text);
    $text = wph_nofollow_cats($text);
    return $text; } 
add_filter('wp_list_categories', 'wph_nofollow_cats');
add_filter('the_category', 'wph_nofollow_cat');
//добавление nofollow для ссылок на рубрики end

Атрибут nofollow будет добавлен ссылкам на рубрики, выводимым в записях и ссылкам на рубрики в виджете "Рубрики". Если для вывода рубрик вы используете облако меток, то воспользуйтесь дополнительно кодом из этой статьи.

Как добавить nofollow к ссылкам на метки?

Как правило, страницы меток на любом сайте закрываются от индексирования через файл robots.txt. Необходимо это для того, чтобы избавиться от кучи дублированных страниц на сайте. Однако, Google все равно передаст PR таким страницам, даже не включая их в индекс. Это называется "утеканием PR в воздух" - PR страницам меток передается, а сами страницы не индексируются. Чтобы это исправить, надо добавить в файл functions.php вашей темы следующий код:

//добавление nofollow для ссылок на метки start
function nofollow_tag($text) {
    return str_replace('rel="tag"', 'rel="tag nofollow"',  $text);	
}
add_filter('the_tags', 'nofollow_tag');
//добавление nofollow для ссылок на метки end

Если вы используете на сайте облако меток, то вам необходимо еще добавить код: