Что происходит на рынках спорта и туризма в России?
Цифры, тренды и советы по развитию — в нашем исследовании
Разработка сайта для маркетингового агентства
Какой должна быть платформа для influence-маркетологов, чтобы убедить клиента оставить заявку, и какие технологии скрываются за громкими CTA.
О клиенте и проекте
Influize — это американское маркетинговое агентство, специализирующееся на работе с инфлюенсерами и рекламных кампаниях с их участием. На сайте агентства клиенты могут познакомиться с блогерами, заключить партнёрство и выбрать пакет услуг для продвижения своего бренда в соцсетях.
Если сайт смог убедить пользователя воспользоваться услугами инфлюенс-маркетологов, ему остаётся лишь оставить заявку через одну из множества кнопок и форм. Заявка попадаёт в систему обработки лидов, менеджеры Influize получат оповещение об этом по почте, а лиды получают автоматическое письмо с подтверждением об удачно заполненной форме.
Главная страница
Задачи
— Спланировать клиент-серверную архитектуру приложения. — Подготовить сайт к работе в условиях высокой нагрузки. — Настроить серверное окружение на Amazon Web Services. — Дать менеджерам инструмент для самостоятельного создания страниц. — Обеспечить интеграцию со сторонними сервисами (Sendgrid, Calendly). — Оптимизировать сайт по SEO. — Провести ручное тестирование.
Страница рекламной кампании
Решения
Серверная часть (бэкенд)
Мы использовали готовую сборку Drupal Contenta CMS — она делает связь между Drupal и нашим Node.js-сервером простой и надёжной через REST API (специальный «язык» для обмена данными между системами). Благодаря этому Drupal здесь выполняет роль только хранилища данных, а отображением и взаимодействием с пользователем управляет отдельное приложение на Node.js. Такая архитектура называется Headless Drupal и отличает сайт Influize от классических Drupal-сайтов, где CMS отвечает и за хранение данных, и за их передачу, и за красивое отображение.
Подготовка к нагрузке
Чтобы сайт легко выдерживал высокие нагрузки, мы реализовали систему кеширования с использованием Memcached и Varnish. Такая система быстро отдает уже подготовленное содержимое: это похоже на то, как если бы мы заранее делали копии страниц и отдавали их пользователю мгновенно, не собирая всё заново. Такой подход позволяет снизить количество запросов к базе данных, а значит, уменьшить время загрузки страницы.
Конструктор страниц
Для того чтобы менеджеры агентства могли сами добавлять на сайт новые страницы, мы разработали архитектуру, позволяющую строить их как конструктор из независимых блоков – параграфов. Такие блоки заранее стилизованы и будут хорошо выглядеть и работать корректно без вмешательства разработчика.
Права пользователей
Контентом на сайте занимаются несколько людей – одни ведут блог, другие оформляют страницы с услугами и акциями. Мы разделили пользователей по ролям и сделали для каждой роли свой уровень допуска.
Страница оплаты участия в кампании
Клиентская часть (фронтенд)
Influize – это изоморфное приложение. Сначала страница собирается и показывается на сервере (Server Side Rendering, SSR), поэтому её быстро находят поисковые системы. Это важно для SEO — поисковые роботы хуже индексируют сайты, которые собираются исключительно на стороне клиента. Затем управление переходит к React в браузере, и сайт работает как полноценное приложение: страницы открываются без перезагрузки, интерфейс отзывчивый, а контент появляется сразу.
В основе лежит SPA-подход: пользователь получает быстрый и отзывчивый интерфейс без полной перезагрузки страниц. Мы реализовали это с помощью React-фреймворка Next.js, который обеспечивает SSR и тем самым улучшает индексацию.
Результаты
Сайт был запущен в мае 2020 года. Наша компания занималась разработкой и тестированием сайта, а сейчас поддерживает его работу.