Настройка Ghost Members (подписки/пейволл)

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

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Предлагаемые услуги
Показано 1 из 1 услугВсе 2065 услуг
Настройка Ghost Members (подписки/пейволл)
Средняя
~2-3 рабочих дня
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    874
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    851

Настройка Ghost Members (подписки/пейволл)

Ghost Members — встроенная система подписчиков без внешних плагинов. Интегрируется со Stripe для платных уровней доступа (Tiers). Поддерживает бесплатных подписчиков (email-лист), платные уровни с месячной/годовой оплатой и paywall-контент.

Активация и базовая настройка

В Ghost Admin: Settings → Memberships:

  • Включить Members: yes
  • Default post access: Members only / Paid-members only / Free
  • Portal: настройка кнопки регистрации и форм

Подключение Stripe

Admin → Settings → Memberships → Connect with Stripe

Потребуется Stripe account (Standard или Connect). Ghost создаёт Products и Prices в Stripe автоматически при настройке Tiers. Webhooks настраиваются Ghost CLI автоматически.

Уровни доступа (Tiers)

Admin → Settings → Memberships → Tiers

Каждый Tier имеет:

  • Monthly/yearly цены в Stripe
  • Список benefits (отображается на странице подписки)
  • Описание

Пейволл в контенте

В редакторе Koenig вставляем разделитель Members:

[Открытая часть статьи]
⚡ Members Only [вставить карточку "Members Only"]
[Платный контент — доступен только подписчикам]

В теме Handlebars:

{{! post.hbs}}
{{#post}}
  {{#if access}}
    {{! Пользователь имеет доступ — показываем контент}}
    <div class="gh-content">{{content}}</div>
  {{else}}
    {{! Нет доступа — пейволл}}
    <div class="gh-content">{{content}}</div>
    {{! Ghost автоматически обрежет контент по маркеру}}

    <div class="paywall" data-members-only>
      {{#if @member}}
        {{! Авторизован, но нет нужного уровня}}
        <h3>Эта статья для платных подписчиков</h3>
        <a href="#/portal/upgrade" data-portal="upgrade">Улучшить подписку</a>
      {{else}}
        {{! Не авторизован}}
        <h3>Читайте без ограничений</h3>
        <a href="#/portal/signup" data-portal="signup/free">Подписаться бесплатно</a>
        <a href="#/portal/signup" data-portal="signup">Стать платным подписчиком</a>
      {{/if}}
    </div>
  {{/if}}
{{/post}}

Ghost Portal

Portal — встроенный виджет аутентификации (iframe), вставляемый в тему:

{{! В footer.hbs или перед </body>}}
{{#if @labs.members}}
  <script defer src="{{asset "js/portal.min.js"}}"></script>
{{/if}}

Управление открытием Portal через data-атрибуты:

<a href="#/portal" data-portal>Войти</a>
<a href="#/portal/signup" data-portal="signup">Зарегистрироваться</a>
<a href="#/portal/account" data-portal="account">Мой аккаунт</a>

Кастомный Signup Flow

{{! Форма с указанием конкретного Tier и периода}}
<a href="#/portal/signup?plan=monthly" data-portal="signup/monthly">
  Подписаться за {{price currency="USD" numberFormat="short"}}/мес
</a>

Проверка статуса подписчика

{{! Персонализированный контент}}
{{#if @member}}
  <p>Привет, {{@member.name}}!</p>
  {{#if @member.paid}}
    <span class="badge">Premium</span>
    {{! Показать данные о подписке}}
    {{#foreach @member.subscriptions}}
      Подписка активна до {{date current_period_end format="DD.MM.YYYY"}}
    {{/foreach}}
  {{/if}}
{{/if}}

Настройка Webhook для синхронизации с внешними системами

Ghost Admin → Settings → Integrations → Custom Integrations → Add webhook:

События: member.added, member.updated, member.deleted, member.payment.succeeded.

// Обработчик webhook (Node.js)
app.post('/ghost/webhook', express.json(), async (req, res) => {
  const event = req.body;

  if (event.member?.current?.subscribed && !event.member.previous?.subscribed) {
    // Новый подписчик — добавляем в CRM
    await addToCrm(event.member.current);
  }

  if (event.member?.current?.status === 'paid') {
    // Новый платный подписчик — выдаём доступ к Discord
    await grantDiscordAccess(event.member.current.email);
  }

  res.sendStatus(200);
});

Настройка Members с одним платным уровнем и базовым пейволлом — 1–2 дня. Несколько уровней доступа, кастомный Portal UI, webhook-интеграции — 3–5 дней.