Telegram
Будьте в курсе всех обновлений: подпишитесь на наш официальный Telegram-канал uCoz и задавайте вопросы в чате сообщества!

Пример реализации: кастомизация страницы «Доступ запрещён»

Пример реализации: кастомизация страницы «Доступ запрещён»
📌 Подробнее о возможностях нового модуля — на лендинге.
Есть идеи или предложения? Поделитесь ими на портале обратной связи.
Материал добавлен: 21 Мая 2025
Материал обновлен: 22 Мая 2025

Как изменить шаблон страницы

Перейдите во вкладку «Дизайн» → «Управление дизайном» → «Пользователи» → Страница «Доступ запрещён» и замените код основной части страницы (для стандартного шаблона):

Было:

​​<!-- <body> --><div class="access-denied-wrapper" align="center">
<?if($USER_LOGGED_IN$)?><!--<s5213>-->Вы входите в группу пользователей, которым запрещено совершать данное действие.<br><br><br>По всем вопросам обращайтесь к администратору сайта.<!--</s>--><?endif?>
<?if(!$USER_LOGGED_IN$)?><!--<s5211>-->Гостям запрещено просматривать данную страницу, пожалуйста, войдите на сайт как пользователь.<!--</s>--><br /><br /><span style="font-size:13pt;text-transform:uppercase;">[ <a href="$LOGIN_LINK$"><b><!--<s3087>-->Вход<!--</s>--></b></a> ]</span><?endif?>
</div><!-- </body> -->

Стало:

<div class="access-denied-wrapper" align="center">
 <?if($USER_LOGGED_IN$)?>
 <div class="info-box">
 <h2>Информация о вашей подписке</h2>
 <?if($SUBSCR_LAST_ID_AUTH$ != 0)?>
 <p>Текущий тариф: <strong>$SUBSCR_LAST_NAME_AUTH$</strong></p>
 <?if($SUBSCR_LAST_STATUS_AUTH$)?><p>Статус подписки: <strong>$SUBSCR_LAST_STATUS_AUTH$</strong></p><?endif?>
 <?if($SUBSCR_LAST_START_AUTH$ != 0)?><p>Дата начала: $SUBSCR_LAST_START_AUTH$</p><?endif?>
 <?if($SUBSCR_LAST_END_AUTH$ != 0)?><p>Дата окончания: $SUBSCR_LAST_END_AUTH$</p><?endif?>
 <?if(!$SUBSCR_LAST_STATUS_AUTH$ || $SUBSCR_LAST_STATUS_AUTH$ = 'expired' || $SUBSCR_LAST_STATUS_AUTH$ = 'canceled' || $SUBSCR_LAST_STATUS_AUTH$ = 'paused')?>
 <p><strong>Контент данной страницы доступен только пользователям с активной подпиской.</strong></p>
 <?endif?>
 <?else?>
 <p><strong>У вас отсутствует активный тарифный план.</strong></p>
 <p>Контент данной страницы доступен только пользователям с подпиской.</p>
 <?endif?>
 <br>
 <div class="subs-entry-actions" style="display: flex; justify-content: center; gap: 10px; flex-wrap: wrap;">
 <a class="button-link subs-entry-buy-link" href="/subscriptions/my">Мои подписки</a>
 <a class="button-link subs-entry-buy-link" href="/subscriptions">Оформить подписку</a>
 </div>
 </div>
 <?else?>
 <div class="info-box">
 <h2>Требуется подписка</h2>
 <p>Этот контент доступен только авторизованным пользователям с активной подпиской.</p>
 <p>Пожалуйста, <a href="$LOGIN_LINK$"><strong>войдите</strong></a> или <a href="$REGISTER_LINK$"><strong>зарегистрируйтесь</strong></a>, чтобы получить доступ.</p>
 </div>
 <?endif?>
</div>

Что делает этот код

1. Проверка авторизации

<?if($USER_LOGGED_IN$)?>

Проверяется, вошёл ли пользователь на сайт. От этого зависит, какой блок будет показан.

2. Пользователь авторизован

Внутри блока:

<?if($USER_LOGGED_IN$)?>

2.1 Есть подписка

<?if($SUBSCR_LAST_ID_AUTH$ != 0)?>
  • Отображается название тарифа: $SUBSCR_LAST_NAME_AUTH$
  • Если указано — статус подписки: $SUBSCR_LAST_STATUS_AUTH$
  • Дата начала: $SUBSCR_LAST_START_AUTH$
  • Дата окончания: $SUBSCR_LAST_END_AUTH$

2.2 Подписка есть, но она не активна

<!--?if(!$SUBSCR_LAST_STATUS_AUTH$ || $SUBSCR_LAST_STATUS_AUTH$ = 'expired' || 
 $SUBSCR_LAST_STATUS_AUTH$ = 'canceled' || $SUBSCR_LAST_STATUS_AUTH$ = 'paused')?-->

Показывается сообщение: «Контент данной страницы доступен только пользователям с активной подпиской».

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

<?else?>

(если $SUBSCR_LAST_ID_AUTH$ == 0)

Показывается сообщение: «У вас отсутствует активный тарифный план. Контент данной страницы доступен только пользователям с подпиской».

2.4 Кнопки управления подпиской

Отображаются в любом случае:

  • <a href="/subscriptions/my">Мои подписки</a>
  • <a href="/subscriptions">Оформить подписку</a>

3. Пользователь не авторизован

<?else?>

(то есть <?if(!$USER_LOGGED_IN$)?> по сути)

Показывается сообщение: «Этот контент доступен только авторизованным пользователям с активной подпиской».

Предлагается войти или зарегистрироваться с помощью переменных:

  • $LOGIN_LINK$
  • $REGISTER_LINK$

Используемые переменные

  • $USER_LOGGED_IN$ — авторизация пользователя
  • $SUBSCR_LAST_ID_AUTH$ — ID активного тарифа (0 — тарифа нет)
  • $SUBSCR_LAST_NAME_AUTH$ — название тарифа
  • $SUBSCR_LAST_STATUS_AUTH$ — статус подписки (active, expired, paused и т.д.)
  • $SUBSCR_LAST_START_AUTH$ / $SUBSCR_LAST_END_AUTH$ — даты начала и окончания подписки
  • $LOGIN_LINK$, $REGISTER_LINK$ — ссылки для гостей
Пример реализации: кастомизация страницы «Доступ запрещён»