=== YaRank ===
Contributors: yarank, webdenis
Tags: seo, yandex, sitemap, schema, woocommerce
Requires at least: 5.9
Tested up to: 7.0
Requires PHP: 7.4
Stable tag: 1.0.1
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

Русский SEO-плагин: мета-теги, XML-карта для Яндекса и Google, микроразметка Schema.org, умный noindex для WooCommerce. Работает сразу после активации — настраивать нечего.

== Description ==

YaRank — SEO-плагин для сайтов на русском языке, который настраивает базовое SEO за вас. Никаких мастеров установки и десятков вкладок: поставили, активировали — и всё уже работает с оптимальными значениями. Интерфейс полностью на русском.

Обычные SEO-плагины заточены под Google и молчат про Яндекс: не знают директиву `Host`, не умеют работать с ИНН в разметке и с Вебмастером. YaRank закрывает русскую специфику из коробки — там, где иностранные плагины оставляют вас с ручной работой.

= Что умеет бесплатная версия =

✅ **Работает сразу после активации** — все функции уже включены с оптимальными значениями, настраивать ничего не нужно. Просто ставьте и пишите контент.

✅ **Мета-теги title и description** — шаблоны собираются из готовых блоков (название записи, название сайта, слоган, разделитель, категория, дата) с живым примером: видно сразу, что получится, ещё до сохранения.

✅ **Сниппет в стиле Google прямо в редакторе** — живое превью со счётчиками длины: переборщили с заголовком — сразу видно красный индикатор.

✅ **Мета-бокс у каждой записи** — свой title, description и noindex/nofollow для отдельных страниц.

✅ **Массовое редактирование** — сгенерируйте title и description для всех записей из готовых шаблонов или своего набора блоков в один клик. Для каталогов на тысячу карточек это часы ручной работы, сжатые в одну кнопку.

✅ **Яндекс.Вебмастер в админке** — подтверждение прав, статус индексации, отправка карты сайта и запрос переобхода без захода в Вебмастер.

✅ **Единый sitemap.xml** — один формат, одинаково понятный Яндексу и Google: приоритеты, даты изменений, исключение ненужных записей.

✅ **Мгновенная индексация** — при публикации записи плагин шлёт пинг IndexNow в Яндекс и Bing. Переобход больше не ручная рутина.

✅ **robots.txt с директивой Host** — Host для Яндекса, ссылка на карту и свои правила — генерируется автоматически.

✅ **Транслит ЧПУ** — кириллические адреса автоматически превращаются в латиницу. Та самая правка, которую раньше приходилось делать руками.

✅ **Чистый индекс** — страницы с параметрами (фильтры, сортировки, utm-метки) закрываются noindex автоматически, со списком разрешённых параметров. Canonical — на месте.

✅ **Schema.org JSON-LD** — Организация с ИНН (taxID), Статья, хлебные крошки, WebSite с поиском.

✅ **Красивые превью в соцсетях** — Open Graph и Twitter Cards: ссылка в Telegram, VK или OK раскрывается карточкой с картинкой.

✅ **301 редиректы** — таблица «старый адрес → новый» прямо в настройках. Переносите страницу — ссылочный вес не теряется.

✅ **WooCommerce — умный noindex** — корзина, оформление заказа и личный кабинет автоматически закрыты от индексации.

✅ **Аудит «SEO-здоровье»** — чек-лист: человекочитаемые ЧПУ, robots.txt, карта сайта, описания, HTTPS, IndexNow. Каждый пункт — зелёный/жёлтый/красный с подсказкой, что чинить.

= В чём отличие от иностранных плагинов =

Яндекс — единственный поисковик, который уважает директиву `Host` в robots.txt. Он ищет в разметке ИНН организации (`taxID`). У него свой Вебмастер, свои правила переобхода и своя доля поиска. Англоязычные плагины про это не знают — их мир заточен под Google.

YaRank закрывает русскую специфику из коробки: Host, ИНН, Вебмастер, транслит кириллицы, борьба с дублями, которые Яндекс индексирует охотнее Google.

= Планы Pro =

⚡ Автоматический переобход — при публикации запись сразу отправляется на переобход в Яндекс.

📊 Аналитика индексации по записям прямо в редакторе.

🎯 Анализ контента по данным Wordstat: ключевые слова, плотность, подсказки LSI.

📍 Регионы и мультирегиональная выдача Яндекса.

🛒 Схема товара WooCommerce (цена, наличие, отзывы).

