Создание сайта в Нижнем Новгороде дешево — принесет ли миллионную прибыль посредственный сайт?
+7(910)140-50-90 (Кэп)

Турбо-страницы для MODx Evolution, MODx Revolution

Не секрет, что Турбо-страницы для вебсайта, которому нужен поисковый трафик и хорошие ПФ на мобильных, становятся обязательным признаком качества, а, возможно, стали еще в 2017-2018 гг.

Простейший фид для текстовых страниц создать достаточно легко.

Нужно создать страницу с пустым шаблоном примерно такого содержания:


≺?xml version="1.0" encoding="UTF-8"?≻
≺rss
    xmlns:yandex="http://news.yandex.ru"
    xmlns:media="http://search.yahoo.com/mrss/"
    xmlns:turbo="http://turbo.yandex.ru"
    version="2.0"≻
≺channel≻
   
≺title≻Веб-студия - агентство маркетинга - CapWeb≺/title≻
≺link≻https://capweb.ru/≺/link≻
≺description≻Рекламное агентство CapWeb - интернет-маркетинг полного цикла - веб-разработка - веб-дизайн - 8(968)000-10-11≺/description≻
	 ≺turbo:cms_plugin≻C125AEEC6018B4A0EF9BF40E6615DD1791≺/turbo:cms_plugin≻
	 ≺turbo:analytics id="34865895" type="Yandex"≻≺/turbo:analytics≻
        ≺turbo:analytics id="UA-58169051-1" type="Google"≻≺/turbo:analytics≻
                    ≺language≻ru≺/language≻



[[Ditto? &start=`0` &total=`500` &parents=`3595` &filter=`id,3669,2` &tpl=`tpl.turbo`  &language=`english-UTF8` &display=`all` &total=`all` &depth=`2` &showInMenuOnly=`0` &showPublishedOnly=`1` &sortBy=`pubdate` &sortDir=`ASC` &where=`type IN ('document')`]]

В настройках страницы нужно указать тип содержимого rss+xml

Страница RSS-фида

Настройки страницы RSS-фида

Теперь что касается шапки фида.

В строки аналитики нужно вставить идентификаторы Яндекс.Метрики и Google Analytics.

С title, description все понятно - можно взять их с главной страницы вашего сайта или добавить фразу - turbo-страницы.

В тег link можно просто вбить адрес сайта, но этот вариант менее гибкий, хотя при переходе на https или смене доменного имени так или иначе нужно будет править адреса в базе.

Рассмотрим параметры Ditto. start и total определяют начало и конец выборки. Если документов более 500, лучше создать несколько страниц с фидами по 500 в каждом. Это связано с ограничениями Яндекса https://yandex.ru/dev/turbo/doc/rss/quota-docpage/

[[Ditto? &start=`0` &total=`500` &parents=`3595` &filter=`id,3669,2` &tpl=`tpl.turbo`  &language=`english-UTF8` &display=`all` &total=`all` &depth=`2` &showInMenuOnly=`0` &showPublishedOnly=`1` &sortBy=`pubdate` &sortDir=`ASC` &where=`type IN ('document')`]]

В этом примере я выбираю документы из ветки "Услуги", id родителя 3595, помимо документов в ветке есть ссылки, поэтому использую параметр where, задающий тип документа. Как вариант можно задать также номер шаблона, если в фиде нужно выбрать, например, все товары, хотя Яндекс рекомендует для товаров использовать YML-фид вместо RSS. Параметры глубины выборки, отображения отключенных для показа в меню и отключенных для публикации могут задаваться в зависимости от особенностей ваших веток.

[!Ditto? &start=`0` &total=`500` &parents=`3540` &depth=`1` &tpl=`tpl.turbo-m`  &language=`english-UTF8` &display=`all` &total=`all` &showInMenuOnly=`0` &showPublishedOnly=`1` &sortBy=`pubdate` &sortDir=`ASC` &where=`template=8`!]

Обратите внимание на английский язык в языковых настройках сниппета. Это не опечатка, а необходимость для правильности формата даты.

Теперь что касается шаблона элементов RSS-канала tpl.turbo.

≺item turbo="true"≻
    ≺title≻[+pagetitle+]≺/title≻
	≺link≻https://capweb.ru[!urlturbo? &id=`[+id+]`!]≺/link≻
    ≺turbo:topic≻[+pagetitle+]≺/turbo:topic≻
    ≺turbo:source≻https://capweb.ru[!urlturbo? &id=`[+id+]`!]≺/turbo:source≻
    ≺pubDate≻[+editedon:date=`%a, %d %b %Y %H:%M:%S`+] +3000≺/pubDate≻
    ≺turbo:content≻
    ≺![CDATA[
≺header≻
≺h1≻[+pagetitle+]≺/h1≻
≺/header≻
[+content+]
{{turbo-add}}
]]≻≺/turbo:content≻
≺/item≻

