1 of 53

Лекция 7.1: �“Админка” и методы редактирования контента в веб-разработке

intervolga.ru/school/

Ерофеев Анатолий Андреевич,

заместитель руководителя отдела проектов ИНТЕРВОЛГА

2 of 53

Администрирование сайта

Что такое «администрирование сайта»:

  • Оплата/продление домена
  • Оплата/продление хостинга
  • Добавление новых функций
  • Публикация новостей
  • Обновление информации на сайте
  • Обновление CMS
  • SEO-продвижение и SMM

3 of 53

Администрирование сайта

Что такое «администрирование сайта» (продолжение):

  • Обработка заявок/заказов с сайта
  • Интеграция с Яндекс.Маркетом (см. фиды)
  • Настройка почты на домене <company>.ru
  • Создание новых страниц на сайте
  • Регулярное резервное копирование

4 of 53

Администрирование сайта

  • Чем крупнее компания-владелец сайта, тем больше сотрудников вовлечено в работу сайта. В маленьких компаниях за все отвечает администратор сайта.
  • В крупных есть контент-менеджеры, модераторы, маркетологи, HR, специалисты 1С, разработчики и т.д. Все они в какой-то степени администраторы сайта.

5 of 53

Администрирование сайта

  • Самый распространенный подвид администратора сайта — контент-менеджер.
  • Это сотрудник, размещающий на сайте новости, вакансии, товары и т.п.

6 of 53

В Битриксе

7 of 53

Администратор сайта на БУСе

Понятие «Администратор сайта» в БУСе:

  • Авторизованный пользователь (неавторизованный админ невозможен)
  • Состоит в группе «Администраторы»
  • Доступ ко всем модулям, ИБ, настройкам
  • PHP-консоль для разовых скриптов
  • SQL-консоль для разовых запросов

8 of 53

Администратор сайта на БУСе

9 of 53

Администратор сайта на БУСе

  • Первый пользователь (ID=1) сразу является администратором
  • Его нельзя удалить, деактивировать и «разжаловать» через UI(!)
  • Неправильная проверка на админа
    • $USER->getID() == 1
  • Правильная проверка на админа
    • $USER->isAdmin()

10 of 53

Администратор сайта на БУСе

11 of 53

Администратор сайта на БУСе

12 of 53

Администратор сайта на БУСе

  • На администратора в БУСе не действуют ограничения, заданные в самом БУСе.
  • Но это не значит, что он может управлять сервером, почтой, доменным именем.

13 of 53

Администрирование сайта

3 главных инструмента администратора:

  1. Панель управления
  2. Эрмитаж (редактирование «над сайтом»)
  3. Административный раздел (/bitrix/)

14 of 53

Панель управления

15 of 53

Панель управления

16 of 53

Панель управления

  • Может быть у любого пользователя, не только у администратора
  • Состав кнопок зависит от уровней доступа к модулям + уровня доступа к папкам и файлам
  • Права настраиваются только для групп, а не для отдельных пользователей. Нужен уникальный набор прав для 1 пользователя — делайте группу из 1 участника

17 of 53

Панель управления

  • Чтобы показать панель в собственном шаблоне нужно после открывающего тега <body> добавить PHP:
    • $APPLICATION->ShowPanel()
  • Можно добавлять свои кнопки (только в развернутую панель)

18 of 53

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

19 of 53

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

20 of 53

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

21 of 53

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

22 of 53

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

23 of 53

Эрмитаж

Редактирование «над сайтом»

24 of 53

Эрмитаж

  • Кнопки, возникающие на сайте при переходе в режим правки
  • Есть у стандартных компонентов, включаемых областей
  • Обычно это:
    • Редактирование параметров компонента
    • Копирование шаблона компонента
    • Сброс кеша компонента

25 of 53

Эрмитаж

  • Обычно это (продолжение):
    • Редактирование файлов шаблона компонента (result_modifier.php, component_epilog.php, template.php)
    • Отключение компонента
    • Редактирование элемента ИБ
    • Редактирование раздела ИБ
    • Управление меню
    • Редактирование включаемой области