🔗 Продвинутые 301 редиректы и проверка битых ссылок.

== Installation ==

Установите плагин стандартным способом:

1. В админке WordPress перейдите в «Плагины → Добавить новый».
2. В поле поиска введите «YaRank» и нажмите «Установить» рядом с нужным плагином.
3. После установки нажмите «Активировать».

Или загрузите архив вручную:

1. Скачайте файл `yarank.zip` со страницы плагина.
2. В админке перейдите в «Плагины → Добавить новый → Загрузить плагин».
3. Выберите скачанный архив и нажмите «Установить», затем «Активировать».

После активации:

1. Откройте пункт YaRank в админ-меню и заполните нужные поля.
2. Отправьте /sitemap.xml в Яндекс.Вебмастер и Google Search Console.

== Frequently Asked Questions ==

= Нужно ли что-то настраивать? =

Нет. Все функции уже включены с оптимальными значениями: noindex для фильтров и страниц с параметрами, /sitemap.xml, robots.txt с Host для Яндекса, автоподстановка описаний из текста записи, транслит ЧПУ, мгновенная индексация (IndexNow).

Поставили плагин — и пишете контент. Если что-то отключили и захотели вернуть — нажмите «Вернуть рекомендуемые» на странице настроек.

= Где находится карта сайта? =

По адресу /sitemap.xml. Если ссылка не открывается — зайдите в «Настройки → Постоянные ссылки» и нажмите «Сохранить»: правила перезаписи обновятся.

= Почему не показывается meta description? =

Описание выводится только когда оно заполнено: для записей — в мета-боксе YaRank, для главной страницы — в настройках плагина.

= Где микроразметка? =

Разметка выводится на сайте в формате JSON-LD. На главной: WebSite с поиском и Организация (если заполнено название). На страницах записей: Статья и хлебные крошки.

Проверить можно через «Просмотр кода страницы» (Ctrl+U) → поиск по `ld+json`.

== External Services ==

Плагин подключается к внешним API только после того, как вы явно включите соответствующую функцию.

* Yandex.Webmaster API — подтверждение прав, статус индексации, отправка карт и запрос переобхода. Требует авторизации через OAuth. Данные: адрес сайта, токены, URL карт и записей. https://yandex.ru/legal/confidential/
* Yandex IndexNow — отправка адреса записи при публикации для мгновенной индексации. Отключается в настройках. https://yandex.ru/legal/confidential/
* Bing IndexNow — отправка адреса записи при публикации для мгновенной индексации. Отключается в настройках. https://privacy.microsoft.com/en-us/privacystatement

== Changelog ==

= 1.0.1 =
* Вкладка «Яндекс.Метрика» (YaRank Pro): выбор счётчика, кнопка автоматического создания и переключатель установки кода.
* Вкладка «Яндекс.Метрика»: полноширинная вёрстка на широких экранах, индикатор загрузки привязан к окну.

= 1.0.0 =
* Ребрендинг: плагин теперь называется YaRank. Новое имя, новая иконка, те же функции.
* Slug плагина изменён на `yarank`: папка и текстовый домен теперь `yarank`.

= 0.3.2 =
* Вкладка «Яндекс.Вебмастер»: новый интерфейс (карточки статусов, шаги подключения, бэджи); все действия через AJAX с индикаторами загрузки — страница больше не зависает, статусы обновляются в фоне.
* Подключение Яндекса по одноразовому коду: Яндекс показывает код, плагин автоматически обменивает его на токен (старый способ с вставкой адреса тоже работает).

= 0.3.1 =
* Редиректы: пробел или таб работает как разделитель (/old/ /new/), исправлено сохранение нескольких правил из одного поля.
* Массовое редактирование: готовые шаблоны с живым примером и таблица блоков с описаниями.

= 0.3.0 =
* Новая вкладка «301 Редиректы»: таблица «откуда → куда», редирект с 404 сохраняет ссылочный вес и посетителей.
* Новая вкладка «Массовое редактирование»: генерация title/description для всех записей из блоков (название, отрывок, дата, категория и другое) в один клик — для каталогов и больших сайтов.

= 0.2.13 =
* Исправлено: транслит кириллических адресов не работал на WordPress 6.2+ (ядро кодирует кириллицу в percent-encode до фильтров плагина) — кириллические адреса больше не появляются.
* Исправлено: записи, созданные со старой ошибкой (кириллица в адресе в БД), теперь открываются по прямой ссылке.

