/ Wordpress / Поисковая оптимизация сайта

Поисковая оптимизация сайта

HIT

13.11.2015

2821

Инструменты и решения нацеленные на оптимизацию и продвижение сайта в поисковых сервисах.

Периодическая таблица факторов ранжирования

Закрываем внешние ссылки

Надо закрывать все внешние ссылки, ведущие на сторонние сайты, от индексации: ставим ссылкам атрибут rel=»nofollow» и по-желанию target=»_blank»
Лучше делать это сразу в ручную, но бывают случае когда сайт уже имеет множество страниц — тогда можно прописать функцию автоматического добавления атрибута rel=»nofollow»:

function true_wp_posts_nofollow_callback($matches){
$a = $matches[0];
$site_url = site_url();

if (strpos($a, 'rel') === false){
$a = preg_replace("%(href=\S(?!$site_url))%i", 'rel="nofollow" $1', $a);
} elseif (preg_match("%href=\S(?!$site_url)%i", $a)){
$a = preg_replace('/rel=S(?!nofollow)\S*/i', 'rel="nofollow"', $a);
}
return $a;
}

function true_wp_posts_nofollow($content) {
return preg_replace_callback('/<a[^>]+/', 'true_wp_posts_nofollow_callback', $content);
}

add_filter('the_content', 'true_wp_posts_nofollow');

Устранение циклических ссылок

Удаление ссылок ссылающихся на самих себя.
Чтобы убрать циклические ссылки меню, надо вставить в funсtions.php

// Убираем ссылку из текущего пункта меню

function no_link_current_page( $p ) {
    return preg_replace( '%((current_page_item|current-menu-item)[^<]+)[^>]+>([^<]+)%', '$1$3', $p, 1 );
}
add_filter('wp_nav_menu', 'no_link_current_page');
Может не cработать если в пункте меню, есть тэги <i>(FontAwesome)

Чтобы убрать ссылку с логотипа на главной странице, надо установить проверку

<?php
if ( is_home()) { echo '<img id="logo" src="http://dtex-rostov.ru/wp-content/themes/tester/images/logo-dtex2.png">'; }
else { echo '<a href="/"><img id="logo" src="http://dtex-rostov.ru/wp-content/themes/tester/images/logo-dtex2.png"></a>'; }
Надо убедится что главная страница действительно является HOME, т.к. когда главная страница сделана как страница, а не просто index.php — надо прописывать is_page( ‘3043’ ) с соответствующим номером страницы. Несмотря на то что в стилях body прописан home — is_home() почему-то не действует.

Плагин Yoast SEO

Пожалуй, лучший плагин, для SEO оптимизации, постоянно дорабатывается. Но карту сайта лучше делать отдельным плагином, см. ниже.

Вывести поля Yoast SEO

<?php echo get_post_meta($post->ID, '_yoast_wpseo_title', true); ?>
<?php echo get_post_meta($post->ID, '_yoast_wpseo_metadesc', true); ?>
<?php echo get_post_meta($post->ID, '_yoast_wpseo_focuskw', true); ?>

У плагина Yoast SEO в настройках Заголовки и метаданные можно настроить динамическое заполнение с помощью переменных (%%title%%, %%sitename%%).

Наиболее часто используемые переменные:

%%date%% — Дата записи/страницы
%%title%% — Название записи/страницы
%%parent_title%% — Заголовок родительской страницы
%%sitename%% — Имя сайта
%%sitedesc%% — Слоган или описание сайта
%%excerpt%% — Цитата записи/страницы (при отсутствии генерируется автоматически)
%%excerpt_only%% — Цитата записи/страницы (без автоматической генерации)
%%tag%% — Текущая метка/метки
%%category%% — Рубрики записи (через запятую)
%%primary_category%% — Основная рубрика записи/страницы
%%category_description%% — Описание рубрики
%%tag_description%% — Описание метки
%%term_description%% — Описание термина
%%term_title%% — Название термина
%%searchphrase%% — Текущая фраза поиска
%%sep%% — Разделитель определен в вашей теме wp_title() тег.
%%pt_single%% — Заменен тип сообщения единая этикетка
%%pt_plural%% — Тип записи во множественном числе
%%modified%% — Время изменения записи/страницы
%%id%% — ID записи/страницы
%%cf_%% — Значение пользовательского поля из записи
%%ct_%% — Значение пользовательских таксономий из записи (через запятую)
%%ct_desc_%% — Описание произвольной таксономии

Чтобы получить название термина таксономии (не стандартной category), например категорию товара, то используем переменную %%ct_product_cat%%

Пользовательские переменные в Yoast SEO