Чанк turbo-add содержит все, что рекомендует Яндекс: кнопку звонка, кнопки соцсетей, форму обратной связи и т. д. Примеры есть в справке Яндекса.

 ≺button formaction="tel:+7(123)456-78-90"
              data-background-color="#5B97B0"
              data-color="white"
              data-primary="true"≻Заказать столик≺/button≻
      ≺div data-block="widget-feedback" data-stick="false"≻
        ≺div data-block="chat" data-type="whatsapp" data-url="https://whatsapp.com"≻≺/div≻
        ≺div data-block="chat" data-type="telegram" data-url="http://telegram.com/"≻≺/div≻
        ≺div data-block="chat" data-type="vkontakte" data-url="https://vk.com/"≻≺/div≻
        ≺div data-block="chat" data-type="facebook" data-url="https://facebook.com"≻≺/div≻
        ≺div data-block="chat" data-type="viber" data-url="https://viber.com"≻≺/div≻
      ≺/div≻
      ≺p≻Наш адрес: ≺a href="#"≻Nullam dolor massa, porta a nulla in, ultricies vehicula arcu.≺/a≻≺/p≻
      ≺p≻Фотографии — https://capweb.ru/lookbook.html≺/p≻

Вот как это упрощенно сделано у меня:

≺button formaction="tel:+8(968)000-10-11"
              data-background-color="#5B97B0"
              data-color="white"
              data-primary="true"≻Позвонить≺/button≻
      ≺div data-block="widget-feedback" data-stick="false"≻
        ≺div data-block="chat" data-type="whatsapp" data-url="https://api.whatsapp.com/send?phone=79101405090"≻≺/div≻
        ≺div data-block="chat" data-type="viber" data-url="https://viber://chat?number=79101405090"≻≺/div≻
        ≺div data-block="chat" data-type="vkontakte" data-url="https://vk.com/capweb"≻≺/div≻
        ≺div data-block="chat" data-type="facebook" data-url="https://www.facebook.com/capweb"≻≺/div≻
      ≺/div≻

Если в число перебираемых Ditto документов входит главная страница, пригодится мой сниппет для избавления от /index.html. Возможно, у вас эта задачка решена лучше, но я применил такой костыль.

Код сниппета urlturbo:

≺?php
//$s = (!empty($_GET['id']) && is_numeric($_GET['id'])) ? (int) $_GET['id'] : $s;	
$s = (isset($id)) ? $id : $modx-≻documentIdentifier;
$s = (int)$s;
$do=$modx-≻getDocument($s);
//var_dump($do["type"]);

//echo $do["alias"];

//echo $modx-≻documentIdentifier;
//echo "Now viewing :".$modx-≻documentIdentifier;
if(($s==1)|($s==3070)) echo ''; else //echo '/'.$modx-≻getDocument($s)["alias"].'.html';
//echo $modx-≻getDocument($s)["alias"];
echo "/".$do["alias"].".html";
?≻

Если таких сложностей в вашем случае нет, адрес в ссылке задается стандартно: https://capweb.ru/[~[+id+]~]

Когда нужно исключить отображение определенных страниц в фиде, просто переберите их в отдельном Ditto и используйте аналогичный чанк tpl.turbo с шаблоном, где прописано turbo="false" вместо turbo="true". Лишние элементы, конечно, из этого шаблона можно удалить.

Теперь адрес созданной xml-страница можно подгружать в качестве источника в Вебмастер, а также ввести необходимые настройки: загрузить логотип, заполнить название, описание, идентификаторы счетчиков. Обратите внимание на настройки ленты. Они применяются ко всему фиду, поэтому если у вас интернет-магазин и вы хотите, например, включить ленту для информационных страниц и отключить для товарных, нужно использовать RSS-фид для одного типа страниц и YML — для другого.

Цитата из переписки с Яндексом:

2) Турбо-версии информационных страниц сайта следует формировать с помощью RSS-канала (https://yandex.ru/dev/turbo/doc/quick-start/articles-docpage/ ) , а карточки товаров - с помощью YML (https://yandex.ru/dev/turbo/doc/quick-start/markets-docpage/ ). Вы можете сформировать Турбо-версию лишь для отдельных страниц сайта, а для остальных страниц оставить обычную версию.

3) Увы, но изменить надпись на данной кнопке не получится. Возможно, такая функция появится в будущем.

