WordPress из коробки умеет в SEO примерно никак: ссылки вида ?p=123, метки и архивы плодят дубли, sitemap кривой, скорость зависит от темы и десятка плагинов. Хорошая новость — всё чинится за вечер без программиста. Разберу базовую настройку с нуля: какой плагин ставить, как починить ЧПУ, robots, sitemap и canonical, чем разогнать загрузку и где включить микроразметку. Дальше — порядок шагов, выбор хостинга и темы, разбор настроек плагина по галочкам, мобильная версия, безопасность и регулярное обслуживание. Сразу под два поиска — Яндекс и Google.
- WordPress без настройки генерирует мусорные URL и дубли. Базу закрывают один SEO-плагин (Yoast или Rank Math) плюс правильные пермалинки — это 80% результата за час работы.
- Rank Math в 2026 даёт больше бесплатно: schema, мониторинг 404, редиректы. Yoast проще и стабильнее. Для нового сайта беру Rank Math, для существующего на Yoast — не мигрирую без причины.
- Главная боль WP — дубли: метки, архивы автора и дат, пагинация, replytocom. Их закрывают через canonical и noindex в настройках плагина, а не правкой ядра.
- Фундамент под плагином — хостинг и тема: медленный сервер и тяжёлый конструктор тянут вниз весь сайт, и никакой кэш это не вытащит. Лёгкая тема на Gutenberg плюс приличный хостинг — половина скорости.
- Скорость и микроразметка тянут ранжирование в обе стороны: кэширующий плагин, сжатие картинок и чистка лишних плагинов плюс schema от SEO-плагина — и сайт готов под Яндекс и Google.
Порядок настройки: что за чем
Главная ошибка новичка — кинуться писать статьи на сыром движке, а потом разгребать дубли и битые ссылки задним числом. Техническую базу закладывают до наполнения, иначе каждая опубликованная запись успевает уйти в индекс по кривому адресу, и потом её приходится переклеивать 301-редиректами. Порядок шагов важен: смена пермалинков на сайте с сотней проиндексированных URL — это спецоперация, а на пустом сайте — три клика.
На каждом шаге держи в голове два поиска. Яндекс и Google читают одни и те же ЧПУ, canonical, sitemap и schema — отдельной «версии сайта под Яндекс» делать не нужно. Разница только в инструментах проверки: индекс и ошибки в Яндексе смотришь в Вебмастере, в Google — в Search Console; скорость обе панели показывают по Core Web Vitals. Дальше пройду по каждому шагу с настройками по галочкам. Если техническая база установлена, но нужна профессиональная настройка всех пунктов под обе поисковой системы, есть готовый пакет SEO на WordPress под ключ.
Кейс. Клиент опубликовал 40 статей на дефолтных ссылках /?p=, через два месяца включил ЧПУ без редиректов. Все 40 URL сменились разом, старые отдали 404, позиции по 18 запросам просели в среднем на 12 пунктов. Восстановление через 301-редиректы и переобход заняло шесть недель. На пустом сайте этот шаг занял бы 30 секунд и ноль потерь.
Фундамент: хостинг и тема
Под любым плагином лежит сервер и тема — и если они слабые, никакой кэш сайт не вытянет. Это тот слой, который меняют редко и неохотно, поэтому выбирать его стоит на берегу, а не когда уже накопилось двести статей. Медленный хостинг даёт высокий TTFB (время до первого байта) — поиск получает страницу с задержкой, а пользователь смотрит на белый экран.
Конструкторы вроде Elementor и WPBakery удобны визуально, но тянут на страницу десятки лишних div-обёрток, свой CSS и JavaScript. Если контентный сайт можно собрать на Gutenberg — собирай на нём: блочный редактор отдаёт чистую вёрстку без балласта. Конструктор оправдан на лендингах со сложным дизайном, но для блога это гиря на ногах. Если на сайте смешанный контент и ты затрудняешься определить платформу — определитель CMS покажет, что установлено, и даже версию.
Проверить чужую тему перед покупкой просто: открой демо-страницу в PageSpeed Insights и посмотри вес и LCP. Если демо уже грузится за 4 секунды на пустом контенте — на твоём наполнении будет хуже. Дочерняя тема (child theme) нужна, если правишь код темы руками: тогда обновление родителя не затрёт твои изменения.
SEO-плагин: Yoast или Rank Math
Голый WordPress не умеет задавать Title и Description, рисовать микроразметку, управлять canonical и noindex. Всё это берёт на себя один SEO-плагин — ставишь его первым делом, до наполнения сайта. Реально живых вариантов на рынке РФ два: Yoast SEO и Rank Math. All in One SEO тоже есть, но в 2026 он проигрывает обоим, брать его смысла нет. SEOPress — третий рабочий вариант, но в РФ его ставят реже, и сообщества вокруг него меньше, поэтому при затыке решение гуглить дольше.
Мой выбор для нового сайта в 2026 — Rank Math: бесплатно закрывает то, за что Yoast просит деньги, особенно schema и редиректы. Если сайт давно на Yoast и всё настроено — не мигрирую без повода: перенос настроек штука нервная, а профита на ровном месте ноль. Оба плагина одинаково дружат и с Яндексом, и с Google, никакой «заточки под один поиск» у них нет.
После установки оба гонят тебя через мастер первичной настройки (setup wizard). Не кликай «далее» вслепую — на этих экранах задаются важные вещи: тип сайта (блог, интернет-магазин, портал), данные организации или персоны для schema, привязка к Search Console и решение, индексировать ли архивы. Именно здесь, на старте, удобнее всего разом закрыть архивы автора и дат в noindex — потом не придётся искать галочки по разделам.
%title% %sep% %sitename%, чтобы не было голого имени сайта в каждом Title./sitemap_index.xml или /sitemap.xml.Пример. Ставить два SEO-плагина разом нельзя — они перебивают друг друга по Title и canonical, на странице появляются по два тега и поиск путается. Если меняешь Yoast на Rank Math, у второго на старте есть мастер импорта настроек первого: гонишь импорт, проверяешь и только потом отключаешь старый.
ЧПУ-пермалинки: чиним адреса страниц
Свежий WordPress отдаёт ссылки вида site.ru/?p=123 — ни человеку, ни поиску такой адрес ничего не говорит. Нужны ЧПУ — человекопонятные URL со словами вместо цифр. Это первая настройка после установки, и делается она в один заход: «Настройки» → «Постоянные ссылки».
Из встроенных вариантов бери «Название записи» (/%postname%/) — самый чистый. Структуру с датой (/2026/06/слаг/) не используй: дата в URL быстро старит статью в глазах пользователя и мешает обновлять материал. Латиницей или кириллицей — на ранжирование не влияет, но латинский слаг короче в копировании и не ломается при вставке в мессенджеры, поэтому я перевожу заголовки в транслит вручную или плагином вроде Cyr-To-Lat.
Отдельный вопрос — рубрики в URL. По умолчанию WordPress кладёт перед записью префикс /category/: получается /category/seo/статья/. Лишний сегмент удлиняет адрес и ничего не даёт. Если структура сайта плоская, держи записи прямо в корне (/статья/); если выстраиваешь иерархию рубрик под перелинковку — оставляй ЧПУ-категории. Полностью убрать префикс category штатной галочкой Yoast или Rank Math уже нельзя (опцию убрали ещё в 2018): для этого ставят отдельный плагин вроде Remove Category URL. Менять базу ради экономии сегмента стоит только на новом сайте — на старом это массовые редиректы. Главное правило — задать структуру один раз и больше не трогать.
Один нюанс: если сайт уже работал на старых ссылках и в индексе есть страницы, смена структуры разом поменяет все адреса. Без 301-редиректов со старых URL на новые ты потеряешь позиции и получишь пачку 404. На новом сайте проблемы нет — задаёшь ЧПУ один раз и забываешь. После любой смены структуры зайди в «Постоянные ссылки» и просто нажми «Сохранить» без изменений — это пересоздаёт правила перезаписи в .htaccess и лечит внезапные 404 на внутренних страницах.
robots.txt и sitemap.xml
Два файла, которые объясняют поисковику, что на сайте смотреть, а что нет. SEO-плагин генерирует оба автоматически, но проверить руками всё равно надо — дефолтные настройки WordPress закрывают лишнее или открывают мусор.
/wp-admin/, /wp-json/, поиск по сайту /?s=, фиды. Внутри — ссылка Sitemap: на карту. Для Яндекса раньше прописывали Host, теперь не нужен — директиву отменили.Важный нюанс: WordPress отдаёт robots.txt виртуально — физического файла на сервере нет, его на лету собирает движок и плагин. Если в корне лежит реальный файл robots.txt, он перебивает виртуальный, и правки в плагине ни на что не влияют. Проверь по site.ru/robots.txt, что отдаётся именно то, что ты ждёшь. Закрывать через robots то, что уже закрыто canonical и noindex, не нужно — наоборот, если страница закрыта в robots, поиск не сможет прочитать noindex на ней, и дубль зависнет в индексе как «обнаружено, но не проиндексировано».
В Rank Math карту включаешь в модуле «Sitemap», в Yoast — в «Основные» → «Возможности». Сразу убери из карты то, что не должно индексироваться: вкладки «Метки», «Форматы», архивы автора чаще всего лишние. Готовую карту отдаёшь поисковикам руками — в Яндекс Вебмастере раздел «Индексирование» → «Файлы Sitemap», в Google Search Console раздел «Файлы Sitemap». Без этого тоже найдут, но с подачей быстрее. После отправки вернись через несколько дней и сверь: сколько URL в карте и сколько ушло в индекс — большой разрыв сигналит о проблеме с обходом или о мусоре в карте.
Подробный разбор обоих файлов с примерами строк, типичными ошибками и проверкой я вынес в отдельную статью — robots.txt и sitemap.xml. И глоссарий, если нужно по-быстрому освежить, что это вообще: robots.txt и sitemap.xml.
Canonical и дубли: главная боль WordPress
WordPress по своей природе создаёт дубли — одну и ту же запись отдаёт по нескольким адресам. Поиск видит десять версий статьи вместо одной, размазывает по ним вес и индексирует мусор. Это не баг темы, это устройство движка, и закрывать дубли — обязательный шаг настройки.
Механика простая: на каждой странице SEO-плагин ставит тег canonical — указывает поиску главный адрес записи. Это снимает 90% дублей автоматически, ты лишь проверяешь, что canonical ведёт сам на себя, а не на чужую страницу. Оставшееся — метки и архивы — закрываешь через noindex в разделе плагина «Вид содержимого» (Yoast) или «Titles & Meta» (Rank Math): переключаешь архивы автора, дат и при ненужности — меток в noindex.
Отдельная засада — страницы вложений (attachment). WordPress на каждую загруженную картинку создаёт отдельную страницу с её собственным URL и почти пустым контентом. На блоге с сотней статей это сотни мусорных адресов. Rank Math по умолчанию редиректит attachment на сам файл — проверь, что галочка «Redirect Attachments» включена. Если ведёшь интернет-магазин на WooCommerce, добавляется свой класс дублей: фильтры по цвету и размеру (?filter_color=), сортировка (?orderby=), GET-параметры пагинации — их закрывают через canonical на чистую категорию и noindex на параметрические комбинации.
Пример. Блог на 80 статей отдавал в индекс 600+ страниц — за счёт меток, архивов по датам и страниц вложений. После noindex на архивы и attachment в Rank Math индекс ужался до 95 нужных URL, а трафик из Яндекса за полтора месяца подрос на четверть: поиск перестал распылять обход на мусор.
/page/2/ ссылаются на себя, не на первую, иначе глубокие записи выпадут.Тема дублей и canonical шире одного WordPress — настройка редиректов, склейка www и https, GET-параметры. Развёрнутый разбор с примерами в отдельном гайде: canonical и дубли страниц.
Скорость: кэш, картинки, лишние плагины
Скорость загрузки — фактор ранжирования и в Яндексе, и в Google, а WordPress без присмотра тормозит: тяжёлая тема, десяток плагинов, неоптимизированные картинки. Метрику смотришь в Core Web Vitals — три показателя, по которым Google оценивает реальную скорость для пользователя. Чинится в три приёма.
Три показателя Core Web Vitals стоит знать в лицо, иначе непонятно, что чинить. LCP (Largest Contentful Paint) — за сколько прорисовался самый крупный блок: обычно это обложка или первый экран; цель — до 2,5 секунды. INP (Interaction to Next Paint) сменил старый FID и меряет отзывчивость на клик и тап; цель — до 200 мс, и тут вредят тяжёлые скрипты. CLS (Cumulative Layout Shift) — скачки вёрстки, когда контент прыгает из-за дозагрузки картинок без размеров или шрифтов; цель — до 0,1. На WordPress CLS чаще всего лечится явным указанием ширины-высоты изображений и предзагрузкой шрифта.
Замеряешь до и после в PageSpeed Insights и Яндекс Вебмастере — оба показывают Core Web Vitals по твоему URL. Если результаты расходятся, полезно перепроверить метрики на PageSpeed Insights от Google — это основной источник истины для Core Web Vitals. Цель простая: уложить LCP (загрузку главного блока) в 2,5 секунды, убрать скачки вёрстки. Тяжёлые конструкторы вроде Elementor красивы, но грузят страницу — если скорость критична, смотри в сторону лёгких тем на блочном редакторе Gutenberg.
Кейс. Региональный интернет-магазин на тяжёлом шаблоне грузил карточку товара 5,4 секунды, LCP в красной зоне. Сжали 1200 фото в WebP через ShortPixel (минус 70% веса), включили кэш WP Rocket и снесли 6 неиспользуемых плагинов. LCP упал до 2,3 секунды, доля «хороших» URL в Search Console выросла с 14% до 88% за месяц, отказы на мобильных снизились заметно.
Частая ошибка — навалить три плагина оптимизации разом: кэш-плагин, отдельный минификатор и ещё один «ускоритель». Они конфликтуют, ломают вёрстку и съедают друг друга. Бери один комбайн (WP Rocket или связку кэш + ShortPixel) и не плоди дубли функций. После каждого включения минификации CSS/JS открывай сайт в режиме инкогнито и проверяй, что ничего не поехало — агрессивная склейка скриптов иногда ломает слайдеры и формы.
Скорость — большая тема со своими тонкостями: шрифты, сторонние скрипты, сервер, CDN. Кто хочет копнуть глубже, чем базовая настройка WP, — разбираю всё по полкам в гайде скорость загрузки сайта.
Мобильная версия и адаптивность
И Яндекс, и Google индексируют сайт по мобильной версии в первую очередь — это mobile-first индексация. Десктоп красив, но в выдаче решает то, как страница выглядит и грузится на телефоне. Больше половины трафика в РФ — мобильный, и если на узком экране кнопки слипаются, текст вылезает за край, а кликабельные элементы стоят впритык, поиск это видит и понижает.
Проверяешь мобильную версию тремя инструментами. Первый — встроенный в браузер режим устройства (F12 → иконка телефона): быстрая прикидка вёрстки на ширине 360–390px. Второй — реальный телефон: эмулятор не ловит всё, особенно тяжёлые шрифты и реальную скорость на 4G. Третий — отчёт «Удобство для мобильных» в панелях: Google показывает проблемные страницы, Яндекс Вебмастер сигналит об ошибках мобильной вёрстки. Самые частые болячки WordPress на телефоне — кнопки с white-space:nowrap, которые не переносятся и распирают контейнер, и таблицы фиксированной ширины.
Тему AMP под WordPress в 2026 я не ставлю по умолчанию: Google давно убрал требование AMP для топовых блоков, а поддержка двух версий страницы добавляет дублей и работы. Если обычная мобильная вёрстка укладывается в Core Web Vitals — AMP не нужен. Подробно про то, почему вёрстка вылезает на телефоне и как это ловить, — у меня отдельная заметка по мобильному overflow в работе с конкретными сайтами.
Безопасность: взлом убивает SEO
WordPress — самая популярная CMS в мире, и потому самая атакуемая. Взломанный сайт — это не только головная боль админа: поиск ловит вредоносный код, расклеивает спам-страницы по индексу и вешает на сайт пометку «угроза безопасности» в выдаче. Восстановить позиции после такого тяжелее, чем после любого технического косяка. Безопасность — часть SEO, а не отдельная история.
Откуда поиск узнаёт о заражении раньше тебя: в Яндекс Вебмастере есть раздел «Безопасность и нарушения», в Google Search Console — «Проблемы безопасности». Туда прилетает уведомление, если на сайте нашли вредоносный код, фишинг или вирусные редиректы. Проверяй эти разделы хотя бы раз в неделю — поймаешь беду до того, как она просядет трафик. Признаки взлома: в индексе вдруг появляются страницы на чужом языке (часто японский или фарма-спам), на сайте всплывают редиректы на левые домены, в карте sitemap чужие URL.
Кейс. Корпоративный блог словил инъекцию через дыру в неподдерживаемом плагине формы. За две недели в индекс Яндекса ушло 1400 спам-страниц на японском, сайт получил пометку «может угрожать безопасности». Чистка кода, обновление всего, удаление спам-URL и переобход заняли месяц; органический трафик вернулся к прежнему уровню только через 11 недель. Вовремя обновлённый плагин стоил бы пяти минут.
Минимальная гигиена закрывает почти все массовые атаки: свежие версии всего, нормальный пароль, защитный плагин, бэкап и привычка раз в неделю заглядывать в раздел безопасности обеих панелей. Это дешевле любого восстановления после взлома.
Микроразметка и финальная проверка
Микроразметка Schema.org объясняет поиску, что за объект на странице — статья, услуга, FAQ, хлебные крошки. За это можно получить расширенный сниппет: звёзды рейтинга, аккордеон с вопросами, крошки в выдаче. И Яндекс, и Google такую разметку читают.
Руками её писать не нужно — SEO-плагин ставит базовую schema сам. В Rank Math это модуль «Schema»: задаёшь тип статьи по умолчанию (Article), добавляешь FAQ-блок и HowTo через готовый редактор прямо в записи. В Yoast разметка Article и Breadcrumb включается в «Настройках», блоки FAQ и How-To добавляются в редакторе Gutenberg. Не лепи на одну страницу пять типов разметки — поиску достаточно одного основного типа плюс крошки.
Несколько правил, чтобы schema приносила сниппеты, а не штрафы. Разметка должна соответствовать видимому контенту: FAQ-блок размечают только если вопросы-ответы реально есть на странице, рейтинг — только при настоящих отзывах. Накрутка фейкового рейтинга в schema — прямой путь под ручные санкции. AggregateRating уместен на услуге, товаре или курсе, но не на обычной статье. Хлебные крошки (BreadcrumbList) держи на каждой странице — они и в сниппете красиво, и поиску помогают понять структуру сайта.
Финальный чек-лист после настройки: ЧПУ включены, один SEO-плагин активен, robots и sitemap отдаются и поданы в обе панели, архивы и метки в noindex, canonical на местах, кэш и сжатие картинок работают, schema проходит валидаторы, Site Health зелёный. Дальше — наполнение и внутренняя оптимизация уже на уровне каждой страницы. WordPress на этом перестаёт мешать SEO и начинает помогать.
Регулярное обслуживание и ошибки
Настройка — это старт, а не финиш. WordPress живёт: плагины обновляются и иногда ломают вёрстку, появляются битые ссылки, накапливается мусор в базе, индекс обрастает лишним. Раз в месяц стоит пройти короткий регламент, чтобы сайт не зарастал техническим долгом и не терял позиции по-тихому.
Отдельно собрал частые ошибки, на которых режутся новички — каждая стоит трафика, а ловится за пять минут.
Самая обидная из них — забытая галочка «Попросить поисковые системы не индексировать». Сайт месяцами не индексируется, владелец винит контент и конкуренцию, а причина — один чекбокс в «Чтении». Проверь его первым делом, если страницы не идут в индекс. Дальше начинается уже не техника, а контент и внутренняя оптимизация — но это другая история, и движок здесь больше не мешает.
Частые вопросы
Какой SEO-плагин выбрать для WordPress в 2026 — Yoast или Rank Math?
С чего начать настройку SEO на новом сайте WordPress?
Какие пермалинки (ЧПУ) ставить на WordPress?
Откуда в WordPress берутся дубли страниц и как их закрыть?
Нужно ли вручную создавать robots.txt и sitemap.xml на WordPress?
Как ускорить сайт на WordPress?
Что такое Core Web Vitals и какие значения считаются хорошими?
Влияет ли мобильная версия WordPress на SEO?
Как взлом WordPress связан с SEO и как защититься?
Нужна ли микроразметка на WordPress и как её добавить?
Что проверить через Site Health в WordPress перед запуском?
Главное
Базовая SEO-настройка WordPress в 2026 — это один SEO-плагин (для нового сайта беру Rank Math, существующий на Yoast не трогаю), ЧПУ-пермалинки «Название записи», проверенные robots и sitemap, закрытые через canonical и noindex дубли (метки, архивы, пагинация), разогнанная скорость (кэш, WebP, чистка плагинов) и микроразметка от плагина. Сверху — Site Health в зелёном и подключённые панели Яндекса и Google. После этого движок не мешает продвижению, а трафик идёт из обоих поисков.
Хочешь, чтобы WordPress-сайт настроили под Яндекс и Google как надо — возьму на себя SEO на WordPress под ключ: плагин, ЧПУ, дубли, скорость и микроразметка с проверкой в обеих панелях.