by Flector
4.6 (145 reviews)
RSS for Yandex Turbo
Создание RSS-ленты для сервиса Яндекс.Турбо.
Tested up to WP 6.8.3 (Current: 6.9)
v1.32
Current Version v1.32
Updated 8 months ago
Last Update on 19 May, 2025
Synced 6 hours ago
Last Synced on
Rank
#1,105
—
No change
Active Installs
30K+
-8.3%
KW Avg Position
29
—
No change
Downloads
381.6K
+2 today
Support Resolved
0%
—
No change
Rating
92%
Review 4.6 out of 5
4.6
(145 reviews)
Next Milestone 40K
30K+
40K+
168
Ranks to Climb
-
Growth Needed
8,000,000
Active Installs
Pro
Unlock Exact Install Count
See the precise estimated active installs for this plugin, calculated from real-time ranking data.
- Exact install estimates within tiers
- Track install growth over time
- Milestone progress predictions
Need 8,443 more installs to reach 40K+
Rank Changes
Current
#1,105
Change
Best
#
Downloads Growth
Downloads
Growth
Peak
Upgrade to Pro
Unlock 30-day, 90-day, and yearly download history charts with a Pro subscription.
Upgrade NowReviews & Ratings
4.6
145 reviews
Overall
92%
5
130
(90%)
4
1
(1%)
3
1
(1%)
2
4
(3%)
1
9
(6%)
Tracked Keywords
Showing 5 of 5| Keyword | Position | Change | Type | Updated |
|---|---|---|---|---|
| yandex turbo | 1 | — | Tag | 18 hours ago |
| turbo | 5 | — | Tag | 18 hours ago |
| yandex | 16 | — | Tag | 18 hours ago |
| rss | 17 | — | Tag | 18 hours ago |
| feed | 106 | — | Tag | 18 hours ago |
Unlock Keyword Analytics
Track keyword rankings, search positions, and discover new ranking opportunities with a Pro subscription.
- Full keyword position tracking
- Historical ranking data
- Competitor keyword analysis
Track This Plugin
Get detailed analytics, keyword tracking, and position alerts delivered to your inbox.
Start Tracking FreePlugin Details
- Version
- 1.32
- Last Updated
- May 19, 2025
- Requires WP
- 4.4+
- Tested Up To
- 6.8.3
- PHP Version
- 5.3 or higher
- Author
- Flector
Support & Rating
- Rating
- ★ ★ ★ ★ ★ 4.6
- Reviews
- 145
- Support Threads
- 0
- Resolved
- 0%
Keywords
Upgrade to Pro
Unlock keyword rankings, search positions, and detailed analytics with a Pro subscription.
Upgrade NowSimilar Plugins
WP Adminify – White Label WordPress, Admin Menu Editor, Login Customizer
7K+ installs
#2,736
Master Addons For Elementor – White Label, Free Widgets, Hover Effects, Conditions, & Animations
40K+ installs
#929
The SEO Framework – Fast, Automated, Effortless.
200K+ installs
#273
Smash Balloon Social Post Feed – Simple Social Feeds for WordPress
200K+ installs
#276
VK All in One Expansion Unit
100K+ installs
#300
Frequently Asked Questions
Common questions about RSS for Yandex Turbo
Первое. Сравните оригинальную страницу и ее турбо-версию. Особое внимание уделите соответствию заголовков, картинок, наличию блока содержимого и прочего. Крайне рекомендую проверить опцию "Миниатюра в RSS" - не ставьте галку на этой опции, если в вашей теме в начале статьи не выводится "Изображение записи". Очень желательно установить именно тот размер миниатюры, который используется вашей темой. Как Яндекс проверяет соответствие картинок мне неизвестно - возможно, что по названию файла. В таком случае выбор неправильного размера изображения может быть причиной бана. Второе. Если вы используете механизм шаблонов в плагине, то проверьте, чтобы ваши шаблоны более-менее соответствовали обычным страницам. Механизм шаблонов нужен в основном для преобразования лэндинг-страниц, которые сверстаны в визуальных билдерах и не могут быть напрямую преобразованы в турбо-формат. А также для использования совместно с произвольными типами записей, использующими свои произвольные поля для хранения контента. В любом другом случае надо убедиться в том, что вы не злоупотребили механизмом шаблонов. Третье. Скачайте Яндекс.Браузер - в нем есть такая опция, как "Режим чтения". Если для вашего сайта эта опция доступна, то вы можете увидеть, как именно видит вашу страницу Яндекс. Сравните вашу страницу в режиме чтения с ее турбо-версией и отметьте для себя их отличия. Устраните отличия с помощью настроек плагина. Четвертое. Не стесняйтесь писать Платонам и требовать от них четкого ответа, что именно не так с вашими турбо-страницами. Яндекс запустил проверку турбо-страниц, но работает она сейчас достаточно криво. Например, Яндекс ругается на отсутствие даты и дает для примера старую версию турбо-страницы и забанненую версию этой турбо-страницы. Самое удивительное - и там и там даты нет. Как можно ругаться на несоответствие дат, если и там и там их нет? Поэтому еще раз повторю, доставайте Платонов - пусть связываются с командой, работающей над турбо-страницами и узнают точную причину бана. В противном случае, велика вероятность, что Платоны на глазок определят проблему и в этом случае устранить бан турбо-страниц будет сложно.
Один из самых частых вопросов. Вы изменили настройки плагина, потом смотрите вашу RSS-ленту в браузере и не видите никаких изменений. Так происходит из-за того, что все браузеры кэшируют открытые RSS-ленты. Чтобы увидеть изменения надо произвести "жесткую" перезагрузку страницы. В браузерах это делается при нажатии клавиш Ctrl + F5.
RSS-лента для Яндекс.Турбо никогда не сможет пройти обычную валидацию, так как технические требования Яндекс.Турбо несовместимы со стандартами обычного RSS. Проверять RSS-ленты надо в Яндекс.Вебмастере, в разделе "Турбо-страницы\Источники". После добавления RSS-ленты Яндекс через пару минут выдаст свой "диагноз".
Убедитесь, что вы выбрали хотя бы один тип записей и не перемудрили с настройками исключений. Если проблема не в этом, то откройте RSS-ленту в браузере и визуально убедитесь, что она открывается. Зачастую начинающие вебмастера отключают RSS-ленты (вручную или плагинами типа Clearfy), а потом удивляются тому, что RSS-ленты на сайте не работают. Cодержимое Турбо-страницы не соответствует оригинальной версии (в содержимом тега <![CDATA[]]> найдены закодированные символы) Опытным путем установлено, что Яндекс ругается на стрелочки < и > (< и >), причем неважно закодированные они или нет. На вопрос, как это исправить Платоны посоветовали просто "забить". Цитата: "Такие предупреждения носят, в первую очередь, информационный характер. Насколько я вижу, в обоих случаях эти символы отображаются на Турбо-страницах корректно, поэтому подобные предупреждения можно игнорировать, они никак не повлияют на Турбо-версии страниц вашего сайта в выдаче."
Установите любой из плагинов кэширования. Они все умеют кэшировать RSS-ленты. Бывает, что боты Яндекса сходят с ума и начинают запрашивать RSS-ленты по паре раз в минуту - даже мощный сервер под такой нагрузкой может "лечь". Убедить Платонов в том, что это ненормально практически невозможно, а поэтому установка плагина кэширования это единственный способ решить проблему излишней нагрузки.
Добавьте в robots.txt директиву: Allow: /feed/turbo/ Где "turbo" это имя вашей RSS-ленты. Учтите, что сервис Яндекс.Турбо кэширует полученный robots.txt, так что изменения в robots.txt он заметит не сразу!
В плагине есть фильтр yturbo_the_content для обработки контента записей. Пример использования (добавьте этот код в файл functions.php вашей темы): function yturbo_sign( $content ) { $rsspermalink = esc_url( apply_filters( 'the_permalink_rss', get_permalink() ) ); $sign = 'Сообщение "<a href="'.$rsspermalink.'">'.get_the_title_rss().'</a>" появилось сначала на "<a href="'.get_bloginfo_rss('url').'">'.get_bloginfo_rss('title').'</a>".'; $content .= $sign; return $content; } add_filter( 'yturbo_the_content', 'yturbo_sign' ); И вы получите подпись, аналогичную подписи от плагина Yoast SEO.
Добавляем кнопку в качестве "подписи". function my_yturbo_sign_buttons( $content ) { $sign = ' <p><b>ДОРОГИЕ ЧИТАТЕЛИ!</b></p> <p>Если вам необходимо с нами связаться — позвоните нам (круглосуточно).</p> <p><b>Это быстро и бесплатно!</b></p> <button formaction="tel:+74991111111" data-background-color="#5B97B0" data-color="white" data-primary="true">Москва</button> '; $content .= $sign; return $content; } add_filter( 'yturbo_the_content', 'my_yturbo_sign_buttons' ); Добавляем кнопку в виде шорткода. function turbobutton_shortcode( $atts, $content ) { //получаем настройки плагина, чтобы узнать имя RSS-ленты $yturbo_options = get_option('yturbo_options'); $rssturboname = $yturbo_options['ytrssname']; //если это не наша RSS-лента, то шорткод будет удален if ( ! is_feed($rssturboname) ) return ''; //формируем кнопку шорткода $content = ' <button formaction="https://www.yandex.ru" data-background-color="#5B97B0" data-color="white" data-primary="true">Яндекс</button> '; return $content; } add_shortcode ( 'turbobutton', 'turbobutton_shortcode' ); Теперь вам достаточно добавить в контент код [turbobutton] и в нужном месте записи будет выведена кнопка (только на турбо-страницах). Замена указанной ссылки на кнопку. Предположим, что у вас имеется конкретная ссылка и вы хотите ее заменить на кнопку на турбо-страницах. Например, ваша ссылка выглядит так: <a class="phone" href="tel:+74959998877">+7(495)999-88-77</a> Чтобы заменить ее на турбо-страницах на кнопку вам надо использовать код: function yturbo_replace_link( $content ) { //что заменить $link = '<a class="phone" href="tel:+74959998877">+7(495)999-88-77</a>'; //на что заменить $button = '<button formaction="tel:+74959998877" data-background-color="#5B97B0" data-color="white" data-primary="true">+7(495)999-88-77</button>'; //производим замену $content = str_replace($link, $button, $content); return $content; } add_filter( 'yturbo_the_content', 'yturbo_replace_link' ); Замена всех ссылок на кнопки по регулярному выражению. Предположим, что у вас есть однотипные ссылки вида: <a class="buy" href="http://www.wptest.ru/buy_test/">Купить товар «Название товара»</a> <a class="buy" href="http://www.wptest.ru/buy_test2/">Купить товар «Название товара 2»</a> Чтобы заменить их на кнопки на турбо-страницах вы должны использовать код: function yturbo_replace_all_links( $content ) { //что заменить $pattern = '/<a class="buy" href="(.*?)">Купить товар «(.*?)»<\/a>/i'; //на что заменить $replacement = '<button formaction="$1" data-background-color="#5B97B0" data-color="white" data-primary="true">$2</button>'; //производим замену $content = preg_replace($pattern, $replacement, $content); return $content; } add_filter( 'yturbo_the_content', 'yturbo_replace_all_links' ); Если вам нужна будет помощь с регулярками, то спрашивайте на форуме плагина.
Есть 3 способа использования формы обратной связи: а) Вы можете использовать "блок обратной связи" (включается в настройках плагина). Форма обратной связи будет выведена при клике на соответствующую кнопку в этом блоке. б) Вы можете вывести готовую форму обратной связи прямо в контенте записи (шорткодом, выводимым только на турбо-страницах). Для этого используйте код: function turbocontactform_shortcode( $atts, $content ) { //получаем настройки плагина, чтобы узнать имя RSS-ленты $yturbo_options = get_option('yturbo_options'); $rssturboname = $yturbo_options['ytrssname']; //если это не наша RSS-лента, то шорткод будет удален if ( ! is_feed($rssturboname) ) return ''; //создаем форму обратной связи //data-send-to должен содержать email, принадлежащий вашему домену //при заполнении data-agreement-company обязательно нужно указать и data-agreement-link $content = ' <form data-type="callback" data-send-to="mail@example.com" data-agreement-company="ООО Ромашка" data-agreement-link="http://example.com"> </form> '; return $content; } add_shortcode ( 'turbocontactform', 'turbocontactform_shortcode' ); Форма обратной связи будет выведена в полном виде только на турбо-страницах при использовании шорткода [turbocontactform]. в) Вы можете вывести кнопку, при клике на которую будет выведена форма обратной связи (шорткодом, выводимым только на турбо-страницах). Для этого используйте код: function turbocontactformbutton_shortcode( $atts, $content ) { //получаем настройки плагина, чтобы узнать имя RSS-ленты $yturbo_options = get_option('yturbo_options'); $rssturboname = $yturbo_options['ytrssname']; //если это не наша RSS-лента, то шорткод будет удален if ( ! is_feed($rssturboname) ) return ''; //создаем кнопку, выводящую по клику форму обратной связи //data-send-to должен содержать email, принадлежащий вашему домену //при заполнении data-agreement-company обязательно нужно указать и data-agreement-link $content = ' <button formaction="mailto:mail@example.com" data-background-color="#5B97B0" data-color="white" data-primary="true" data-send-to="mail@example.com" data-agreement-company="ООО Ромашка" data-agreement-link="http://example.com">Оставить заявку </button> '; return $content; } add_shortcode ( 'turbocontactformbutton', 'turbocontactformbutton_shortcode' ); Шорткод [turbocontactformbutton] выведет кнопку "Оставить заявку", при клике на которую будет открыта форма обратной связи (и кнопка и форма обратной связи будут выведены только на турбо-страницах). Шаблоны и плагин Advanced Custom Fields В шаблонах записей можно использовать произвольные поля. Для этого достаточно обернуть название произвольного поля символами %% (пример - %%_aioseop_title%%). Однако, при использовании произвольных полей, созданных плагином Advanced Custom Fields зачастую получить значение этих произвольных полей затруднительно, так как ACF хранит многие поля в своем собственном формате. Как это обойти? В плагине есть фильтр шаблонов yturbo_the_template, которым можно воспользоваться. Покажу на примере, предположим у вас в ACF созданы произвольное поля: myimage - тип "Изображение", возвращаемое значение "Массив изображения". steps - тип "Повторитель", внутри есть произвольные поля: image - тип "Изображение", возвращаемое значение "Ссылка на изображение"; text - тип "Текст". Если вы пропишите в шаблоне: %%myimage%% %%steps%% %%post_content%% То в результате получите что-то типа: <p>92332</p> <p>контент записи</p> То есть вместо картинки вы получили ID этого массива картинок, а поле типа "Повторитель" вообще было проигнорировано. Вот для обработки таких нестандартных произвольных полей и нужен фильтр yturbo_the_template. Вот пример кода, обрабатывающего эти поля: //обработка произвольных полей плагина ACF begin function yturbo_acf_template( $content ) { //обрабатываем только нужные нам поля (остальные обработает плагин RSS for Yandex Turbo) if (preg_match_all("/%%(.*?)%%/i", $content, $res)) { foreach ($res[0] as $r) { //обрабатываем поле %%myimage%% (заменяем его на результат работы функции ct_get_myimage) if($r == '%%myimage%%') { $content = str_replace($r, ct_get_myimage(), $content); } //обрабатываем поле %%steps%% (заменяем его на результат работы функции ct_get_steps() ) if($r == '%%steps%%') { $content = str_replace($r, ct_get_steps(), $content); } } } return $content; } add_filter( 'yturbo_the_template', 'yturbo_acf_template' ); //обработка произвольных полей плагина ACF end //обработка произвольного поля %%myimage%% begin function ct_get_myimage() { if ($field = get_field('myimage')) { $output = '<figure><img src="' . $field['sizes']['photo'] . '" /></figure>'; } return $output; } //обработка произвольного поля %%myimage%% end //обработка произвольного поля %%steps%% begin function ct_get_steps() { if ($items = get_field('steps')) { $count = 0; $i = 1; foreach ($items as $item) {$count++;} foreach ($items as $item) { $output .= '<h3>Шаг ' . $i . ' из ' . $count . ' </h3>'; $i++; $output .= '<figure><img src="' . $item['image'] . '" /></figure>'; $output .= $item['text']; } } return $output; } //обработка произвольного поля %%steps%% end Принцип довольно простой и я думаю, что вам должно быть тут все понятно. Результатом этого кода будет что-то типа: <figure><img src="http://site.com/wp-content/uploads/2018/06/cover-47.jpg" /></figure> <h3>Шаг 1 из 2 </h3> <figure><img src="http://site.com/wp-content/uploads/2018/06/cover-45.jpg" /></figure> <p>первое изображение</p> <h3>Шаг 2 из 2 </h3> <figure><img src="http://site.com/wp-content/uploads/2018/06/cover-38.jpg" /></figure> <p>второе изображение</p> <p>контент записи</p> Учтите, что результат вывода вашего шаблона будет потом обработан фильтрами плагина. Это может вызвать определенные проблемы, так как фильтры плагина удалят всю лишнюю разметку, которая вам может быть нужна. Например, если вы пытаетесь создать турбо-галерею, а плагин каждую вашу картинку оборачивает в тег <figure>, что портит разметку турбо-галереи. В таком случае вам нужно воспользоваться фильтром yturbo_before_ads, который срабатывает почти в самом конце обработки контента записи прямо перед вставкой рекламы. Однако, ваши переменные не должны быть обернуты символами %% (их содержимое будет удалено при обработке шаблона). Воспользуйтесь любыми другими символами, чтобы отфильтровать потом вашу переменную.
а) [yt-permalink] - выводит ссылку на текущую запись. б) [yt-title] - выводит заголовок текущей записи. Если вам необходимы какие-то дополнительные шорткоды, то напишите об этом на форуме. Я обязательно постараюсь их добавить в следующей версии плагина.