= 0.2.12 =
* Новая функция: Open Graph и Twitter Cards — красивые карточки с картинкой при отправке ссылок в VK, Telegram и OK. Включено по умолчанию.

= 0.2.11 =
* Новая функция: canonical для записей, страниц, архивов и главной — Яндекс и Google больше не склеивают дубли (utm, фильтры, пагинация). Включено по умолчанию.
* Исправлено: новые чекбоксы этой версии больше не сбрасываются при первом сохранении после обновления — настройки мигрируют автоматически.

= 0.2.10 =
* Исправлено: чекбоксы больше не сбрасываются после чистой установки (первое сохранение с одной вкладки обнуляло настройки других, когда опции не было в БД).

= 0.2.9 =
* Исправлена критическая ошибка PHP 8.2: страницы записей больше не падают с ошибкой 500 при автоподстановке описаний (неверный аргумент mb_strrpos).

= 0.2.8 =
* Окончательно исправлен баг «пропадающих чекбоксов»: у каждого чекбокса есть скрытый двойник со значением 0, а отсутствующие на сохранении поля берутся из сохранённых значений. Снятие галочек работает, остальные настройки сохраняются.

= 0.2.7 =
* Исправлено «пропадание чекбоксов»: сохранение с одной вкладки больше не сбрасывает настройки остальных.

= 0.2.6 =
* Исправлено сохранение настроек: кнопка «Вернуть рекомендуемые» вынесена в отдельную форму и больше не сбрасывает поля при обычном сохранении.
* Баннер на странице настроек стал честным: «всё оптимально» только пока настройки не тронуты.

= 0.2.5 =
* Ноль настроек: приветственный баннер после активации + подсказка на странице настроек.
* Кнопка «Вернуть рекомендуемые» — мгновенный сброс к оптимальным значениям.

= 0.2.4 =
* Автоподстановка описания из текста записи (160 символов), когда оно не заполнено вручную — решает проблему пустых и дублирующихся описаний, которые отмечает Яндекс.Вебмастер. Настраивается в «Общие».
* Аудит: проверка описаний теперь учитывает автоподстановку.

= 0.2.3 =
* Шаблон заголовка главной страницы («Название сайта — Слоган») — заголовок главной больше не остаётся дефолтным.

= 0.2.2 =
* Отдельный пункт YaRank в админ-меню.
* Схема WebSite с SearchAction на главной — выводится всегда.
* Вкладка «Микроразметка»: блок «где появляется разметка» и живое JSON-превью.

= 0.2.1 =
* Убраны дубли карт в robots.txt: встроенная карта WordPress (/wp-sitemap.xml) отключается, когда включена карта YaRank.
* Строка sitemap в robots.txt выводится только когда карта включена.
* Иконки аудита теперь цветные (зелёный/жёлтый/красный).

= 0.2.0 =
* Карта сайта переехала на стандартный адрес /sitemap.xml.
* Исправлен файл ключа IndexNow (сброс правил перезаписи при сохранении настроек).
* Живое превью сниппета в редакторе со счётчиками длины title и description.
* Понятные шаблоны заголовков: пресеты с живым примером вместо сырого кода.
* Логотип выбирается из медиатеки (кнопка «Выбрать»).
* robots.txt: Host для Яндекса, ссылка на карту, свои правила.
* noindex для страниц с параметрами (фильтры, сортировки, utm) + список разрешённых параметров.
* Транслит кириллических адресов в латиницу.
* Новая вкладка «Аудит» — проверка SEO-здоровья.
* Расширенное поле ИНН.

= 0.1.1 =
* Добавлена мгновенная индексация IndexNow (Яндекс + Bing) при публикации.

= 0.1.0 =
* Первая версия: мета-теги, шаблоны заголовков, XML-карта, Schema.org, noindex для WooCommerce.

== Screenshots ==

1. Настройки — шаблоны title и description собираются из блоков с живым примером, описание главной и опции индексации.
2. Яндекс.Вебмастер в админке — подтверждение прав, здоровье индексации, диагностика с рекомендациями, отправка карты и переобход.
3. Аудит «SEO-здоровье» — ЧПУ, robots.txt, карта сайта, описания, HTTPS и IndexNow: всё зелёное или с подсказкой, что исправить.
4. Массовое редактирование — выберите готовый шаблон или соберите свой из блоков: результат сразу виден в примере, одна кнопка — и title/description у всех записей.
5. Мета-бокс в редакторе записи — свой title/description со сниппетом в стиле Google и счётчиками длины, noindex/nofollow для страницы.