26 of 53

Эрмитаж

27 of 53

Эрмитаж

  • Состав кнопок зависит от прав пользователя
  • Если что-то можно сделать в Эрмитаже — это можно сделать и в Административном разделе. И наоборот.
  • Можно добавлять свои кнопки в своих компонентах и своих шаблонах стандартных компонентов

28 of 53

Административный раздел

/bitrix/

29 of 53

Административный раздел

  • Все скрипты лежат в /bitrix/admin/
  • 99% из них состоят из:

require_once(

$_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/admin/cache.php"

)

  • Причина в модульной структуре Битрикса. При установке модуля эти маленькие файлы очень просто создать, при удалении — стереть. Сами тоже так делайте, хорошая практика

30 of 53

Административный раздел

  • Можно добавлять свои страницы в админку
    • Создать скрипт в /bitrix/admin/
  • Можно добавлять свои пункты в меню админки
    • /local/modules/<ваш модуль>/admin/menu.php
    • Обработчик события OnBuildGlobalMenu

31 of 53

Административный раздел

/bitrix/admin/intervolga_volgu.php

32 of 53

Административный раздел

33 of 53

Административный раздел

34 of 53

Редактирование контента

Заботимся о контент-менеджере

35 of 53

Редактирование контента

  1. Все должно редактироваться

vs

  • Время на разработку ограничено

36 of 53

Редактирование контента

  1. Включаемые области
  2. Пункты меню
  3. Инфоблоки
  4. Параметры компонента
  5. Настройки модуля

37 of 53

Включаемые области

38 of 53

Включаемые области

  • Данные хранятся в файлах .php
  • Только статичный контент: <img>, <a>, текст
  • Обычно все файлы складывают в /include/
  • Для редактирования достаточно доступа к файлу+доступ к модулю «Управление структурой»

39 of 53

Включаемые области

40 of 53

Включаемые области

41 of 53

Пункты меню

42 of 53

Пункты меню

43 of 53

Пункты меню

44 of 53

Пункты меню

45 of 53

Пункты меню

46 of 53

Инфоблоки

см. лекции 4.2 и 5

47 of 53

Параметры компонента

см. лекцию 4.2

48 of 53

Настройки модуля

49 of 53

Настройки модуля

50 of 53

Настройки модуля

  • В модуле нужно создать файл options.php
  • Объявить многоуровневый массив с описанием параметров модуля
  • Описание формата options.php
  • Получать в коде настройки через

51 of 53

Полезные ссылки

52 of 53

Лабораторная работа 4

Выполнить уроки:

  1. Расширение возможностей типовых компонентов

http://academy.1c-bitrix.ru/education/index.php?COURSE_ID=66&LESSON_ID=5884&LESSON_PATH=5863.5884

  • Получение связанных элементов

http://academy.1c-bitrix.ru/education/index.php?COURSE_ID=66&LESSON_ID=7049&LESSON_PATH=5863.7049

  • Технологии: параметры модулей, почтовая системы, агенты, журнал событий

http://academy.1c-bitrix.ru/education/index.php?COURSE_ID=66&LESSON_ID=5885&LESSON_PATH=5863.5885

  • События

http://academy.1c-bitrix.ru/education/index.php?COURSE_ID=66&LESSON_ID=5886&LESSON_PATH=5863.5886

  • Отложенные функции

http://academy.1c-bitrix.ru/education/index.php?COURSE_ID=66&LESSON_ID=5887&LESSON_PATH=5863.5887

  • Создание собственных компонентов

http://academy.1c-bitrix.ru/education/index.php?COURSE_ID=66&LESSON_ID=5888&LESSON_PATH=5863.5888

  • Настройки кеширования - базовые понятия

http://academy.1c-bitrix.ru/education/index.php?COURSE_ID=66&LESSON_ID=5890&LESSON_PATH=5863.5890

Срок сдачи 08.04.2020

53 of 53

Задавайте вопросы.

Ерофеев Анатолий Андреевич

заместитель руководителя отдела проектов

ИНТЕРВОЛГА

вертикальная оцифровка бизнеса