DevCraft Документации
Руководства

Страница уведомлений v200.1.0

Отдельная страница списка: index.php?do=notifications и ЧПУ /notifications/

Отдельный URL со стеной уведомлений пользователя — не виджет в шапке и не include в профиле.

Адреса

ВидАдрес
Query/index.php?do=notifications
ЧПУ/notifications/ (если включены ЧПУ DLE)

Маршрут ставит плагин (engine/engine.php + правило в urls.class.php). Ссылка в коде: notifyPageUrl(); в шаблонах — тег {notifications-url} (из include модуля).

Кто может открыть

  • нужна авторизация;
  • право «Разрешить просматривать стену уведомлений» или «Разрешить использование уведомлений»;
  • иначе 403 и сообщение об ошибке.

Гостю страница недоступна.

Как устроено

  1. do=notificationsdevcraft/src/modules/Notifications/Site/page.php
  2. Шаблон темы templates/{тема}/devcraft/notifications/page.tpl
  3. Внутри — include стены: Site/web.php?focus=wall

Типичный page.tpl:

<article class="box story">
	<div class="box_in">
		{include file="devcraft/src/modules/Notifications/Site/web.php?focus=wall"}
	</div>
</article>

Оформление записей — devcraft/notifications/wall.tpl, item.tpl, item_actions.tpl.

Отличие от include стены

Страница do=focus=wall в профиле
URLсвой (/notifications/)страница профиля / любая
Заголовок / canonicalзадаёт Site/page.phpу родителя
Разметкаобёртка page.tplтолько блок стены

Логика списка и прав одна и та же.

См. также

На этой странице