//Добавляем пользовательскую переменную для Yast SEO (Артикул)
function get_meta_for_SEO() {
	return get_post_meta(get_the_ID(), '_sku', true);
}

function register_custom_extra_replacements() {
	wpseo_register_var_replacement( '%%sku%%', 'get_meta_for_SEO', 'advanced', 'Получает артикул товара' );
}

add_action('wpseo_register_extra_replacements', 'register_custom_extra_replacements');

noindex,follow в категория Woocommerce

В общих настройках установлено индексировать категории товаров, и в каждой категории стоит по умолчанию индексировать, но на страницах все равно noindex,follow. Чтобы это исправить нужно принудительно указать, чтобы они индексировались:

add_filter('wpseo_robots', 'yoast_no_home_noindex', 999);
function yoast_no_home_noindex($string= "") {
	if (is_home() || is_front_page() || is_search() || is_product_category()) {
		$string= "index,follow";
	}
	return $string;
}

Вывод цепочек навигации Yoast

<?php if ( function_exists('yoast_breadcrumb') ) { yoast_breadcrumb( '<div id="breadcrumbs">','</div>' ); } ?>

Сервисы мониторинга Яндекс, Google

Яндекс Вебмастер
Яндекс Метрика
Google Search Console
Google Analytics

Еще интересные сервисы для аналитики: Google Trends и Yandex Wordstat.

Файл sitemap.xml

Обязательно создаем файл sitemap.xml, для правильной и быстрой индексации сайта. Для этого устанавливает плагин Google XML Sitemaps. Настроек там немного, всё понятно. Выставляем нужные таксономии для формирования файла sitemap.xml, сохраняем изменения.
Файл будет доступен по адресу https://opttour.ru/sitemap.xml

Валидность сайта

Валидность сайта — соответствие верстки сайта международным стандартам W3C.

Наиболее часто встречающиеся ошибки валидности:

  • использование в div атрибута align=» «
  • отсутствие у изображений атрибута alt=» «
  • дублирование ID, ID должен быть уникальным
  • использование в таблицах align=» » width=» » height=» «
  • несколько ошибок выдает использование в формах type=»date»

Оптимизируем заголовки

Наиболее запрашиваемые заголовки (фразы вводимые в поиске) нужно подбирать в специальном сервисе wordstat.yandex.ru. Уточняем фразы с помощью операторов

ОператорКомментарийПример
< — > Знак минусЧастота запроса без учета минус слов для ключевой фразыКупить мопед –бу –москва
< «» > Двойные кавычкиСтатистику слова или фразы по фразовому соответствию«стоимость модем»
< ! > Восклицательный знакЧастотность по заданной словоформе!ваза цена
< + > Знак плюсПринудительный учет предлогов+как работает яндекс директ
<( | )> Круглые скобки и прямой слешГруппирует статистику по запросамКондиционер (авто | машина)

Файл robots.txt

Создаем в корне сайта файл robots.txt со следующим содержанием

User-agent: *
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed/*/
Disallow: */feed
Disallow: /*?*
Disallow: /tag
 
User-agent: Yandex
Disallow: /cgi-bin
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: */*/feed/*/
Disallow: */feed
Disallow: /*?*
Disallow: /tag

Host: https://opttour.ru

Sitemap: https://opttour.ru/sitemap.xml
Если домен работает с сертификатом ssl, то Host прописываем с https//:

Закрыть от индексации какой-либо из типов записей можно так: Disallow: /slide. Также закрываем страницы и разделы генерируемые wordpress

Disallow: /author/*
Disallow: */page/*
Disallow: */attachment/*

Данный файл помогает роботам поисковиков быстрее индексировать сайт (без служебных директорий), а также предотвращает попадание в индекс нежелательных страниц технического назначения: пэйджинация, результаты поиска и т.п.

По поводу запрета попадания в индекс страниц вложения можно прочитать здесь.

AB тестирование

Недавно, на одном из семинаров, узнал о AB тестировании. Суть метода: чтобы протестировать эффективность какого-либо элемента (например форма подписки на рассылку), нужно создать 2 и более видов форм с какими-либо функциональными и визуальными различиями. Установить их на разных страницах, либо чтоб они появлялись по очереди, и после смотреть статистику на какую форму мы получили больше откликов.

[site-socialshare]
  • Комментарии
  • Вложения

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

Пока нет комментариев. Будь первым!

Поисковая оптимизация сайта Поисковая оптимизация сайта
Разные шаблоны для разных категорий товаров
Рекомендации для васРазные шаблоны для разных категорий товаровOpttour.ru
Спасибо! Наш менеджер свяжется с Вами в течении 5 минут.