Отладка RSS-фида

Отладка страниц RSS-фида

При загрузке фида возможны три варианта: "Без ошибок", "Ошибка обновления", "Предупреждение обновления".

Для отладки есть кнопки "Подробнее" (показывает номера строк фида с ошибками, позволяет открыть страницу в режиме отладки), "Перепроверить источник".

Если ошибки возникают из-за того, что дата все же выводится на русском, поможет простой лайфхак.

Сниппет data-en:

≺?php
setlocale(LC_ALL, 'en_US.UTF-8');
if ( $val == '' ) $val=time();
if ($format == '' ) $format = "%a, %d %b %Y %H:%M:%S";
return strftime($format, $val);
?≻

Вызов в чанке tpl-turbo:

≺pubDate?≻[[data-en? &val=`[+editedon+]`]] +3000≺/pubDate?≻

RSS для MODx Revolution: все то же самое

Код документа:

≺?xml version="1.0" encoding="UTF-8"?≻
≺rss
    xmlns:yandex="http://news.yandex.ru"
    xmlns:media="http://search.yahoo.com/mrss/"
    xmlns:turbo="http://turbo.yandex.ru"
    version="2.0"≻
≺channel≻
   
≺title≻3D-печать в Нижнем Новгороде≺/title≻
≺link≻[[++site_url]]≺/link≻
≺description≻Услуги 3D-печати в Нижнем Новгороде - 8(969)601-61-11≺/description≻
	 ≺turbo:cms_plugin≻C125AEEC6018B4A0EF9BF40E6615DD1791≺/turbo:cms_plugin≻
	 ≺turbo:analytics id="34865895" type="Yandex"≻≺/turbo:analytics≻
        ≺turbo:analytics id="UA-109522369-1" type="Google"≻≺/turbo:analytics≻
                    ≺language≻ru≺/language≻
    [[!getResources?
      &tpl=`turbo`
      &parents=`1,121`
      &depth=`2`
      &limit=`40`
      &includeContent=`1`
      &includeTVs=`1`
      &showHidden=`0`
      &hideContainers=`0`
    ]]
≺/channel≻
≺/rss≻

Код чанка turbo:

≺item turbo="true"≻
    ≺title≻[[+pagetitle]]≺/title≻
	≺link≻https://3d-52.ru/[[~[[+id]]]]≺/link≻
    ≺turbo:topic≻[[+pagetitle]]≺/turbo:topic≻
    ≺turbo:source≻https://3d-52.ru/[[~[[+id]]]]≺/turbo:source≻
    ≺pubDate≻[[+createdon:strtotime:date=`%a, %d %b %Y %H:%M:%S`]] +3000≺/pubDate≻
    ≺turbo:content≻
    ≺![CDATA[
≺header≻
≺h1≻[[+pagetitle]]≺/h1≻
≺/header≻
[[+content]]

≺button formaction="tel:+7(969)601-61-11"
              data-background-color="#5B97B0"
              data-color="white"
              data-primary="true"≻Позвонить≺/button≻

]]≻≺/turbo:content≻
≺/item≻

Спасибо тебе, единственный в мире читатель моей заметки, долиставший до этой строки!

Следующая статья: Интервью с Яндексом 2013 г. https://capweb.ru/yandex_interview.html

Предыдущая статья: Влияние https на ранжирование в поисковых системах https://capweb.ru/vliyanie-https-na-ranzhirovanie-v-poiskovyih-sistemah.html

Позиции сайта veragold.ru на декабрь 2014 г.
reative
nalytics
romotion

Статьи от CapWeb

Подкрадываемся к созданию логотипа. Фирменное наименование в юридической плоскости

3. Не допускается использование юридическим лицом фирменного наименования, тождественного фирменному наименованию другого юридического лица или... Подробнее >>

Ремаркетинг, ретаргетинг. FAQ

Чем отличается этот вид ремаркетинга? Он направлен на категорию товаров, которые пользуются наибольшим спросом. Определить, что лучше всего... Подробнее >>

Внутренняя оптимизация интернет-магазина

Плюсы: несложно, можно поставить теги на все страницы. Подробнее >>

Всё о SEO-продвижении интернет-магазинов

В этой статье вы узнаете о специфических для интернет-магазинов моментах в SEO продвижении. Поисковое продвижение и пользовательский спрос в... Подробнее >>

Оставьте Вашу контактную информацию, и мы свяжемся с Вами!

Получайте горячие новости интернет-маркетинга и вечную скидку 5%!