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

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

HIT

13.11.2015

2796

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

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

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

Надо закрывать все внешние ссылки, ведущие на сторонние сайты, от индексации: ставим ссылкам атрибут 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 минут.