Как настроить в админке WP отправку двух заголовков к каждой новости — для роботов Яндекса и Гугла?
Здравствуйте. Помогите, если кто знает как, пожалуйста. Для лучшего продвижения новостного сайта на WordPress требуется теперь делать сразу два разных заголовка для поисковых роботов Яндекса и Гугла. Первый должен быть по новым правилам Яндекса длиной не более 80 символов и максимально "информационным", то есть сухим, а второй - для Гугла - может быть любым: красивым, кликабельным и прочее. Основным будем ставить заголовок "для Гугла", а "вторым" тот, что для Яндекса. Пример - новость на сайте "Ленты.ру": Ссылка удалена модератором.
То есть, как сделать так, чтобы плагин Yandex.News Feed by Teplitsa передавал в rss не дефолтный заголовок, а тот, который мне надо, но при этом Яндекс учитывал у себя в системе "второй" заголовок, сделанный специально для него? Если я правильно все понимаю. Заранее спасибо.
Дополнительно:
1) Какое отношение к вопросу имеют заголовки HTTP? Вы путаете HTML и HTTP?
2) Что мешает всем отдаватьь заголовки «длиной не более 80 символов и максимально "информационные» (и какие это новые правила Яндекса, что случится за их невыполнение)?
3) Примером чего является новость на сайте "Ленты.ру" или это просто спам?
ля Гугла - может быть любым: красивым, кликабельным и прочее.
Гугль вводит новые стандарты RSS? А можно ссылочку на первоисточник? Хочу видеть!!!
Кстати, если это так, то родной вордпрессовский заголовок записи не соответсвует вышеуказанным критериям, так как красивым и кликабельным его делает Тема, а сам по себе он текст, просто текст.
чтобы плагин Yandex.News Feed by Teplitsa передавал
Думаю, автор плагина знает лучше всех, потому стоит с него начать. Если не сложится с автором, боюсь, придется (до|пере)писывать плагин.
2) сейчас ничего мешает отдавать в Яндекс такие заголовки, кроме того, что очень сложно почти всегда сделать яркий заголовок длиной до 80 символов. Попробуйте сами. Но у Яндекса новая политика в этом смысле, и возражений они не принимают по обыкновению. Отдаем в Яндекс сейчас все, но хотелось бы отдавать ему подходящий по его требованиям заголовок (сухой и до 80 символов), а читатели при этом видели бы в новостных лентах другой заголовок - который яркий, цепляющий и вместе с тем тоже информативный. Заголовок же Яндекса стоял "вторым" на странице с новостью, прямо под первым и был более блёклого цвета, дабы не бросаться в глаза.
3. Новость и ссылка на нее на Ленте.ру - это вовсе не спам, а действительно пример. Во-первых, так, подстраиваясь под Яндекс, стали делать уже многие СМИ, а во-вторых, тут про мой регион написано. Вместе с тем у Ленты.ру свой движок, а у нас WP, и потому сразу реализовать на его движке два заголовка не получилось.
Потому и о помощи прошу.
Ответы:
Вопрос-то - не про SEO.
Формируйте два фида, где в заголовки будут подтягиваться разные поля в заголовок.
Тут толковый разработчик нужен, их много, а задачка не самая сложная.
- Вот в этом и вся загвоздка. Как сформировать эти самые фиды. Как заставить разные заголовки отсылать из WP в новостные RSS-ки, одно в Гугл, а другое в Яндекс и никак иначе...
Уже с несколькими переговори потенциальными исполнителями, и пока ни один не сказал, что наверняка знает, как это сделать на движке WP.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Делать два разных заголовка для Яндекса и Google можно, но важно не путать несколько сущностей: обычный заголовок записи, SEO title, заголовок в RSS/Яндекс.Новостях и H1 на странице. Если нужно отдавать отдельный заголовок именно в RSS-фид Яндекс.Новостей, лучше завести отдельное поле, например ACF
yandex_news_title, и подменять title только в нужном фиде.Не стоит менять общий
the_titleглобально: это сломает карточки, хлебные крошки, sitemap, Open Graph и обычные архивы. Нужна точечная подмена для конкретного feed/template.Пример общей идеи:
add_filter('the_title_rss', function ($title) { if (!is_feed()) { return $title; } $custom = get_post_meta(get_the_ID(), 'yandex_news_title', true); if ($custom) { return wp_strip_all_tags($custom); } return $title; });
Но если используется конкретный плагин Yandex.News Feed, сначала надо найти его фильтры. Ищите в коде плагина
apply_filtersрядом с генерацией title. Правильнее подключиться к фильтру плагина, а не переписывать его файлы. Файлы плагина править нельзя: при обновлении изменения исчезнут.Рабочая схема такая: основной title остаётся для сайта и Google, отдельное поле хранит короткий информационный заголовок для Яндекса, а фид подставляет его только если поле заполнено. Длина до 80 символов — это уже валидация поля: можно добавить подсказку в админке или проверку при сохранении записи.