Пользовательские компоненты Турбо-страниц

Внимание. Рекламные блоки в пользовательских компонентах запрещены в любом виде. Чтобы разместить рекламу, используйте специальные рекламные блоки Adfox или РСЯ. Подробнее в разделе Реклама на мобильных.

Для Турбо-страниц можно создавать пользовательские компоненты и размещать их в своем RSS‑канале. Ознакомиться со списком пользовательских компонентов можно на GitHub. Например, среди них есть компонент ExtFancyButton.

Пример отображения компонента ExtFancyButton:

Пример RSS-разметки:

<ExtFancyButton>
    I am an external component
</ExtFancyButton>
Скопировано

Создание пользовательского компонента

Внимание. Для создания компонентов необходимы знания TypeScript и React.

Чтобы создать пользовательский компонент:

  1. Создайте форк проекта turboext/components. Подробнее о создании форка в помощи GitHub
  2. Создайте собственный компонент с соблюдением ограничений. Подробнее в README.md на GitHub.
  3. Создайте Pull Request на внесение изменений в master-ветку turboext/components.
  4. Дождитесь окончания тестов. Если тесты завершились с ошибками, исправьте их с соблюдением ограничений.
  5. Дождитесь двух подтверждений от команды Турбо-страниц. После этого ваши изменения будут внесены в master-ветку.
  6. В пятницу вечером будет создана и протестирована релизная ветка. Если тестирование пройдет успешно, в понедельник компонент окажется в продакшне.

После создания протестируйте отображение компонента в интерфейсе Вебмастера:

  1. Перейдите на страницу Турбо‑страницы для контентных сайтов → Отладка.
  2. Вставьте ваш компонент в RSS-разметку Турбо-страницы. Например, для компонента ExtFancyButton:
    <ExtFancyButton>
        I am an external component
    </ExtFancyButton>
    Скопировано
  3. Нажмите Применить и проверьте отображение в примере справа.
  4. Если пример отображается правильно, используйте компонент в собственном RSS-канале.

Задать вопрос по компонентам Турбо-страниц

Если у вас остались вопросы по компонентам Турбо-страниц, задайте их через форму обратной связи.

Если у вас технический вопрос и вы зарегистрированы на GitHub, создайте issue.