Содержание

Самая первая глава

Немного информации, которая поможет вам в изучении нашего продукта. Ссылки на типовые задачи, список видеоматериалов и другое.

Справочная информация

Научиться работать с продуктами компании «1С-Битрикс» не сложно, но потребуется внимание и определённая мера усидчивости. А поможет в этом различного вида справочная информация, ссылки на которую расположены на сайте компании в разделе Документация.

Разные виды документации

Нажмите на рисунок, чтобы увеличить

  • Онлайн документация для пользователей - описание интерфейса системы управления сайтом, ее основных модулей и наиболее типичных операций. Также в ней содержится полное описание прикладного программного интерфейса.
  • Онлайн документация для разработчиков по старому ядру, по ядру D7 и по Rest_API. Предназначена для технических специалистов со знанием PHP и HTML. В ней содержатся сведения о технологиях и основных принципах, заложенных в систему, описание классов и функций по всем продуктам.

Учебные курсы

Нажмите на рисунок, чтобы увеличить

Онлайн Курсы - это методические пособия по работе с продуктом, которые включают в себя описание и примеры работы с системой.

Для изучения учебных материалов в оффлайне на индексной странице каждого курса размещаются [dw]ссылки на файлы[/dw][di][/di] формата Epub.

Контекстная справка

Нажмите на рисунок, чтобы увеличить

Контекстная справка выводит в Административной части системы информацию, относящуюся к открытому в данный момент разделу или странице. Доступна как в [ds]1С-Битрикс: Управление сайтом[/ds][di]Обилие справочной информации «1С-Битрикс: Управление сайтом» иной раз создаёт проблему: где искать ответ на свой вопрос? Для облегчения поиска иголки в стоге сена создана Контекстная помощь, доступная только в Административном разделе системы.

Подробнее ...[/di], так и в [ds]Битрикс24 в коробке[/ds][di]Для обучения работе в сервисе Битрикс24 создана специальная служба Поддержки24. К ней можно обратиться нажатием на кнопку со знаком вопроса в "шапке" сервиса...

Подробнее ...[/di].

Мастер магазина

[ds]Мастер магазина[/ds][di]Стандартный функционал «1С-Битрикс: Управление сайтом» позволяет организовать работу интернет-магазина непосредственно «из коробки», то есть после установки сайта на хостинг. Но это не значит, что интернет-магазин не нужно настраивать.

Подробнее ...[/di] - встроенная в административную часть система помощи с краткой информацией по конкретной задаче в рамках настройки и эксплуатации интернет-магазина со ссылками на более детальную информацию в конкретных учебных курсах.

FAQ - Частые вопросы

Частые вопросы - подборка решений наиболее часто встречающихся проблем при работе с продуктом в удобном представлении.

Примечание: В дополнение к документации, информацию, касающуюся продуктов компании «1С-Битрикс», можно получить на сайте в разделе [ds]форум[/ds][di]В форумах нашего Центра поддержки разработчиков вы можете задать свои вопросы и обсудить варианты их решения.

Подробнее ...[/di].

Для администраторов и разработчиков также рекомендуется познакомиться с опытом разработок сайтов на Bitrix Framework, который описывается в блогах разработчиков и в группах Социальной сети сайта компании 1С-Битрикс.

Как отформатирован текст в курсе

Читать монотонный текст сложно. Форматирование – один из способов облегчить понимание смысла. Ознакомимся с правилами оформления текста в курсе.

Всплывающие подсказки

Используются в тексте в следующих случаях:

  • пояснить какой-то термин;
  • дать наглядное представление о команде интерфейса;
  • дать дополнительную, но не относящуюся напрямую к выполняемым работам, информацию;
  • показать описание и ссылку на страницу компонента в пользовательской документации.

Всплывающие подсказки обозначаются пунктирным подчёркиванием: [dw]пример подсказки[/dw][di]В окне отображается подробное содержимое подсказки. Подсказка может состоять из текста и/или изображения.[/di].

Табы (вкладки)

Текст каждого урока разбит на табы. Другими словами их можно назвать тематическими вкладками. Это сделано с целью избавить читателя от прокрутки экрана и быстро перейти к нужной части урока. Если вам неудобно пользоваться вкладками, то [dw]отключите их[/dw][di][/di], тогда весь урок будет выводиться в виде единого длинного текста.

Внимание! При использовании табов поиск в браузере ищет только по открытой вкладке, а не по всему уроку.

Спойлеры, скрывающие текст

В спойлерах размещается информация, которая имеет вторичное значение, но может быть полезна «для общего развития». Для открытия спойлера кликните на «+» в спойлере:

Ознакомьтесь с простым примером как работает продукт.

Чтобы избежать лишней прокрутки экрана, в спойлерах может быть размещена большая по объёму информация.

Выделение абзаца фоном

Форматирование целых абзацев текста используется для выделения какой-либо информации с целью указать её направленность:

  • Определения каких-либо сущностей, явлений, терминов и так далее выводятся в абзацах такого вида:

    Курс – организованная и логически завершенная последовательность страниц, содержащих информацию о некоторой предметной области.

  • В Примечании размещается информация, поясняющая текст на странице, на которую стоит обратить внимание. Это могут быть примеры, расширенное объяснение, уточнение, ссылка на дополнительную информацию. Например:

    Примечание: подробное описание формы создания и редактирования теста представлено в документации по продукту.

  • Предупреждения – это информация, имеющая критическое значение для работы того или иного функционала продукта. Например:

    Важно! Если курс был деактивирован, то результаты тестов и сертификаты по этому курсу будут недоступны пользователям. Если курс был удален, то результаты тестов и сертификаты этого курса будут также удалены.

    В особо важных случаях в этом виде форматирования может использоваться красный шрифт.

Форматирование текста

Стиль Назначение Пример использования
Жирный шрифт Для выделения важных в смысловом значении слов, фраз, терминов, названий элементов интерфейса. В поле Идентификатор введите краткое название латинскими буквами.
Курсив и подчёркивание Для названий продуктов компании 1С-Битрикс, сторонних программ и платформ. Также для названий методов, событий, классов, пространств имён в D7, если нет их описания в API. После изучения теоретического курса будет полезным выполнить практические задания по работе с "1С-Битрикс: Управление сайтом".
Серый фонДля выделения путей в рамках файловой системы, атрибутов, HTML-тегов, параметров функций, переменных, значений полей и короткого кода. В Короткой ссылке рекомендуется использовать знак тильда: ~.
Синий курсив Для подсветки путей в продукте. Пути выглядят так же, как они оформлены в административном разделе системы. Создание опроса начинается со страницы Группы опросов (Сервисы > Опросы > Дополнительно > Группы опросов).
Синий шрифт Подсветка URL-адреса без создания собственно ссылки – псевдо УРЛ. Пример адреса страницы с контактами: https://mysite.ru/about/contacts/.

Видеоматериалы

Видеоролики по курсу

На этой странице представлены доступные для просмотра учебные видеоматериалы, которые помогут Вам быстрее освоить курс Администратор. Модули. Видеоролики демонстрируют основные функциональные возможности продукта.

Название видеоролика Длительность, мин:секОтносится к уроку
Пример A/B-тестирования страниц 4:10 Пример A/B-тестирования страниц
Добавление новых элементов в Highload-блок через инструменты экспорта/импорта 5:14 Как добавить данные в Highload-блок
Отдельный домен для Сайтов 24 3:55 Сайты 24 на собственном домене
Сайты 24 на собственном домене 3:53 Сайты 24 на собственном домене
Добавление компонента в блок 5:30 Блок с компонентом внутри
Настройка прав для документооборота в инфоблоках 2:06 Документооборот при работе с инфоблоками
Настройка ключевых слов для показа баннерной рекламы 2:47 Ключевые слова: настройка свойств страницы
Пример работы Техподдержки с мастером 0:56 Создание мастера техподдержки
Работа с комментариями многопользовательской галереи 2:37 Работа с комментариями многопользовательской галереи


Где практиковаться и выполнять задания

Согласитесь, что для знакомства с продуктами компании «1С-Битрикс» и результативного обучения удобно иметь под рукой демонстрационную версию. Её можно подготовить с помощью виртуальной лаборатории, виртуальной машины или специального скрипта BitrixSetup. Первый вариант достаточно прост, но сильно ограничен по времени. Второй и третий посложнее, однако имеют более длинный пробный период.

Виртуальная лаборатория

Ценностью тестовой виртуальной лаборатории bitrixlabs.ru является то, что всего за пару кликов у вас будет демосайт на основе «1С-Битрикс: Управление сайтом» в редакции Бизнес. Для создания сайта:

  • нажмите кнопку [dw]Создать демо сайт[/dw][di][/di];
  • придумайте логин и пароль;
  • выберите решение (рекомендуем выбрать решение [dw]Интернет-магазин[/dw][di][/di], чтобы внешний вид сайта совпадал с изображениями на скриншотах курса);
  • остальные настройки оставьте по умолчанию.

Ваш демосайт готов к использованию!

Отметим минусы этого варианта:

  • сайт на виртуальной лаборатории «живёт» только 3 часа;
  • количество лабораторий невелико и они, к сожалению, часто бывают заняты;
  • невозможно ознакомиться с другими продуктами компании «1С-Битрикс», например, с коробочной версией «Битрикс24».

Виртуальная машина

Виртуальная машина позволяет установить локальную демоверсию любого продукта компании «1С-Битрикс» на срок до 30 дней. Потом машину можно удалить и поставить заново на очередные 30 дней, потеряв при этом, правда, свои наработки на старой машине.

Следуйте нашей инструкции и вы успешно установите локальную версию. Шаги несложные и сопровождаются наглядными иллюстрациями-всплывашками:

  1. Скачайте [dw]VMware Player[/dw][di]VMware Player – программный продукт, позволяющий запускать несколько операционных систем одновременно на одном компьютере.

    Помимо VMware Player, вы можете использовать VM VirtualBox для настройки виртуальной машины. Инструкцию по установке в ней вы найдёте немного ниже, в спойлере.[/di] и установите его. Эта программа нужна нам для запуска виртуальной машины с демосайтом. Установка её несложна, просто следуйте шагам мастера установки (для учебных целей укажите бесплатную версию для [dw]НЕкоммерческого использования[/dw][di][/di]).
  2. На странице со списком виртуальных машин скачайте [dw]дистрибутив[/dw][di][/di] нашей, уже настроенной, виртуальной машины BitrixVM.
  3. Загруженный архив [dw]распакуйте[/dw][di]Такие файлы Вы увидите в папке после распаковки архива:
    [/di] в любую, удобную вам, папку. (Например, в папку на диске С: С:\BitrixVM\).
  4. Запустите программу VMware Player и добавьте виртуальную машину BitrixVM, нажав [dw]Open a virtual machine[/dw][di][/di] и выбрав единственный доступный [dw]файл[/dw][di][/di] из папки, в которую был распакован архив.
  5. Запустите виртуальную машину с помощью кнопки [dw]Power on[/dw][di][/di]. По окончании загрузки операционной системы отобразится общая информация. Для вас важен IP-адрес, который присваивается автоматически и выводится в поле [dw]bitrix url[/dw][di][/di] (пример адреса: 192.168.1.36). Запомните его.
  6. В адресной строке вашего любимого браузера (Chrome, Firefox или любой другой) введите этот адрес. Откроется [dw]окно установки[/dw][di][/di]. Нажмите кнопку Установить.
  7. Выберите [dw]демонстрационную версию[/dw][di][/di] нужного вам дистрибутива продуктов компании «1С-Битрикс». Для обучения на наших курсах в большинстве случаев вам подойдет «1С-Битрикс: Управление сайтом» в редакции Бизнес. Если по какой-либо причине вас интересует другая редакция, можете выбрать её.
  8. Начнется [dw]загрузка дистрибутива[/dw][di][/di]. Дождитесь её окончания и появится мастер установки решения.
  9. Следуйте шагам мастера. Тут нет ничего сложного, только настройки вашего сайта (например, название магазина, реквизиты, логин и пароль администратора и т.д.). Если нужно, то более подробное описание каждого шага мастера есть в примере установки решения: Интернет-магазин.
Видеоролик установки BitrixVM в VMware Player
Установка BitrixVM в программе VirtualBox

Установка завершена! Теперь у Вас есть 30 дней на использование демоверсии.

Что дальше?

Начинайте обучение работе с «1С-Битрикс: Управление сайтом». Не забудьте, что для работы с демосайтом в таком варианте вам всегда нужно сначала запускать VMware Player и виртуальную машину (п. 5 инструкции), и только потом открывать сайт по его IP-адресу.

Возможные проблемы и их решение

Информацию об ошибках и способы их решения при установке демоверсии в BitrixVM смотрите в соответствующем уроке учебного курса Виртуальная машина BitrixVM.

  Скрипт BitrixSetup

Скрипт BitrixSetup позволяет устанавливать продукты компании «1С-Битрикс» на хостинг. У многих хостинг-провайдеров имеется бесплатный тестовый период, что удобно для обучения и практики.

Посмотрите видео и вы научитесь устанавливать пробную версию «1С-Битрикс: Управление сайтом» в редакции Бизнес.

Текстовое описание видео



Примеры решения типовых задач

Здесь приводятся ссылки на уроки, в которых описаны типовые операции при администрировании сайтов, созданных на "1С-Битрикс: Управление сайтом".

Коллективная работа

Из курса Администратор.Модули Из других курсов

Модули для общения и обратной связи

Из курса Администратор.Модули Из других курсов

Служебные модули



Общий справочник модулей

Работа с модулями, не относящимися к [dw]коммерческой деятельности[/dw][di]Для модулей, связанных с торговлей в Интернете, создан отдельный курс Администратор. Бизнес.[/di], описана в трёх учебных курсах (в зависимости от требующихся навыков):

Ниже для каждого из таких модулей приведён список всех уроков с указанием соответствующего учебного курса.

A/B тестирование

Email-маркетинг

Highload-блоки

Push and Pull

REST API

Wiki

Бизнес-процессы

Блоги

Веб-аналитика

Веб-мессенджер

Веб-формы

Документооборот

Календарь событий

Клиенты

Конверсия

Контроллер сайтов

Менеджер идей

Обучение

Опросы

Подписка, рассылки

Почта

Поисковая оптимизация

Реклама, баннеры

Сайты 24

Служба сообщений

Социальные сервисы

Социальная сеть

Техподдержка

Триггерные рассылки

Универсальные списки

Форум

Фотогалерея

Дополнительные модули


Типовые действия на сайте

Типовые действия на сайте

В этом уроке приведены спойлеры с короткими gif-анимациями действий, которые часто приходится выполнять на сайте. Сразу изучать их не обязательно: по мере прохождения курса Вы можете возвращаться к этому уроку, чтобы быстро вспомнить, как выполнить то или иное действие. Для просмотра спойлера просто кликните на "+" или на область спойлера.

Основные кнопки панели управления

Включить режим "Правка"

Сбросить кеш страницы

Перейти в административную часть

Перейти в публичную часть

Свернуть/развернуть панель управления

Закрепить/открепить панель управления в верхней части экрана
Работа со страницей в публичной части

Создать страницу

Изменить свойства страницы

Изменить страницу в визуальном редакторе

Изменить страницу в панели управления
Работа с разделом в публичной части

Создать раздел

Изменить свойства раздела

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

Открыть параметры компонента в публичной части

Открыть параметры компонента в визуальном редакторе

Добавить компонент в визуальном редакторе

Свернуть/развернуть панель компонентов в визуальном редакторе
Работа с инфоблоками

Добавить тип инфоблока

Добавить инфоблок
Работа в административном разделе

Создать страницу в административной части

Создать раздел в административной части

Открыть настройки Главного модуля

Загрузить файлы в папку upload

Открыть список групп пользователей

Создать резервную копию

Как узнать редакцию продукта

   Как узнать, какая редакция сейчас у вас?

Так как у разных компаний могут быть разные потребности в функционале, 1С-Битрикс предоставляет целую линейку редакций (лицензий), отличающихся по набору доступных инструментов.

Чтобы узнать, какая редакция 1С-Битрикс установлена у вас, достаточно перейти [ds]в административном разделе[/ds][di] Административный раздел – часть сайта, где производится
управление модулями системы, структурой сайта, его содержанием, посетителями и
другими составляющими сайта. Недоступен для просмотра обычным посетителям сайта.

Для перехода в Административный раздел служит закладка Администрирование,
расположенная на Панели управления в Публичном разделе сайта.

Подробнее...[/di] сайта на страницу Обновление платформы (Marketplace > Обновление платформы) во вкладку [dw]Установка обновлений[/dw][di] [/di]:

Нажмите на рисунок, чтобы увеличить

   Информация о редакциях в уроках

Для вашего удобства мы указываем в уроках ограничения по редакциям (т.е. в каких редакциях недоступен описываемый в уроке функционал):

  Как узнать текущую версию продукта?

Когда в уроках упоминается «версия продукта» (без указания конкретного модуля), то имеется в виду версия Главного модуля.

Версию продукта (т.е. версию Главного модуля) можно определить несколькими способами:

  • прокрутив в административной панели любую страницу до конца:

  • на странице Модули (Настройки > Настройки продукта > Модули):

    Нажмите на рисунок, чтобы увеличить

    Примечание. На этой странице можно посмотреть текущие версии всех модулей, установленных в системе.

  • с помощью предустановленного [ds]гаджета на Рабочем столе[/ds][di] Гаджеты в продуктах «1С-Битрикс: Управление сайтом» – это особые программные элементы, выполняющие функции уведомления и быстрого перехода к различным элементам управления и настройки системы и её элементов. С помощью гаджетов на Рабочем столе может быть представлена самая разнообразная информация.

    Подробнее...[/di]:

  Сравнение редакций «1С-Битрикс: Управление сайтом»

Ниже сравниваются возможности всех редакций продукта [ds]«1С-Битрикс: Управление сайтом»[/ds][di] «1С-Битрикс: Управление сайтом» – профессиональная система управления сайтами и интернет-магазинами.

Подробнее... [/di] по следующим категориям: CMS, Интернет-магазин, Маркетинг, Производительность, Безопасность и мобильность. Для просмотра таблицы сравнения кликните по значку справа от названия выбранной категории.

#PRODUCT_LICENSE_TABLE#

Примечание. Сравнить возможности редакций [ds]коробочного «Битрикс24»[/ds][di] 1C-Битрикс24 (коробочная версия Битрикс24) – это цифровое рабочее пространство для вашей компании. Ставьте и контролируйте задачи, отправляйте файлы и голосовые сообщения, общайтесь в чате, обсуждайте планы в профильных группах и принимайте взвешенные решения.

Подробнее...[/di] можно тут.



Глоссарий

Список терминов

В Описании курса указан необходимый минимум знаний для изучения курса. Здесь приведем и напомним термины, в которых вы должны ориентироваться для наилучшего понимания дальнейших уроков.



ТерминОписание
A/B тестированиеИнструмент маркетингового исследования, с помощью которого можно сравнить два варианта страницы, шаблона сайта или сайта целиком, чтобы убедиться, какой из вариантов имеет более высокую конверсию и многие другие дополнительные показатели.
Шаблон сайтаНабор файлов, описывающих дизайн сайта. От шаблона зависит, как будет выглядеть сайт, его визуальное отображение. Синонимы: дизайн сайта, скин сайта. Для показа одного сайта можно использовать несколько различных шаблонов, то есть функционал сайта не меняется, а цвета, расположение кнопок и меню и др. отличаются.
КомпонентПрограммный код, оформленный в визуальную оболочку, выполняющий определённую функцию какого-либо модуля по выводу данных в Публичной части. То есть то, что создается и настраивается в Административной части, в Публичной отображается с помощью компонентов.
СтраницаСамостоятельная часть сайта, имеющая свой адрес. Представляет собой текстовый файл в формате HTML, содержит информацию разного рода - изображения, тексты, ссылки и т.п.
Highload-блокСтруктурированный список, справочник для работы с большими объёмами данных.
XML-файлФайл с расширением .xml. Может быть запущен, например, в Excel. Используется для создания и обработки документов как программами, так и человеком, с акцентом на использование в Интернете.
XML-форматРасширяемый язык разметки (eXtensible Markup Language). Использует теги для определения структуры, визуального оформления и смысла данных.
КодировкаКодировка символов – это набор числовых значений, которые ставятся в соответствие группе алфавитно-цифровых символов, знаков пунктуации и специальных символов. Наиболее распространены кодировки стандартов ASCII и Unicode.
Push and PullТехнология сетевой коммуникации для обеспечения отправки мгновенных команд. Push-уведомления – это небольшие всплывающие окна, которые появляются на экране мобильного телефона или обычного компьютера и сообщают о важных событиях и обновлениях. То есть инициатором уведомлений являются сайты, на которые подписан пользователь. Противоположностью Push-технологии является технология Pull, где информация запрашивается самим пользователем.
BackendСвоеобразный мозг сайта, который получает информацию, данные и HTTP-запросы от клиентской части, обрабатывает их и производит соответствующие действия. Бэкенд – невидимая для пользователя часть ресурса, которая располагается на удаленном сервере и обеспечивает бесперебойную работу сайта.
AJAXАякс (Asynchronous Javascript and XML) – технология, позволяющая взаимодействовать с сервером без перезагрузки страницы. Например, получать или передавать какие-нибудь данные.
Виртуальная машина1C-Битрикс: Виртуальная машина – бесплатный программный продукт, готовый к немедленному использованию виртуальный сервер, полностью настроенный, протестированный и адаптированный для оптимальной работы как с продуктами «1С-Битрикс», так и с любыми PHP-приложениями. Имеется в версии для Windows и для Unix систем.
Rest APIСовокупность методов, инструментов и функций в виде интерфейса в отдельном модуле. Используется для создания новых приложений, интеграций и расширения функциональности продукта.
Лог, логированиеЛогирование – процесс записи специального текстового файла (лога) с полной информацией о работе программы, действиях пользователей. В результате получается некий журнал, каждая строчка в котором соответствует определенному действию.
WikiРаздел сайта, структуру и содержимое которого пользователи могут сообща изменять с помощью инструментов, предоставляемых самим сайтом. Чаще всего используется для создания Базы знаний, подготовки различных документов и др.
Веб-мессенджерИнтерактивный инструмент, позволяет эффективно общаться на сайте прямо через браузер. Участники вашей соцсети заходят на сайт и обмениваются сообщениями через встроенный Веб-мессенджер. Не нужно устанавливать и настраивать дополнительные программы.
Бизнес-процессы (БП)Инструмент системы, обеспечивающий обработку документов в зависимости от последовательности действий (шагов, этапов, функций), совершаемых в заданном порядке и в определенных условиях.
Статусы БПНабор состояний, в которых может пребывать бизнес-процесс. В процессе работы БП происходит переход из одного состояния (статуса) в другое с разделением прав доступа.
Действия БПОперация, выполняющаяся на определенном шаге бизнес-процесса. Действия нужны, чтобы реализовывать сложную разветвленную логику. Они могут выполнять сценарии или вызывать процесс.
БлогСетевой журнал (дневник), позволяющий вести тематические записи в хронологическом порядке. .
Шаблон путиШаблоны позволяют генерировать URL-адреса для страниц и файлов сайта или модуля, исходя из заданных в шаблоне параметров и переменных.
CAPTCHA (капча)Cпециальный защитный код в виде всплывающего окна или картинки. Используется для того, чтобы определить, кем является пользователь системы: человеком или компьютером (ботом).
Псевдоним (никнейм, ник)Вымышленное имя или «кличка, прозвище». Сетевое имя, используемое пользователем в Интернете, обычно в местах общения (в блогах, форумах, чатах, играх) как более короткая или новомодная альтернатива реальному имени.
АватарФото или другое графическое изображение, которое используется в учетной записи пользователя для персонализации, самовыражения, облегчения узнавания и поиска владельца аккаунта.
РейтингЧисловой или порядковый показатель, характеризующий важность или значимость определённого объекта или явления. Рейтинг участника форума (блога) – численный показатель, косвенно отражающий полезность пользователя форуму и его участникам.
Индексация и ранжированиеТермины поисковых систем. Индексация – это процесс добавления содержания сайта в базу данных (в индекс) поисковой системы. Ранжирование – процесс, по результатам которого сайту присваивается определенное место или категория в выдаче.
Веб-аналитикаСистема сбора и анализа информации о посетителях сайта. На основании этих данных определяется веб-аудитория и изучается её поведение для принятия решений по развитию веб-ресурса.
SEO, поисковая оптимизация(Search Engine Optimization – оптимизация под поисковые системы) – комплекс методов, позволяющих расположить сайт в выдаче поисковых систем как можно выше.
КастомизацияИзменение логики работы компонента или шаблона компонента под частные задачи.
Электронная коммерцияВ курсе рассматривается функционал e-commerce Яндекс. Это набор отчетов, позволяющих отслеживать статистику продаж по различным метрикам.
МетрикаМера, позволяющая получить численное значение некоторого свойства. В курсе рассматривается Яндекс.Метрика – инструмент веб-аналитики, который помогает получать наглядные отчеты, записи действий посетителей, отслеживать источники трафика и оценивать эффективность онлайн- и офлайн-рекламы.
Мета-тэгЭлемент HTML, задающий информацию о странице: кодировку страницы, ключевые слова, автора, краткое описание. Как правило, содержимое мета-тэгов используется в служебных целях, например, роботами поисковых систем, индексирующих сайт. Мета-тэг задается внутри тэга <head>.
ДокументооборотМодуль для организации цепочки движения документа от момента создания до момента публикации с обязательным ведением истории изменении и сохранением копий документов на каждом из этапов.
Статусы (документооборот)Символическое обозначение определенного этапа в работе с документом. Статусы также ограничивают доступ к документу для пользователей.
Менеджер файловФункционал, с помощью которого осуществляется управление структурой сайта из Административной части.
Права, доступСовокупность правил, регламентирующих порядок и условия доступа пользователя к объектам системы (модулям, инфоблокам, процессам и др.). Устанавливаются администратором сайта или разработчиком.
ПорталКорпоративный портал Битрикс24. Единая платформа для организации работы всей компании. Включает в себя онлайн-офис, контакт-центр, CRM, управление задачами и т.п. Может быть облачным или коробочным.
ОблакоОблачная версия Битрикс24 – это онлайн-сервис, SaaS (Software as a Service – программное обеспечение как услуга). Разработчик предоставляет пользователю доступ к программе через интернет. Работа происходит в браузере, собственные сервера не нужны. Вся информация размещается на серверах поставщика, он обеспечивает их работу, сохранность, безопасность и доступ к данным. Поставщик услуги полностью отвечает за аппаратное и программное обеспечение, его обновление и обслуживание.
КоробкаКоробочное решение Битрикс24 размещается на собственном сервере заказчика или на арендованном хостинге. Разработчик предоставляет пакет программного обеспечения, а установкой, обслуживанием, обновлением и технической поддержкой заказчик занимается самостоятельно. В этом случае можно настроить глубокую бизнес-логику корпоративного портала и кастомизировать его под индивидуальные потребности. Также «коробка» необходима, когда требуется хранение данных на территории страны или же когда политика компании запрещает доступ к порталу извне.
ВиджетНебольшое графическое приложение, объединяет все цифровые каналы коммуникаций с клиентами в Битрикс24. Устанавливается на сайт как кнопка, с помощью которой посетители сайта выбирают удобный способ связи с компанией: чат, звонок или форму.
CRM-формаИнструмент для получения информации от клиентов. Обычно визуально она представляет собой окно с анкетой, в которой потенциальный клиент может указать информацию о себе, заказать товар или записаться на услугу. CRM-форму можно разместить на лендинге или в интернет-магазине.
Обратный звонокОдин из каналов коммуникаций, подключаемых в виджете. После клика на кнопку автоматически совершается исходящий звонок на указанный клиентом номер и клиент соединяется со свободным менеджером.
ТелефонияСпособ связи с клиентами – телефонная связь, которая ведется при помощи интернет-протокола VoIP (Voice over IP – голос поверх интернет протокола).
Онлайн-чатСпособ коммуникации клиента вашего сайта с вами, средство обмена сообщениями в режиме реального времени. Используется для сопровождения клиента по сайту, техподдержки, помощи в выборе или оформлении заказа и т.п.
Открытые линииОбъединяют множество цифровых каналов, в режиме реального времени собирают сообщения из Vkontakte, Telegram, Viber и др., распределяют их по очереди и маршрутизируют между сотрудниками.
КонверсияВ интернет-маркетинге – это отношение числа посетителей сайта, выполнивших на нём какие-либо целевые действия (покупку, регистрацию, подписку, посещение определённой страницы сайта, переход по рекламной ссылке и т.п.), к общему числу посетителей сайта, выраженное в процентах.
Контроллер сайтовМодуль для централизованного управления подчиненными сайтами. Сайты могут быть физически удалены (например, филиал в другом городе), но должны быть доступны через Интернет и разработаны на 1С-Битрикс: Управление сайтом (любой редакции). Администратор контроллера может управлять доступом, настройками, обновлениями, раздачей контента и т.п. на подчиненных сайтах.
E-mail маркетингМодуль для организации работы почтовых рассылок. Функционал модуля включает автоматическое обновление адресов подписчиков, настройку отправки и отслеживания, шаблонизатор, регулярные рассылки с актуальной информацией на основе компонентов для писем.
Шаблон письмаЗаготовка, "рыба" для отправки рассылки подписчикам. В шаблоне письма задаются типовые поля (адрес, обращение, текст), их расположение, логотипы, рекламные баннеры и проч. При отправке рассылки поля адреса, имени и т.п. автоматически заменяются нужными.
Триггерные рассылкиПоследовательность писем, которые отправляются сайтом автоматически в ответ на действие пользователя или после наступления некоторого события, связанного с пользователем. Использование этого инструмента увеличивает количество возвратов и повторных покупок в магазине.
БаннерГрафическое изображение рекламного характера, аналогичное рекламному модулю в прессе. Может быть как статичным изображением или даже текстом, так и содержать анимированные элементы (вплоть до видео и интерактивных объектов). Как правило, содержит гиперссылку на сайт рекламодателя или страницу с дополнительной информацией.
ТизерМаркетинговый прием – рекламное сообщение, построенное как загадка, которое содержит часть информации о продукте, но при этом сам товар полностью не демонстрируется. Тизеры обычно появляются на раннем этапе продвижения товара и служат для создания интриги вокруг него.
Ключевые словаСлова и фразы, с помощью которых система определяет, по каким поисковым запросам показывать ваши объявления. По ним сайт продвигается в топ поисковой выдачи. Ключевые слова составляют часть контентного наполнения страницы сайта.
Таргетинг(target – цель) Рекламный механизм, позволяющий сконцентрировать рекламу на группе (целевой аудитории), которая удовлетворяет заданным критериям. Используется для повышения эффективности рекламного сообщения
Менеджер идейСервис, позволяющий предложить свою идею для развития бизнеса компании, оценить идеи своих коллег. Каждая идея имеет свой рейтинг, который строится на основе мнения сотрудников компании. Для удобства поиска в Менеджере идей все идеи сортируются по категориям и статусам.
КурсОрганизованная и логически завершенная последовательность страниц, содержащих информацию о некоторой предметной области.
ГлаваТематический (смысловой) раздел или подраздел курса. Каждая глава может включать неограниченное количество дочерних элементов (подразделов и уроков), а также относиться к нескольким родителям (главам или курсам).
УрокИнформационное наполнение курса. Урок может входить в состав одной или нескольких глав или курсов (без привязки к главам). Каждый урок представляет собой отдельную страницу.
ТестыСгруппированные по разным темам вопросы с вариантами ответов. Используются для оценки объема и уровня усвоения информации в памяти обучающихся. По результатам успешного прохождения тестов выдаются сертификаты об освоении курсов.
ВопросыВопросы для проверки пройденного материала, создаются как отдельные объекты. Используются для двух типов проверочных тестов: итоговых и текущих тестов для самопроверки.
РассылкиПисьма, рассылаемые по электронной почте, для уведомления пользвателей о событиях на сайте (информация о достижениях компании, новых направлениях в ее деятельности, предоставляемых услугах, планируемых акциях и т.д.)
Подписка, подписчикПодписка на рассылку (subscription) – это опция на сайте, которая позволяет посетителям получать рассылки компании на указанный email адрес. После того, как от посетителя получены контактные данные и согласие на получение сообщений, он становится подписчиком.
ВыпускПочтовое сообщение, отправляемое тем подписчикам, кто подписался на те или иные рассылки. Например, информационный выпуск, или выпуск сообщений о поступлении товара.
Cron (крон)В Unix-подобных операционных системах утилита cron позволяет организовать запуск скриптов по четко указанному расписанию.
ФайрволТакже межсетевой экран (брандмауэр) – технологический барьер, предназначенный для предотвращения несанкционированного или нежелательного сообщения между компьютерными сетями или хостами.
SMTP-сервер(Simple Mail Transfer Protocol – простой протокол передачи почты) – широко используемый сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP.
Почтовый сервисПрограмма, которая передаёт сообщение от одного компьютера к другому. Например, популярными почтовыми сервисами являются Gmail, Яндекс, Mail.
Почтовый шаблонМакет, определяющий текст почтового сообщения, а также порядок расположения полей в сообщении.
Домен (доменное имя)Уникальное имя, название сайта. Одно из полей DNS таблицы (domain name service), содержащее в себе строго структурированное имя интернет-сайта, заданное по определённым правилам. Основная задача DNS таблицы – это ассоциация доменных имен с IP адресами сайтов. Пример доменного имени: 1c-bitrix.ru
МногосайтовостьВозможность системы 1С-Битрикс: Управление сайтом управлять разными сайтами из единой Панели управления.
Социальная сетьОнлайн-платформа, которая используется для общения, знакомств, создания социальных отношений между людьми, которые имеют схожие интересы или офлайн-связи, а также для развлечения (музыка, фильмы) и работы.
АвторизацияПроцесс, с помощью которого система отличает тех, кому можно работать с ней, от тех, кто может только просматривать сайт.
Протокол авторизацииСхема, сценарий компьютерной связи, специально разработанный для передачи данных аутентификации между двумя объектами. Это самый важный уровень защиты, необходимый для безопасной связи в компьютерных сетях.
SLA (уровни поддержки)(Service Level Agreement – соглашение об уровне услуг) Описание обязательств компании по предоставлению определенного уровня сервиса (в данном случае технической поддержки) тем или иным пользователям. Уровни сервиса используются для управления приоритетами пользователей на получение поддержки.
ОбращениеЛюбое сообщение или заявка от пользователя в техподдержку (через форму на сайте, по электронной почте, по телефону), зарегистрированное с присвоением уникального номера и отслеживаемое в системе.
Универсальные спискиИнструмент для удобного хранения и работы с любой структурированной информацией.
ФорумСайт, предназначенный для проведения онлайн-дискуссий. Наполнение такого сайта информацией производят пользователи.
КомментарийПояснение, рассуждение, замечание по теме форума, оформленное и опубликованное как отдельная запись.
МодераторПользователь, у которого больше полномочий, чем у обычного участника сайта или форума. Пользователь с правами модератора может скрывать или показывать сообщения и темы, переносить их в другие форумы, закрывать или прикреплять темы.
Звания и баллыБаллы присваиваются пользователю форума за каждое отправленное сообщение. Количество баллов за сообщение настраивается. Звания посетителей форума устанавливаются согласно количеству набранных баллов. Пользователь получает баллы как за количество сообщений, так и в результате голосования других посетителей форума.
ФотогалереяИнструмент для создания и управления галереями и фотоальбомами пользователей, групп пользователей и сайта в целом.
Карта объектовИнтерактивная карта объектов – удобный инструмент, который выводит в графическом виде важные объекты, события и туристические маршруты. Он поможет создать схему проезда до офиса или склада, карту офисов компании, карту региона и т.п.
МаршрутПуть следования пешехода или транспорта, задаваемый конечными пунктами, временем, промежуточными пунктами или точной линией пути.

A/B тестирование

Модуль A/B-тестирование - это инструмент маркетингового исследования, с помощью которого можно сравнить два варианта страницы, шаблона сайта или сайта целиком, чтобы убедиться, какой из вариантов имеет более высокую [dw]конверсию[/dw][di]Конверсия продаж — это соотношение реальных покупателей к потенциальным. Другими словами, доля тех, кто купил товар или услугу, а не просто им поинтересовались.[/di] и многие другие дополнительные показатели.

Принципы A/B тестирования

Модуль A/B-тестирование - это инструмент маркетингового исследования, с помощью которого можно сравнить два варианта страницы, шаблона сайта или сайта целиком, чтобы убедиться, какой из вариантов имеет более высокую конверсию и многие другие дополнительные показатели.

А/B тестирование работает так

Отбирается некоторая часть посетителей сайта, которая будет участвовать в тесте. Система делит этот трафик пополам и направляет первую половину на экспериментальные страницы А (то, что видят все посетители сейчас), а вторую половину - на страницы Б (то, что мы собираемся протестировать). Для каждой из этих групп рассчитывается конверсия и прочие показатели, которые и будут включены в аналитический отчет. Этот отчет содержит информацию о том, какой вариант страницы более выгоден, имеет более высокую конверсию и т.д.

Важно! Запуск, редактирование и создание тестирования по умолчанию доступны только группе Администраторы. Чтобы разрешить другой группе выполнять данные действия, ее нужно наделить [dw]правом доступа[/dw][di]Право доступа - комплекс операций в системе, доступный для выполнения пользователем.

Подробнее...[/di] на операцию Изменение PHP-кода (edit_php).

Ключевые особенности А/В тестирования:

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

Внимание! Данный модуль пока не является автоустанавливаемым, поэтому его требуется установить самостоятельно из страницы Настройки > Настройки продукта > Модули в административной части сайта.


Настройки и запуск тестирования

  Запуск тестирования

Для запуска А/В тестирования произведите настройки в пункте административного меню Маркетинг > A/B тестирование. Для этого выберите Изменить в меню действий списка тестов. Если же вы впервые запускаете тестирование, то попадете в настройки автоматически при выборе опции Запустить в меню действий или при нажатии на кнопку Запустить в строке с тестом:

Нажмите на рисунок, чтобы увеличить

  Форма настроек

Форма настроек тестирования выглядит следующим образом:

Поясним некоторые поля:

  • Сайт - выберите сайт, для которого запускается тестирование.
  • Длительность теста - выберите время, в течение которого будет производиться тестирование. Можно указать точное количество недель или дней, либо выбрать опцию До ручной остановки теста. В таком случае тестирование будет продолжаться, пока пользователь самостоятельно его не остановит.
  • Трафик на тест - укажите процент пользователей, которые участвуют в тестировании. Эта цифра означает общее количество пользователей, участвующих в тестировании. Половина от трафика будет направлена на текущий дизайн, а половина - на новый. Если указано 30%, то новый дизайн увидят только 15%.
Примечание: последние два пункта напрямую связаны с посещаемостью сайта. Чем она больше, тем более коротким по продолжительности может быть тест и тем меньше пользователей нужно привлекать к тестированию, чтобы получить адекватные результаты с высокой точностью.
  • Тесты - два варианта страницы или шаблона сайта, которые будут сравниваться друг с другом. Вариант А - это то, что видят все посетители сайта на данный момент, вариант В - то, что будет тестироваться.

    Если будет проводиться сравнение двух шаблонов сайта, то в открывающемся списке нужно указать сравниваемые шаблоны. Шаблоны будут применены ко всему сайту. Если в одном А/В тестировании есть несколько тестов, направленных на сравнение шаблонов, то проверяться будут условия только первого теста.

    Напоминаем: для того, чтобы изменить внешний вид одной из страниц многостраничного (комплексного) компонента, следует менять его шаблон.

    Если же сравниваются страницы, то в варианте А можно либо выбрать соответствующий файл в системе сайта, либо указать адрес нынешней страницы. Далее можно [dw]скопировать[/dw][di] [/di] содержимое этой страницы в пункт B и внести необходимые изменения, либо же просто в пункте B указать адрес новой страницы. У каждого из вариантов есть кнопка Посмотреть, позволяющая увидеть внешний вид страницы для каждой группы.

    Также можно добавлять дополнительные тесты по нажатии на кнопку Добавить тест.

Внимание! Одновременно может быть запущено только одно А/В тестирование, но в рамках него может быть добавлено несколько тестов.

Примечание: при сравнении как шаблонов сайта, так и страниц, адреса остаются неизменными, поэтому проблем с переходами по страницам сайта у посетителей не возникает.

При нажатии кнопки Сохранить настройки теста будут сохранены и тестирование можно будет запустить.

  Работа в публичном разделе

После того, как тест запущен, появится возможность переключаться между вариантами А и В прямо из панели управления в публичном разделе сайта. Так можно понять, что видят посетители сайта, принадлежащие к каждой из тестируемых групп.

Примечание: по умолчанию данная кнопка из публичного раздела будет видна только группе пользователей Администраторы. Чтобы другие пользователи тоже могли ее видеть, их нужно наделить [dw]правом доступа[/dw][di]Право доступа - комплекс операций в системе, доступный для выполнения пользователем.

Подробнее...[/di] к операции Просмотр остальных настроек главного модуля (view_other_settings). Также ее может увидеть запускающий тестирование пользователь при нажатии кнопки Посмотреть во время настройки теста.


Пример A/B-тестирования страниц

Видеоурок

Как мы выяснили [ds]ранее[/ds][di] Тесты – два варианта страницы или шаблона сайта, которые будут сравниваться друг с другом. Вариант А – это то, что видят все посетители сайта на данный момент, вариант В – то, что будет тестироваться.

Одновременно может быть запущено только одно А/В тестирование, но в рамках него может быть добавлено несколько тестов.

Подробнее...[/di], одновременно может быть запущено только одно А/В-тестирование. Однако в рамках этого тестирования можно добавить несколько тестов. Рассмотрим на примере, как создать и запустить A/B-тестирование с тестами для двух страниц:

  • страница Новости – для варианта B скопируем эту страницу и поменяем шаблон компонента, выводящего новости;
  • страница О магазине – пусть в варианте B вместо этой страницы показывается страница Контакты.

  Общие параметры теста

На странице Маркетинг > A/B-тестирование добавим [dw]новый тест.[/dw][di] [/di] В открывшейся форме заполним параметры теста:

  • Сайт – выбираем сайт, для которого хотим запустить тестирование;
  • Длительность теста – выбираем опцию До ручной остановки теста (чтобы тест проводился до тех пор, пока мы сами не заходим его остановить);
  • Трафик на тест – выбираем процент всех пользователей сайта, которые будут участвовать в тестировании. В нашем тесте укажем 100%, т.е. в тестировании участвуют все пользователи: половина из них увидит старые версии страниц (вариант A), а половина – новые (вариант B).

  Тест #1 (страница Новости)

Нажимаем кнопку Добавить тест и выбираем пункт [dw]Страница[/dw][di] [/di]:

Нажмите на рисунок, чтобы увеличить

1 В блоке A прописываем URL тестируемой страницы Новости /news/index.php (либо можно нажать кнопку и [dw]выбрать страницу[/dw][di] [/di] из структуры сайта).

2 Нажимаем кнопку Скопировать страницу. После этого действия в директории /bitrix/abtest автоматически будет создана страница-дубль 3 (блок B), которая полностью будет повторять содержимое страницы, указанной в блоке A.

4 Нажимаем кнопку Редактировать страницу и переходим в форму редактирования:

Дважды кликаем по размещенному на этой странице компоненту [comp include_62967]Новости[/comp] и в [dw]настройках компонента[/dw][di] [/di] меняем текущий шаблон bootstrap_v4 на .default. Сохраняем все внесенные на этой странице изменения.

Возвращаемся в форму создания теста и нажимаем кнопку [dw]Применить[/dw][di] [/di] – наши изменения сохранились, и при этом мы остались в форме редактирования теста. С помощью появившейся кнопки [dw]Посмотреть[/dw][di]
[/di] можно оценить внешний вид страниц (текущей страницы из блока A и изменённой в блоке B).

На этом настройка Теста #1 окончена.

  Тест #2 (страница О магазине)

Тест #2 добавляем аналогично Тесту #1 (нажимаем кнопку Добавить тест и выбираем пункт [dw]Страница[/dw][di] [/di]):

Нажмите на рисунок, чтобы увеличить

В блоке A прописываем URL тестируемой страницы О магазине /about/index.php (либо можно нажать кнопку и [dw]выбрать страницу[/dw][di] [/di] из структуры сайта).

В блоке B прописываем URL страницы /about/contacts/index.php, которую мы хотим во время тестирования подставлять вместо страницы /about/index.php (либо добавляем из структуры сайта).

Нажимаем кнопку [dw]Применить[/dw][di] [/di] – наши изменения сохранились, и при этом мы остались в форме редактирования теста. С помощью появившейся кнопки [dw]Посмотреть[/dw][di]
[/di] можно оценить внешний вид страниц (текущей страницы из блока A и новой в блоке B).

На этом настройка Теста #2 окончена.

  Результат

В результате у нас создан один A/B-тест, состоящий из двух тестов страниц:

Нажмите на рисунок, чтобы увеличить

Сохраняем внесенные изменения. Созданный A/B-тест был добавлен в общий список тестов, и теперь его можно запустить:

Далее переходим в публичный раздел сайта, открываем тестируемые страницы Новости и О магазине и с помощью кнопки A/B-тест смотрим, как эти страницы будут отображаться для пользователей из группы B:

Примечание: при тестировании страниц их адреса (URL) остаются неизменными, поэтому проблем с переходами по страницам сайта у посетителей не возникает.



Отчеты по тестам

Какой вариант лучше?

В любой момент после запуска теста, даже не дожидаясь его окончания, можно посмотреть [dw]отчет о проводимом тестировании[/dw][di][/di].

Примечание: Если выбрана опция автоматического завершения тестирования по истечению какого-то времени, то его вручную завершать не обязательно.

Надо учитывать, что конверсия будет высчитываться по тем счетчикам, которые были выбраны в настройках модуля [dw]Конверсия[/dw][di]Модуль Конверсия позволяет оценить ключевые показатели эффективности сайта.

Подробнее.... [/di]

Для примера запустим тест, в котором будем рассчитывать конверсию для заполнения формы, где мы заменим текст кнопки сохранения анкеты.

Такой увидит кнопку посетители сайта из группы А.

А такой увидят кнопку посетители сайта из группы В.

После завершения тестирования можно посмотреть отчет по тесту. В отчете по А/В тестированию содержится график, отражающий изменение показателя конверсии в динамике, значение конверсии по каждому из сравниваемых вариантов, а так же разницу для конверсии по обеим тестовым группам.

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

Внимание! Каждый тест имеет только один отчет. Поэтому если запустить тест заново, то результаты вновь проведенного теста будут добавлены к результатам предыдущего, что повышает их точность.

Однако менять набор тестов внутри хотя бы однажды запущенного А/В тестирования крайне не рекомендуется, т.к. это может значительно исказить результаты. Для того, чтобы проверить новые шаблоны сайта или страницы, следует создавать новые тестирования.


Проверьте себя

Ответьте на несколько вопросов по теме A/B тестирование, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Запускать A/B-тестирование по умолчанию могут все пользователи, имеющие доступ к административной части сайта.
Верно
Неверно
2 Одновременно может быть запущено только одно А/В тестирование, но в рамках него может быть добавлено несколько тестов.
Верно
Неверно
3 После того, как тест запущен, можно переключаться между вариантами А и В из панели управления в публичном разделе сайта.
Верно
Неверно
4 Обязательно нужно указать точное количество недель или дней в длительности теста.
Верно
Неверно
5 Отчёт о проводимом тестировании можно посмотреть только после окончания этого тестирования.
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. Создайте новый A/B-тест:
    • В тесте необходимо сравнить текущий шаблон ("Адаптивный шаблон интернет-магазина") этой страницы с новым шаблоном (например, с шаблоном "Прохождение курса обучения")
    • Длительность теста: неделя
    • На каждый дизайн должно попадать по 25% от общего количества посетителей сайта

    Решение

  2. Запустите созданный A/B-тест и перейдите на страницу О магазине. Посмотрите, как будет выглядеть эта страница для обеих групп пользователей, участвующих в тестировании.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.


AD/LDAP интеграция

Важно! Модуль AD/LDAP интеграция доступен во всех редакциях коробочной версии Битрикс24, а также в лицензии Энтерпрайз продукта «1С-Битрикс: Управление сайтом».

При проведении интеграции продуктов компании «1С-Битрикс» с информационной системой организации часто возникает потребность в разграничении прав сотрудников компании на доступ к ресурсам корпоративного портала или сайта и его управлению. Стандартным решением данной задачи является создание нескольких групп пользователей Bitrix Framework с различным уровнем и распределение сотрудников по этим группам.

Модуль AD/LDAP интеграция позволяет исключить [dw]повторные операции[/dw][di] Администратор может столкнуться с необходимостью дублирования уже существующих групп пользователей корпоративной сети в системе Bitrix Framework.

Чтобы изменить уровень прав или добавить нового пользователя одновременно в корпоративной сети и в системе Bitrix Framework, необходимо выполнить настройку дважды:

1) изменить/создать аккаунт пользователя в корпоративной сети;

2) выполнить ту же операцию в Bitrix Framework. [/di] и сократить затраты времени и труда на управление группами пользователей корпоративной информационной системы. С его помощью можно установить соответствие между группами пользователей корпоративной сети и группами пользователей Bitrix Framework, что позволяет организовать централизованное управление всеми группами пользователей корпоративной информационной системы.

Назначение и возможности модуля

  Что может модуль LDAP

AD/LDAP модуль реализован с учетом особенностей работы протоколов [dw]LDAP[/dw][di]LDAP (англ. Lightweight Directory Access Protocol - протокол прикладного уровня для доступа к службе каталогов X.500, разработанный IETF, относительно простой протокол, использующий TCP/IP и позволяющий производить операции аутентификации (bind), поиска (search) и сравнения (compare), а также операции добавления, изменения или удаления записей.[/di] и [dw]AD[/dw][di]Active Directory («Активный каталог», AD) - службы каталогов корпорации Microsoft для операционных систем семейства Windows Server.[/di], один из которых должен быть установлен на корпоративном сервере.

В основе работы перечисленных протоколов лежит принцип хранения информации в виде записей, обладающих набором атрибутов и хранящихся в базе данных с древовидной иерархической структурой. Таким образом, при настройке на сервере локальной вычислительной сети LDAP или AD протокола информация о группах пользователей будет представляться в следующем виде:

Используя данную структуру хранения данных, модуль AD/LDAP позволяет настраивать соответствие групп пользователей корпоративной сети группам пользователей Bitrix Framework.

Модуль позволяет подключаться к нескольким AD. Обращение к AD серверу происходит при каждой авторизации пользователя, либо при импорте пользователей.

  Таблица соответствий

Соответствие групп пользователей задается в специальной таблице соответствий в административном разделе Bitrix Framework. При этом возможно несовпадение имен групп пользователей Bitrix Framework с именами групп пользователей корпоративной сети. Например, группе пользователей корпоративной сети Techsupport, к которой относятся сотрудники технической поддержки корпоративной сети, может быть поставлена в соответствие группа пользователей Techsupport stuff, созданная в Bitrix Framework. В результате сотрудники службы технической поддержки корпоративной сети смогут выполнять обязанности сотрудников службы технической поддержки Bitrix Framework.

Группы пользователей внутри компании обладают правами на доступ к определенным ресурсам корпоративной сети, а сопоставленные им группы пользователей в Bitrix Framework обладают правами на доступ к ресурсам продукта «1С-Битрикс». Например, группа пользователей Techsupport наделена правами на доступ к почтовому серверу сети, а группа пользователей Bitrix Framework Techsupport stuff обладает правами на доступ к модулю Техническая поддержка.

В соответствии с приведенным выше примером, пользователь, относящийся к группе Techsupport корпоративной сети, при попытке авторизации в системе Bitrix Framework будет добавлен в группу пользователей Techsupport stuff системы Bitrix Framework. После чего в системе автоматически будет заведен аккаунт данного пользователя, на основе данных, хранящихся на корпоративном сервере.

  Пользователь в нескольких группах

Допустима привязка пользователя к одной, двум или более группам. В системе могут быть настроены группы пользователей, для которых не установлено соответствие с группами пользователей в корпоративной сети. Принадлежность пользователей к такой группе задается вручную администратором системы. Все изменения аккаунта пользователя на корпоративном сервере будут автоматически учтены в аккаунте пользователя в системе Bitrix Framework во время его следующей авторизации. При этом изменения затронут пользователей только тех групп, для которых задано соответствие группам пользователей корпоративной сети.

  Итак:

Модуль AD/LDAP позволяет:

  • интегрировать проекты, созданные на Bitrix Framework в корпоративную сеть;
  • [ds]Импортировать пользователей[/ds][di]Для добавления целого списка пользователей в систему служит специальная страница административного раздела Импорт пользователей (Настройки > Пользователи > Импорт пользователей). Для импорта пользователей из Active Directory / LDAP выполните следующее:

    Подробнее ...[/di] корпоративной сети в продукты Bitrix Framework;
  • настроить соответствие групп пользователей корпоративной сети и групп пользователей Bitrix Framework;
  • автоматически создавать аккаунт пользователя после его регистрации исходя из таблицы соответствий (данные для создания аккаунта запрашиваются из базы данных корпоративного сервера);
  • централизованно управлять изменениями аккаунтами пользователей системы через корпоративный сервер.

Модуль AD/LDAP интеграция так же позволяет использовать [dw]NTLM авторизацию[/dw][di]NTLM (NT LAN Manager) - протокол сетевой аутентификации, разработанным фирмой Microsoft для Windows NT[/di]. Чтобы ею воспользоваться, нужен веб-сервер IIS или Apache с модулем mod_ntlm или mod_auth_sspi.



Схема работы модуля

Как это работает

Общая схема работы модуля описывается следующей последовательностью действий:

  1. Пользователь проходит авторизацию в системе Bitrix Framework (вводится логин и пароль, используемые пользователем для авторизации в корпоративной сети);
  2. Система обращается к указанному в настройках AD/LDAP серверу и проверяет наличие пользователя с указанными данными (паролем и логином) в базе пользователей на корпоративном сервере:
    • если пользователя с такими данными в корпоративной сети [dw]не существует[/dw][di]Если пользователь Bitrix Framework, принадлежащий группе (одной или нескольким) из таблицы соответствий, будет удален из списка пользователей корпоративной сети, то при попытке получить доступ к ресурсам Bitrix Framework он получит отказ в авторизации. При этом аккаунт этого пользователя будет сохранен в системе Bitrix Framework.

      Чтобы разрешить такому пользователю авторизацию в продуктах «1С-Битрикс» через стандартный интерфейс, в настройках данного пользователя в административном разделе продукта нужно установить значение поля со списком Тип авторизации равным Внутренняя проверка и обновить регистрационную информацию (логин и пароль). [/di], то система запрещает вход;
    • если пользователь существует, то определяется [dw]группа пользователей корпоративной сети[/dw][di]если в AD дереве существует N-доменов (например, соответствуют подразделениям компании OD1, OD2…) и в этих доменах есть группы с одинаковыми именами, то в Таблице соответствий эти группы будут отображены N-раз. Для избегания путаницы в настройках AD/LDAP сервера можно поменять Атрибут названия группы, указав, например, DistinguishedName (DN). В итоге вместо названий групп будут отображены DN групп.[/di], к которой он относится, и сопоставленная ей группа пользователей Bitrix Framework (с помощью таблицы соответствий).
  3. Далее проверяется наличие [dw]аккаунта пользователя[/dw][di]Если при выгрузке пользователей из AD оказывается, что логин выгружаемого пользователя совпадает с логином пользователя, созданного в Bitrix Framework уже ранее, то такой пользователь будет создан в системе, в добавок к уже существующему. Логины будут совпадать, но его привязка будет конкретно к AD.
    В таком случае (совпадение логинов) при авторизации сначала будет произведена попытка авторизовать пользователя через AD (используя логин и пароль, которые привязаны к AD) и только если она оказалась безуспешной (ошибка при авторизации), то будет уже произведена попытка авторизации под внутренним пользователем (логин и пароль пользователя, созданного вручную в системе).[/di] в системе:
    • если аккаунт не найден, то система получает данные о пользователе из базы данных корпоративного сервера и создает его аккаунт;
    • если аккаунт в системе уже был создан, т. е. пользователь уже авторизовался в Bitrix Framework, то система проверяет, были ли выполнены какие-либо изменения в профиле пользователя на корпоративном сервере. Если да, то соответствующие изменения выполняются и с профилем пользователя в Bitrix Framework.
  4. Пользователь получает разрешение на доступ к ресурсам Bitrix Framework и авторизуется. Права пользователя определяются в зависимости от настроек группы пользователей Bitrix Framework, к которой он был приписан.

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

Настройки

Перейдите на страницу Настройки модуля (Настройки > Настройки продукта > Настройки модулей > AD/LDAP интеграция).

Нажмите на рисунок, чтобы увеличить

Далее опишем поля, заполнение которых может вызвать затруднения.

  • Если используется NTLM авторизация, то установите флажок в поле Использовать NTLM авторизацию.

    Примечание: Для работы NTLM авторизации требуется выполнить настройку соответствующих [ds]модулей веб-сервера[/ds][di]Поддержка NTLM-авторизации по умолчанию включена в дистрибутив продукта. Если вы не используете рекомендуемый компанией "1С-Битрикс" пакет, то вам необходимо сделать следующее:

    Подробнее ...[/di], а также задать [ds]домены для NTLM авторизации[/ds][di]Создание записи об AD/LDAP сервере выполняется в административном разделе Bitrix Framework, в которой указываются все необходимые сведения о сервере и соответствия групп пользователей.

    Подробнее ...[/di] в настройках AD-серверов на сайте.

  • Если в силу каких-то причин для хранения логина пользователя вы используете другую переменную массива $_SERVER, то укажите эту переменную в поле Имя переменной PHP, в которой хранится логин пользователя NTLM. Учтите, что большинство модулей продукта используют именно переменную [dw]REMOTE_USER[/dw][di]В REMOTE_USER содержится значение логин или домен\логин. Вся аутентификация происходит на уровне веб-сервера без каких либо паролей, хешей и т.д.[/di].
  • Если в локальной сети несколько LDAP-серверов, то в поле Сервер домена по умолчанию укажите тот, который используется для NTLM-авторизации.
  • Снятый флажок на опции Создавать новых пользователей при первой удачной авторизации при использовании протокола AD позволяет ограничить пользователей, имеющих доступ к сайту. Например, создается пять учетных записей, снимется флажок с опции и вход в систему имеют [dw]только указанные пять пользователей[/dw][di]Однако никто не мешает администратору создать учётные записи вне LDAP. Такие пользователи будет иметь доступ и суммарное число пользователей будет больше 5.[/di].
  • С помощью опции Создавать пользователя, если пользователь с таким логином уже существует указывается, будет ли создаваться второй пользователь, если при импорте обнаруживается пользователь с таким логином.
  • Также, при необходимости, настройте переадресацию NTLM авторизации на 8890 и 8891 порты.

Примечание: необходимо помнить, что компьютер, на котором размещен сервер Apache, должен быть включен в домен Windows.

Примечание: в некоторых случаях при работе с Internet Explorer старых версий возможны ситуации сбоя в работе продуктов "1С-Битрикс". Проблема выражается в сбое в работе кнопок в административной и публичных частях. Для решения этой проблемы добавьте в корневой файл .htaccess строку
SSPIPerRequestAuth On

Документация по теме:


Принадлежность пользователей к подразделениям на AD-сервере

  Кто есть кто в иерархии компании

Необходимо специальным образом определить на AD-сервере принадлежность пользователей к подразделениям, иерархию подразделений компании, а также начальников подразделений. При импорте пользователей в продукты «1С-Битрикс», эта структура также может быть импортирована, при этом пользователям сразу назначаются нужные подразделения. Также, что более просто, можно задать одно фиксированное подразделение всем пользователям из AD.

Для задания структуры компании в AD используются всего 2 специальных [dw]атрибута пользователя[/dw][di]Свойства, в которых передаются начальник подразделения и наименование подразделения, определяются в настройках сервера на закладке Настройка полей. По умолчанию это department и manager.[/di]:

  • department - символьное наименование подразделения, к которому относится данный пользователь.
  • manager - DN (Distinguished name, уникальный идентификатор в AD) пользователя, являющегося начальником данного пользователя.

На основании этой связи и строится иерархия компании:

  • Если начальник находится в другом подразделении, то это определяет связь между подразделениями: подразделение manager'а считается вышестоящим над данным. При этом текущий пользователь будет считаться начальником своего подразделения.
  • Если manager - в том же подразделении, то никаких дополнительных действий предпринято не будет, и это единственный способ явно указать, что пользователь сам не является начальником подразделения. Из чего можно сделать вывод, что для всех подчиненных в подразделении должен быть задан начальник из него же.
  • Если у пользователя не задано подразделение, но задан начальник, он считается принадлежащим тому же подразделению, что и начальник. Для начальника будут также действовать все те же правила и умолчания, так что такие "умолчательные" определения могут выстроиться в последовательную цепочку.
  • Если задано подразделение, но нет начальника - данное подразделение попадает в корень структуры компании, и пользователь сам будет его начальником.
  • Если же у пользователя нет ни подразделения, ни начальника, ему будет присвоено подразделение по умолчанию, задаваемое в настройках модуля.

  Пример

Допустим, у нас существует следующая структура:

- Отдел 1
-- Начальник 1
-- Сотрудник 1
-- Отдел 2
   -- Начальник 2
   -- Сотрудник 2

Чтобы построилась такая иерархия, нужно чтобы у всех сотрудников корректно были заданы подразделения, в которых они работают (в атрибуте department), а также, чтобы у обоих сотрудников в поле manager был указан их непосредственный начальник (Начальник 1 и Начальник 2 соответственно). И самый важный момент, у Начальник 2 в атрибуте manager должен быть указан Начальник 1.


Регистрация сервера

Запись о сервере

Создание записи об AD/LDAP сервере выполняется в административном разделе Bitrix Framework, в которой указываются все необходимые сведения о сервере и соответствия групп пользователей.

Примечание: с версии 23.100.0 модуля AD/LDAP интеграция пароль администратора AD больше не отображается на странице редактирования сервера.

Каждая запись регламентирует доступ к одному корню дерева каталогов. Если сведения о группах пользователей корпоративной сети хранятся в базах данных нескольких серверов или в нескольких базах данных одного сервера, то следует создать несколько записей, регламентирующих доступ к ним.

  1. Перейдите на страницу Active Directory/LDAP серверы (Настройки > AD/LDAP) и нажмите кнопку Добавить, расположенную на контекстной панели. Откроется форма создания новой записи.

  2. На закладке Сервер указываются [dw]сведения[/dw][di]Данные для заполнения полей необходимо запросить у системного администратора.[/di] о корпоративном сервере и параметры доступа к базе данных групп пользователей, расположенной на нем. Опишем поля, заполнение которых может вызвать затруднения.

    Форма создания новой записи об AD/LDAP сервере

    • Домен для NTLM авторизации - используется для определения нужного AD/LDAP сервера при авторизации в виде домен\логин (задается на латинице), а также при автоматической NTLM авторизации (должно соответствовать домену организации, включая регистр).

      Такой вид будет указывать на конкретную запись, в соответствии с которой должен быть осуществлен поиск аккаунта пользователя на корпоративном сервере.

      Если имеется несколько LDAP-серверов, то использование этого поля становится необходимым, так как на разных серверах могут быть пользователи с одинаковым именем. В этом случае с помощью [dw]мнемонического[/dw][di]Мнемоническая запись/код – это последовательность символов (букв, цифр, специальных символов и др.), облегчающих запоминание необходимой информации. Мнемоники бывают цифровыми и символьными.[/di] имени будет определяться запись, указывающая на сервер и корень дерева каталогов, в котором следует искать аккаунт, используемый для его авторизации в Bitrix Framework.

      Если в настройках нескольких серверов указан один и тот же домен, то с версии 15.0 обращение происходит не к первому подходящему, а перебираются все подходящие сервера.

    • Сервер:порт - адрес и порт корпоративного сервера с базой данных групп пользователей (389 порт является стандартным для обращения к LDAP серверу).
    • Логин пользователя с правами доступа на чтение к дереву - укажите логин для выполнения административного входа на сервер в формате логин@домен или домен\логин.
    • Кнопка Проверить - для проверки введенных выше данных и установления пробного соединения с сервером. Если проверка [dw]произведена успешно[/dw][di]Сообщение об успешном соединении с сервером[/di], то сервер возвратит список доступных корней деревьев. Если же при проверке произошла ошибка, то вверху страницы будет выведена надпись красного цвета с указанием причины ошибки.
    • Корень дерева - укажите корень дерева каталогов, в котором будет осуществляться поиск бюджетов (учётных данных) авторизуемых пользователей.
    • Максимальное количество объектов, возвращаемых при одном поиске - укажите [dw]максимальное количество записей[/dw][di]Поле доступно только для php версии 5.4 и выше.[/di], получаемых за один запрос.
  3. На закладке Настройка полей указываются значения параметров для схемы данных бюджетов пользователей, хранимых на сервере. [dw]Стандартные значения параметров[/dw][di]Если стандартные значения данных параметров были изменены на корпоративном сервере, то соответствующие изменения нужно внести в значения параметров в форме.[/di] как для LDAP, так и для AD сервера подставляются в поля формы автоматически. Выбор типа сервера осуществляется путем нажатия [dw]ссылки с соответствующим названием[/dw][di][/di] в заглавии раздела.

    Если вам необходимо добавить поля в группу [dw]Соответствие полей пользователя и атрибутов AD (LDAP)[/dw][di][/di], то воспользуйтесь ссылкой [добавить…]. В настройках LDAP-сервера необходимо указывать минимально необходимые поля, такие как Активность, Имя, Фамилия, E-Mail адрес, т.е. поля которые необходимо постоянно переносить (синхронизировать из AD). Остальные поля можно настроить при импорте в форме [ds]импорта пользователей[/ds][di]Для импорта пользователей из Active Directory / LDAP выполните следующее...

    Подробнее ...[/di].

    Каждое из полей, добавленное в эту группу будет проверяться на изменения при синхронизации и, при несоответствии, изменяться на стороне продукта "1С-Битрикс". То есть, если пользователь изменил какое-либо поле в своем профиле, то при последующей синхронизации полю будет возвращено прежнее значение.

    Поэтому рекомендуется при первичном импорте пользователей добавить максимально возможное число полей, а после импорта, если используется периодическая синхронизация, удалить поля, которые не нуждаются в периодической проверке.

    Отделы и структура компании

    Эта секция отображается только при редактировании уже созданного подключения и если установлен модуль Intranet. Она позволяет настроить параметры импорта структуры компании в Bitrix Framework. Поясним некоторые поля.

    Значения параметров для LDAP сервера

    • Укажите Подразделение, внутрь которого будет импортирована структура компании с AD-сервера. Указание фиксированного места для импорта очень полезно, если в компании несколько филиалов, каждый со своим сервером. Тогда в структуре компании можно вручную создать подразделение для каждого филиала, и в настройках каждого сервера выбрать свое.

      Если выбрать нет, то структура будет импортироваться в корень дерева подразделений.

      Если при импорте имена подразделений в AD совпадут с существующими в системе - будут использованы существующие подразделения.

    • Используйте опцию Импортировать в структуру компании пользователей, у которых не указано подразделение для того, чтобы пользователи, у которых не указано подразделение в Active Directory, также импортировались в структуру Bitrix Framework. Импортироваться они будут в подразделение указанное в поле Название подразделения по умолчанию .
  4. На закладке Группы осуществляется загрузка групп пользователей корпоративной сети и Bitrix Framework в таблицу соответствий и задание соответствий этих групп.
    • Чтобы добавить названия групп пользователей в таблицу, нужно нажать кнопку [dw]Обновить список групп[/dw][di]Настройка соответствий групп[/di]. После обновления списка групп пользователей в данном разделе отобразится таблица соответствий:

    Настройка соответствий групп

    • Соответствие задаётся выбором в поле Группа на удаленном сервере групп пользователей корпоративной сети и выбором соответсвующей группы пользователей Bitrix Framework в поле Локальная группа. Таким образом, в одной строке таблице будет размещена группа пользователей корпоративной сети и поставленная ей в соответствие группа пользователей Bitrix Framework.
    • Для удаления строки соответствия из таблицы, установите [dw]флажок в поле[/dw][di]Флажки доступны при редактировании сохраненных ранее полей. При создании нового подключения, как на иллюстрации, поля еще не сохранены и поэтому флажки недоступны.[/di] Удалить и нажать кнопку Применить.
    • В поле Отмеченные ниже группы не участвуют в импорте пользователей укажите группы, которые не должны участвовать в импорте, даже если они выбраны в качестве источника в колонке Группа на удаленном сервере.

      Если необходимо пользователей из одной и той же группы на сервере прописать в две разные локальные группы системы Bitrix Framework, то выберите эту группу в колонке Группа на удаленном сервере несколько раз и для каждой строки назначьте свои группы в колонке Локальная группа.

      Если в качестве Локальной группы в двух строках выбрана одна из имеющихся групп, а в Группах на удаленном севере – две разных, то в локальную группу добавятся только те пользователи, которые есть в обеих группах.

  5. Периодическая синхронизация баз настраивается на закладке Синхронизация:

    Настройка синхронизации

    • Для активации полей [dw]настройки синхронизации[/dw][di]При включенной автоматической синхронизации новые пользователи могут быть добавлены только с версии 15.0. В более ранних версиях обновляются только профайлы существующих пользователей. Новые сотрудники в этих версиях добавляются через импорт вручную или после их самостоятельной авторизации в Bitrix Framework.[/di] поставьте флажок в поле Выполнять периодическую полную синхронизацию.
    • Значение в поле Период, каждые зависит от частоты, с которой изменяются профили сотрудников в вашей компании.
    • Заполните поле LDAP атрибут с датой изменения для ведения лога изменений. (Или оставьте по умолчанию.)

      Для периодической синхронизации удобно использовать Агенты - технология, позволяющая запускать необходимые функции во время обычной жизни системы без использования каких-либо внешних программ. Подробней об использовании агентов смотрите в [comp include_agent_list]пользовательской документации[/comp] продукта.

  6. После сохранения запись будет добавлена в список на странице Active Directory/LDAP серверы.

    Для изменения или удаления записи нужно выбрать соответствующий пункт в меню действий выбранной записи.

Документация по теме:


NTLM авторизация

NTLM авторизация позволяет входить на сайт/портал без ввода логина/пароля (используя данные авторизации Windows на AD сервере).

Настройка NTLM авторизации со стороны продукта

Пошаговая настройка

  1. Зарегистрируйте в системе [ds]AD/LDAP-сервер[/ds][di]Создание записи об AD/LDAP сервере выполняется в административном разделе Bitrix Framework, в которой указываются все необходимые сведения о сервере и соответствия групп пользователей.

    Подробнее ...[/di].
  2. При регистрации сервера обязательно укажите значение в поле [dw]Домен для NTLM авторизации[/dw][di]Это поле очень полезно, даже когда у вас нет домена, но есть несколько LDAP-серверов. Поскольку на разных LDAP-серверах могут быть пользователи с одинаковым именем, то не понятно, на каком из серверов пользователь будет авторизован. А если указать, например, office\ivan то все вопросы сразу отпадают.[/di]. Он должен полностью (включая регистр) совпадать с названием домена.

  3. В настройках модуля отметьте опцию [dw]Использовать NTLM авторизацию[/dw][di][/di]. Если в силу каких-то причин для хранения логина пользователя вы используете другую, не REMOTE_USER, переменную массива $_SERVER, то в поле Имя переменной PHP, в которой хранится логин пользователя NTLM измените имя переменной на нужное. Помните при этом, что большинство модулей продукта используют именно переменную [dw]REMOTE_USER[/dw][di]В поле REMOTE_USER содержится значение логин или домен\логин. Вся аутентификация происходит на уровне веб-сервера, без каких либо паролей, хешей и т.д.[/di].

    Если в локальной сети несколько LDAP-серверов, то в поле Сервер домена по умолчанию выберите тот, который используется для NTLM-авторизации. Даже если LDAP-сервер один, то все равно желательно указать значение этого поля, чтобы сотрудникам не требовалось вводить домен при первом входе в Bitrix Framework.

  4. Настройте на NTLM авторизацию на сервере [ds]Apache[/ds][di]Поддержка NTLM-авторизации по умолчанию включена в дистрибутив продукта. Если вы не используете рекомендуемый компанией "1С-Битрикс" пакет, то вам необходимо сделать следующее...

    Подробнее ...[/di].
  5. Произведите настройку [ds]браузеров сотрудников[/ds][di]Internet Explorer. Для успешной NTLM авторизации нужно, чтобы веб-сервер находился в зоне Local Intranet...

    Подробнее ...[/di].

Документация по теме:


Настройка NTLM-авторизации для Apache

Поддержка NTLM-авторизации по умолчанию включена в дистрибутив продукта. Для этого рекомендуется использовать виртуальную машину VMBitrix, в ней настройка окружения для NTLM-авторизации выполняется через меню.
Если вы не используете рекомендуемый компанией "1С-Битрикс" пакет, то вам необходимо в настройках вашего окружения сделать следующее:

  Для Centos 6

  1. Загрузите модуль mod_auth_sspi и установите его:
    LoadModule sspi_auth_module modules/mod_auth_sspi.so
  2. В файле httpd.conf добавьте строку:
    LoadModule sspi_auth_module modules/mod_auth_sspi.so.
  3. В файле .htaccess добавьте следующие строки:
    AuthName "My Intranet"
    AuthType SSPI
    SSPIAuth On
    SSPIPackage NTLM
    SSPIDomain MYDOMAIN
    SSPIPerRequestAuth On 
    SSPIAuthoritative On
    SSPIOfferBasic On
    Require valid-user
    

    При использовании стандартного пакета Битрикс: Веб-окружение указанные строчки в этом файле необходимо не создавать, а раскомментировать.

  Для Centos 7

  1. Загрузите модуль auth_ntlm_winbind_module и установите его:
    
      LoadModule auth_ntlm_winbind_module modules/mod_auth_ntlm_winbind.so
    
  2. Для SSL обязательно добавьте:
    
      LoadModule ssl_module modules/mod_ssl.so
      # httpd 2.4
      LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

  Для всех видов установки

  1. В строке SSPIDomain MYDOMAIN файла .htaccess смените MYDOMAIN на имя вашего домена.
  2. Сохраните внесенные изменения.


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

  Как настроить NTLM для Linux вне BitrixVM

Если вы не используете Виртуальную машину BitrixVM или Linux (BitrixEnv), то вам необходимо настроить ваше окружение для работы с модулем AD/LDAP "1С-Битрикс: Управление сайтом" или "Битрикс24 в коробке". Для этого вам нужно выполнить действия:

  1. Добавить хост в домен. (Описания не будет, если вы работаете на собственном окружении, вы знаете как это сделать.)
  2. Задать [ds]настройки сервера[/ds][di]Поддержка NTLM-авторизации по умолчанию включена в дистрибутив продукта. Если вы не используете рекомендуемый компанией "1С-Битрикс" пакет, то вам необходимо сделать следующее...

    Подробнее ...[/di] Apache под выбранный сайт.
  3. Произвести настройки NTLM модуля вашего окружения.
  4. Произвести настройки "1С-Битрикс: Управление сайтом".

Если хост уже находится в домене, и на нем находится несколько сайтов, то создайте настройки Apache сервера для сайтов, у которых не включена авторизация в домене.

Важно:
  1. Нельзя подключить разные сайты к разным доменам, так как хост единовременно находится только в одном домене.
  2. Если на сайте не установлен модуль LDAP, такой сайт нельзя авторизовать через NTLM.

  Настройка NTLM авторизации

Для настройки NTLM необходимо задать в настройках вашего окружения следующую информацию:

Что нужно сделать
Netbios domain name (TEST) Netbios имя домена (по стандарту не может быть больше 15 символов);
Full domain name (TEST.LOCAL) FQDN имя для домена (будет использовано как realm в настройках kerberos);
Domain password server FQDN имя или IP адрес сервера авторизации;
Domain admin user name пользователь в AD, обладающий правами добавления машин в AD;
Domain admin user password пароль пользователя;
Enter site name (default) для какого сайта необходимо создать настройки у apache.

После того как все опции введены, запустите команду по настройке системы. Выполнение может занять некоторое время. После успешного завершения настроек должна появится информация о доменных настройках хоста.

Теперь переходите к [ds]настройкам NTLM[/ds][di]Пошаговая настройка. Зарегистрируйте в системе AD/LDAP-сервер...

Подробнее ...[/di] со стороны "1С-Битрикс: Управление сайтом".


NTLM-авторизация в стороннем окружении

Как настроить NTLM-авторизацию в стороннем окружении

Поддержка NTLM-авторизации по умолчанию [dw]включена в дистрибутив продукта[/dw][di]Во всех лицензиях Битрикс24 в коробке и в лицензии Энтерпрайз продукта 1С-Битрикс: Управление сайтом.[/di]. Мы рекомендуем использовать виртуальную машину BitrixVM, в ней настройка окружения для NTLM-авторизации выполняется просто через специальный [dw]пункт меню[/dw][di]В меню BitrixVM пункт
6. Управление сайтами (Configure pool sites) > 7. Настройка NTLM-авторизации на всех сайтах (Configure NTLM auth for all sites).

Подробнее в курсе Виртуальная машина BitrixVM.[/di].

Если же вы по каким-то причинам не используете BitrixVM, то для корректной работы NTLM-авторизации в вашем окружении понадобится выполнить настройки аналогичные схеме работы в виртуальной машине.

Внимание! Для поддержки механизма NTLM-авторизации продуктами «1С-Битрикс: Управление сайтом» и «Битрикс24 в коробке» необходим модуль AD/LDAP интеграция версии 11.5.0 и выше.

  Описание механизма работы

Внутренний механизм работы NTLM в виртуальной машине выглядит так:

  • В виртуальной машине Nginx слушает порты 80/443 на всех интерфейсах, Apache - localhost: 8888. Это основной маршрут для работы с проектом (без NTLM-авторизации);
  • Apache также слушает на внешнем интерфейсе порты 8090 и 8091. Этот хост может направлять на основную папку проекта или на подготовленную, с симлинками ядра. Для этого location в Apache настроена NTLM-авторизация;
  • В настройках модуля LDAP должна быть включена опция [dw]Включить переадресацию NTLM авторизации[/dw][di]Перейдите на страницу Настройки модуля (Настройки > Настройки продукта > Настройки модулей > AD/LDAP интеграция).

    Подробнее...[/di].

Cетевые взаимодействия схематично:

После включения и настройки механизм NTLM-авторизации начинает работать следующим образом:

  1. Неавторизованный посетитель приходит на проект и попадает на 80 порт для http или 443 порт для https;
  2. Продукт обработчиком события перенаправляет его на открытый порт Apache (8090 для http или 8091 для https);
  3. Apache выполняет NTLM-авторизацию пользователя, создается сессия;
  4. Ядро продукта перенаправляет пользователя назад на 80 или 443 порт (для http и https соответственно);
  5. Следующие переходы по сайту пользователь выполняет в обычном режиме, пока не истечет сессия.

Таким образом все переадресации берет на себя ядро продукта.

В спойлерах ниже можно посмотреть пример шаблонов для настройки location в Apache, смотрящего наружу. Или скачайте файлы примера в виде архива.

mod_ntlm.conf.j2

ntlm_site.conf.j2

Подробно настройки со стороны административной части продукта описаны в уроках:



Настройка браузеров сотрудников

  Internet Explorer

Для успешной NTLM авторизации нужно, чтобы веб-сервер находился в зоне Local Intranet.

Нажмите на рисунок, чтобы увеличить

  Mozilla Firefox

Добавить веб-сервер к списку доверенных URI для автоматической NTLM-авторизации (через параметр network.automatic-ntlm-auth.trusted-uris на странице about:config)



Проблемы и решения

Частые проблемы и как их решить

После изменения профиля AD пользователя данные возвращаются в исходное значение

Профиль пользователей, авторизующихся через Active Directory, при каждом входе синхронизируется с сервером AD, при этом все локально сделанные настройки перезаписываются данными, указанными на сервере. Изменить такое поведение можно:

  • либо установив для данного пользователя локальную авторизацию (для этого нужно вручную задать ему тот же пароль, что и в AD и изменить Тип авторизации на Внутренняя проверка на [comp include_user_edit]странице редактирования пользователя[/comp]). Тогда авторизация пользователя будет проходить не через AD, а локально;
  • либо внести изменения данных пользователя не на сайте, а в AD. Тогда на сайте они тоже автоматически изменятся при синхронизации с сервером;
  • либо уменьшить количество полей, по которым осуществляется синхронизация, в настройках AD сервера на сайте (Настройки > AD/LDAP, закладка [dw]Настройка полей[/dw][di][/di]). В этом случае можно при [ds]импорте пользователей из AD/LDAP[/ds][di]Для импорта пользователей из Active Directory / LDAP выполните следующее...

    Подробнее ...[/di](Настройки > Пользователи > Импорт пользователей), например, указать нужные нам поля, а потом в настройках AD сервера на сайте удалить все поля. Тогда у пользователя будут первоначально заданы все необходимые данные, и впоследствии, он сможет менять их.

Для AD-пользователей не работает опция "Запомнить меня на этом компьютере"

Запомнить пароль невозможно, т.к. при авторизации AD-пользователей система обращается к указанному в настройках AD/LDAP серверу и проверяет наличие пользователя с указанными логином и паролем в базе пользователей на корпоративном сервере и дальше уже происходит авторизация (см. урок [ds]Схема работы модуля[/ds][di]Общая схема работы модуля описывается следующей последовательностью действий:
1. Пользователь проходит авторизацию в системе Bitrix Framework (вводится логин и пароль, используемые пользователем для авторизации в корпоративной сети)...

Подробнее ...[/di]).

Из соображений безопасности сайт не сохраняет у себя логин и пароль.

Доступ к разделу Extranet без NTLM

Чтобы корректно настроить доступ к папке extranet без авторизации через NTLM, необходимо:

  1. В файле /.htaccess добавить строки:
    AuthName "My Intranet"
    AuthType SSPI
    SSPIAuth On
    SSPIPackage NTLM
    SSPIDomain MYDOMAIN
    SSPIPerRequestAuth On
    SSPIAuthoritative On
    SSPIOfferBasic On
    Require valid-user
      
  2. В файлах /extranet/.htaccess и /bitrix/.htaccess добавить строку:
    Satisfy any
      
  3. В /bitrix/admin/.htaccess добавить:
    Satisfy all
      

В результате NTLM авторизация будет работать для всех папок в публичной части сайта, кроме extranet, а также в административной части сайта.

Дополнительно



Highload-блоки

Модуль Highload-блоки работает с произвольными наборами данных в условиях высоких нагрузок.

Highload-блоки

Экономят время и деньги для сайтов с высокой посещаемостью

Модуль позволяет создавать списки для хранения произвольных данных (новости, вакансии и другое). Каждый список хранится в отдельной таблице базы данных (БД) и использует собственные индексы.

Это быстрые справочники, без поддержки иерархии, с ограниченной поддержкой свойств. Они могут обращаться к БД и работать с большими объёмами данных.

В поставку модуля включено два компонента, отображающих информацию из Highload-блоков: [comp include_highloadblock_view]Запись детально[/comp] (bitrix:highloadblock.view) и [comp include_highloadblock_list]Список записей[/comp] (bitrix:highloadblock.list).

Кроме того, с появлением модуля Highload-блоки для элементов модуля Информационные блоки доступен новый тип свойства Справочник, где в качестве справочника используется некоторый Highload-блок.

В каких случаях удобно использовать Highload-блоки:

  • очень большой объем данных и нагрузки, с которым не могут [dw]справиться инфоблоки[/dw][di]Если в создаваемом справочнике будет создано менее 100 элементов, то выигрыш в использовании Highload-блока перед свойством инфоблока будет крайне незначительным.[/di];
  • если нужна некая структура для хранения служебных данных, которая не будет редактироваться контент-менеджерами;

Документация по теме:


Настройка Highload-блока

  Настройка

Настройка Highload-блоков выполняется в административном интерфейсе и заключается в следующем:

  • создается Highload-блок и определяется таблица, в которой будут храниться его данные;
  • настраиваются поля Highload-блока, которые являются пользовательскими свойствами ядра;
  • добавляется необходимое число записей в Highload-блок.

Рассмотрим процесс работы с Highload-блоками на примере создания справочника рецептов тортов.

  Создание

Перейдите на страницу Контент > Highload-блоки и нажмите кнопку Добавить Highload-блок. Откроется форма:

Заполните поля на закладке Highload-блок:

  • В поле Название сущности задайте название Highload-блока. Название должно начинаться с заглавной буквы и состоять только из латинских букв и цифр.
  • В поле Название таблицы в БД укажите название таблицы, в которой будет храниться новый Highload-блок. Название таблицы должно состоять только из строчных латинских букв, цифр и знака подчеркивания.
  • Укажите удобные для вас языкозависимые названия Highload-блока.

На закладке Права доступа настройте доступ для пользователей и групп пользователей к Highload-блоку. Выбор необходимых групп или пользователей осуществляется по ссылке Добавить:

Нажмите на рисунок, чтобы увеличить

Примечание: закладка Права доступа доступна с версии 17.0.0 модуля Highload-блоки.

Сохраните новый Highload-блок.

  Создание полей сущности

Для добавления полей в Highload-блок перейдите на страницу со списком его полей одним из способов:

  • со страницы со списком Highload-блоков выбрать в меню действий необходимого блока пункт [dw]Список полей[/dw][di]highload2.png[/di];
  • в форме редактирования нажать на [dw]ссылку с количеством полей[/dw][di]highload1.png[/di] сущности.

В любом случае откроется страница [comp include_userfield_admin]Пользовательские поля[/comp] с установленным фильтром по объекту HLBLOCK_<ID_блока>, где <ID_блока> - это идентификатор Highload-блока, для которого необходимо добавить поля. Тип поля выбирается из [dw]выпадающего списка[/dw][di]highload3.png[/di].

С помощью расположенной на контекстной панели кнопки Добавить создайте необходимые поля для Highload-блока.

Примечание: процесс добавления пользовательского поля описан в уроке Пример добавления поля.

Для нашего примера добавим следующие поля: Название торта (UF_NAME) типа Строка, Фото (UF_PHOTO) типа Файл, Время приготовления (UF_TIME) типа Список и Рецепт (UF_RECIPE) типа Файл:

  Создание записей сущности

Чтобы добавить запись в Highload-блок, перейдите на страницу со списком его записей (Контент > Highload-блоки > [языковое_название_Highload-блока], в нашем примере это Рецепты тортов) и нажмите кнопку Добавить запись. Откроется форма с набором созданных полей Highload-блока:

Заполните поля и сохраните запись. Аналогичным образом добавьте необходимое количество записей.

Примечание: перейти к списку записей Highload-блока также можно из формы его редактирования (с помощью ссылки с количеством записей) или со страницы со списком Highload-блоков (используя пункт Список записей в меню действий).



Пример работы со свойством типа "Справочник"

Свойство типа Справочник доступно для элементов инфоблоков, начиная с версии 14.0.1 модуля Highload-блоки. Рассмотрим пример работы с этим свойством.

Допустим, что у нас имеется мебельный каталог Продукция. Добавим в него свойство типа Справочник. Для этого в форме редактирования инфоблока Продукция переходим на закладку Свойства:

Вводим название нового свойства, например, Оплата и доставка, выбираем тип свойства Справочник, делаем свойство множественным, задаем символьный код и нажимаем кнопку […] для перехода к детальному редактированию свойства.

В секции Дополнительные настройки с помощью поля Выберите справочник можно указать некоторый существующий Highload-блок или создать новый, выбрав значение Создать новый справочник.

Мы создадим новый справочник, поэтому выбираем Создать новый справочник. В поле Название справочника задаём его название латинскими буквами, а чуть ниже задаём его элементы.

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

  • Название – указывается название элемента справочника;
  • Сортировка – задавая сортировку, вы сможете регулировать в какой последовательности выводить элементы;
  • Внешний код – служит для создания связей и выгрузки в 1С (заполнять необязательно, оно будет автоматически сгенерировано в момент сохранения свойства);
  • Изображение – картинка записи справочника, которая будет показана в публичном разделе (кнопка Обзор... служит для выбора файла);
  • Ссылка – можно ввести ссылку на любую страницу, которая откроется при клике на элемент;
  • По умолчанию – может быть выбрано только одно значение и запись, для которой отмечено это поле, всегда будет первой отображаться в публичном разделе;
  • Описание – описание элемента (текст описания отображается в публичном разделе, если не задано изображение для элемента);
  • Полное описание – полное описание элемента, выводится в публичном разделе в качестве всплывающей подсказки.

Примечание: Чтобы элементы справочника показывались компонентом Бренды, для элемента обязательно должно быть заполнено хотя бы одно из полей: Описание и/или Изображение.

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

Сохраняем товар. Теперь необходимо перейти к настройкам компонента, с помощью которого публикуется каталог Продукция:

Включаем использование компонента брендов и выбираем созданное нами свойство Оплата и доставка типа Справочник. Сохраняем настройки и на детальной странице товара видим указанные нами бренды (записи справочника):

Внешний вид каждого бренда зависит от того, какие поля записи справочника заполнены при создании (см. выше).

В дальнейшем вы можете добавлять новые записи справочника как через свойства инфоблока, так и через интерфейс Highload-блоков.


Два инструмента для Highload-блоков: импорт и экспорт

Экономьте ваше время с инструментами импорта и экспорта. Импорт предназначен для пополнения Highload-блоков данными из внешнего источника, а экспорт - для выгрузки и использования информации на другом проекте.

Примечание: экспорт и импорт доступен, если версия модуля не ниже 17.0.1.

Документация по теме:

Экспорт Highload-блока за 3 шага

Вам нужно перенести информацию из Highload-блока? Используйте инструмент экспорта. Он позволяет всего за 3 простых шага выгрузить данные в файл формата XML.

  Шаг 1. Страница Экспорт Highload-блока

Откройте страницу Экспорт Highload-блока (Контент > Highload-блоки > Экспорт/импорт > Экспорт):

Нажмите на рисунок, чтобы увеличить

  Шаг 2. Параметры выгрузки

Задайте параметры выгрузки:

  • Файл для экспорта – укажите путь относительно корня сайта к файлу и сам XML-файл, в который будет выгружена информация из Highload-блока. Чтобы создать новый файл, укажите произвольное название в формате <имя_файла_экспорта>.xml – этот файл будет создан в процессе выгрузки.
  • Highload-блок – выберите Highload-блок для экспорта.
  • Экспортировать структуру – отметьте опцию для выгрузки структуры Highload-блока: его названия, перечня полей, названия таблицы в базе данных.
  • Экспортировать данные – отметьте для выгрузки записей Highload-блока. Файлы при этом выгружаются в папку с названием <имя_файла_экспорта>_files. Она размещается внутри той же папки, где и файл экспорта.

  Шаг 3. Экспорт

Нажмите кнопку Экспортировать. Начинается экспорт Highload-блока, и над формой отображается ход процесса выгрузки. По окончании на странице выводится соответствующее сообщение:

Итак, скачайте файлы и используйте информацию из Highload-блока по своему усмотрению.



Как подготовить XML-файл

Согласитесь, что XML-файл с данными легче подготовить, если под рукой есть некий образец. Используйте [dw]инструмент экспорта[/dw][di]Нажмите на рисунок, чтобы увеличить
Подробнее...[/di]: выгрузите любой Highload-блок и используйте полученный XML-файл как основу для своего нового файла.

  Файл для добавления данных в существующий Highload-блок


  • Сделайте [dw]экспорт[/dw][di]Нажмите на рисунок, чтобы увеличить
    Подробнее...[/di] данного Highload-блока без выгрузки структуры (не отмечайте опцию Экспортировать структуру).
  • Скачайте XML-файл.
  • Заполните новые значения в тегах <item>...</item>. Например, в файле описание записи выглядит так:
    		<item>
    			<uf_name>Синяя джинса</uf_name>
    			<uf_file>blue_jeans.jpg</uf_file>
    			<uf_link />
    			<uf_sort>1300</uf_sort>
    			<uf_def>0</uf_def>
    			<uf_xml_id>jeans</uf_xml_id>
    		</item>
    
    Тогда в Highload-блоке запись имеет вид:

  • Сохраните файл и используйте его для процедуры импорта.

  Файл для добавления нового Highload-блока


  • Сделайте [dw]экспорт[/dw][di]Нажмите на рисунок, чтобы увеличить
    Подробнее...[/di] любого Highload-блока обязательно вместе со структурой.
  • Скачайте XML-файл и откройте его на редактирование:
  • Задайте названия для сущности и для ее таблицы в базе данных:
    	<hiblock>
    		<name>Myhighloadblock</name>
    		<table_name>b_my_highload_block</table_name>
    	</hiblock>
    
  • Укажите языкозависимые названия:
    	<langs>
    		<lang>
    			<lid>ru</lid>
    			<name>Мой highload-блок</name>
    		</lang>
    	</langs>
    
  • Следующая часть файла - это блок с описанием полей Highload-блока, заключенный в теги <fields>...</fields>. Опишите каждое поле в <field>...</field>:
            <field>
                <field_name>UF_NAME</field_name>
                <user_type_id>string</user_type_id>
                <sort>100</sort>
                <multiple>N</multiple>
                <mandatory>N</mandatory>
                <show_filter>Y</show_filter>
                <show_in_list>Y</show_in_list>
                <edit_in_list>Y</edit_in_list>
                <is_searchable>Y</is_searchable>
                <settings>
                    <size>20</size>
                    <rows>1</rows>
                    <regexp />
                    <min_length>0</min_length>
                    <max_length>0</max_length>
                    <default_value />
                </settings>
                <edit_form_label>
                    <ru>Название торта</ru>
                </edit_form_label>
                <list_column_label>
                    <ru>Название торта</ru>
                </list_column_label>
                <list_filter_label>
                    <ru>Название торта</ru>
                </list_filter_label>
                <error_message>
                    <ru />
                </error_message>
                <help_message>
                    <ru />
                </help_message>
            </field>
    
    Параметры поля должны быть составлены так, как это требуют [dw]пользовательские поля[/dw][di]Нажмите на рисунок, чтобы увеличить[/di].
  • После описания полей идет блок с записями - <items>...</items>. Опишите каждую запись в <item>...</item>. Используйте только те поля, которые вы перечислили в предыдущем блоке <fields>...</fields>. Например:
    		<item>
                <uf_name>Наполеон</uf_name>
            </item>
    
  • Сохраните файл и используйте его для процедуры импорта.

Важно! XML-файл должен быть подготовлен в кодировке сайта.



Как добавить данные в Highload-блок

Инструмент импорта экономит ваше время, когда вы пополняете или обновляете Highload-блок новыми записями. Подготовьте всего лишь [dw]XML-файл с данными[/dw][di]Как подготовить XML-файл см. в предыдущем уроке[/di]. Инструмент быстро загрузит большие объемы информации в Highload-блок.

Видеоурок

   Как добавить данные в Highload-блок

Рассмотрим на примере. Представьте, что у вас есть Highload-блок ColorReference. Он представляет собой справочник цветов и содержит уже некоторое количество записей:

Добавим в него несколько новых записей, а одну запись обновим. Структуру самого Highload-блока изменять не будем.

  • Шаг 1. Подготовьте изображения и файл color.xml с данными:

    <?xml version="1.0" encoding="UTF-8"?>
    <hiblock>
    	<items>
    		<item>
    			<uf_name>Ярко-желтый</uf_name>
    			<uf_file>yellow.png</uf_file>
    			<uf_sort>1500</uf_sort>
    			<uf_xml_id>yellow</uf_xml_id>
    		</item>
    		<item>
    			<uf_name>Серый</uf_name>
    			<uf_file>grey.png</uf_file>
    			<uf_sort>1600</uf_sort>
    			<uf_xml_id>grey</uf_xml_id>
    		</item>
    		<item>
    			<uf_name>Коралловый</uf_name>
    			<uf_file>coral.png</uf_file>
    			<uf_sort>1700</uf_sort>
    			<uf_xml_id>coral</uf_xml_id>
    		</item>
    		<item>
    			<uf_name>Оливковый</uf_name>
    			<uf_file>olive.png</uf_file>
    			<uf_sort>1800</uf_sort>
    			<uf_xml_id>olive</uf_xml_id>
    		</item>
    		<item>
    			<uf_name>Розовый</uf_name>
    			<uf_file>rose.png</uf_file>
    			<uf_sort>1900</uf_sort>
    			<uf_xml_id>rose</uf_xml_id>
    		</item>
    		<item>
    			<uf_name>Лазурный</uf_name>
    			<uf_file>azure.png</uf_file>
    			<uf_sort>2000</uf_sort>
    			<uf_xml_id>azure</uf_xml_id>
    		</item>
    	</items>
    </hiblock>
    

  • Шаг 2. Загрузите на сайт файл color.xml, скажем, в папку upload. Изображения загрузите в каталог /upload/color_files/.

    Примечание: изображения (любые другие файлы) обязательно должны располагаться в папке с названием <имя_файла_экспорта>_files. Она размещается внутри той же папки, где и файл экспорта.

  • Шаг 3. Откройте страницу импорта данных в Highload-блок (Контент > Highload-блоки > Экспорт/импорт > Импорт):

  • Шаг 4. Укажите параметры импорта:
    • В поле Файл для импорта укажите наш файл color.xml.

    • В поле Highload-блок выберите ColorReference.
    • В нашем примере записи Highload-блока считаются уникальными по внешнему коду. Следовательно, в параметре Поле внешнего ключа выберите значение XML_ID.

      Если внешний код из файла совпадет с кодом для существующей записи Highload-блока, то параметры записи будут обновлены в соответствии со значениями в файле.
    • Флаг с опции Импортировать структуру обязательно должен быть снят. Отмечена должна быть только опция Импортировать данные.
    • Опцию Сохранять связи со сторонними сущностями рекомендуется также отметить. Тогда при импорте Highload-блока будут сохранены связи со сторонними сущностями – например, с элементами инфоблока, к которым эти цвета уже привязаны. В противном случае связи будут сброшены.
  • Шаг 5. Запустите процесс импорта. По окончании вы увидите [dw]специальное сообщение[/dw][di][/di].
  • Шаг 6. Оцените результат импорта. Откройте страницу с записями Highload-блока ColorReference.

    Нажмите на рисунок, чтобы увеличить

    Новые записи добавились. При этом обратите внимание, что у нас теперь 2 розовых цвета. Старый розовой цвет не обновился, потому что у него отличается внешний код от кода нового розового цвета. А вот голубой цвет изменил название на лазурный, поскольку у него такой же внешний код, как и у лазурного цвета - azure.

Как видите, дополнить и обновить Highload-блок новыми записями легко и просто с инструментом импорта.



Как загрузить целый Highload-блок

Вы хотите загрузить данные в новый Highload-блок? Сделайте это вместе с инструментом импорта.

  • Шаг 1. [dw]Подготовьте XML-файл[/dw][di]Как подготовить XML-файл см. в предыдущем уроке[/di] c данными и загрузите его на сервер.

    Примечание: если у вас в XML-файле есть описание поля типа Файл, то подготовьте и загрузите также файлы для записей Highload-блока в папку с названием <имя_файла_импорта>_files. Она располагается внутри той же папки, где и файл импорта.

    В качестве примера мы рассмотрим импорт на основе [dw]простого файла[/dw][di]
    <?xml version="1.0" encoding="UTF-8"?>
    <hiblock>
    	<hiblock>
    		<name>Myhighloadblock</name>
    		<table_name>b_my_highload_block</table_name>
    	</hiblock>
    	<langs>
    		<lang>
    			<lid>ru</lid>
    			<name>Мой highload-блок</name>
    		</lang>
    	</langs>
    	<fields>
    		<field>
    			<field_name>UF_NAME</field_name>
    			<user_type_id>string</user_type_id>
    			<sort>100</sort>
    			<multiple>N</multiple>
    			<mandatory>N</mandatory>
    			<show_filter>Y</show_filter>
    			<show_in_list>Y</show_in_list>
    			<edit_in_list>Y</edit_in_list>
    			<is_searchable>Y</is_searchable>
    			<settings>
    				<size>20</size>
    				<rows>1</rows>
    				<regexp />
    				<min_length>0</min_length>
    				<max_length>0</max_length>
    				<default_value />
    			</settings>
    			<edit_form_label>
    				<ru>Название торта</ru>
    			</edit_form_label>
    			<list_column_label>
    				<ru>Название торта</ru>
    			</list_column_label>
    			<list_filter_label>
    				<ru>Название торта</ru>
    			</list_filter_label>
    			<error_message>
    				<ru />
    			</error_message>
    			<help_message>
    				<ru />
    			</help_message>
    		</field>
    		
    	</fields>
    	<items>
    		<item>
    			<uf_name>Наполеон</uf_name>
    		</item>
    	</items>
    </hiblock>
    
    
    [/di].
  • Шаг 2. Откройте страницу Импорт Highload-блока (Контент > Highload-блоки > Экспорт/импорт > Импорт):

    Нажмите на рисунок, чтобы увеличить
  • Шаг 3. Укажите параметры импорта:
    • В поле Файл для импорта укажите загруженный файл.
    • В поле Highload-блок выберите -создать новый-.
    • Проверьте, чтобы все опции были отмечены, а параметр Поле внешнего ключа не настраивается.
  • Шаг 4. Запустите процесс импорта. По окончании вы увидите [dw]специальное сообщение[/dw][di][/di].
  • Шаг 5. Проверьте загруженные данные:
    • Откройте страницу со списком Highload-блоков (Контент > Highload-блоки). Вы увидите [dw]новый Highload-блок[/dw][di]Нажмите на рисунок, чтобы увеличить[/di].
    • Откройте страницу со списком полей нового Highload-блока и убедись, что [dw]поля созданы[/dw][di][/di].
    • Откройте страницу со списком записей Highload-блока и [dw]добавленные записи[/dw][di][/di].

Как видите, инструмент импорта позволяет легко создать и наполнить Highload-блок данными.

Проверьте себя

Ответьте на несколько вопросов по теме Highload-блоки, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Для элементов инфоблоков используются Highload-блоки в типе свойства Список.
Верно
Неверно
2 При создании Highload-блок в полях Название сущности и Название таблицы в БД можно использовать латинские буквы и кириллицу.
Верно
Неверно
3 При экспорте Highload-блока файлы выгружаются в папку с названием <имя_файла_экспорта>_files, которая размещается внутри той же папки, где и файл экспорта.
Верно
Неверно
4 XML-файл для импорта Highload-блока должен быть подготовлен в кодировке сайта.
Верно
Неверно
5 При добавлении данных в существующий Highload-блок обязательно должны быть отмечены опции Импортировать структуру и Импортировать данные.
Верно
Неверно
6 При импорте нового Highload-блока все опции должны быть отмечены, а параметр Поле внешнего ключа не настраивается.
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

    • Создайте Highload-блок:
      • Название: Material
      • Название таблицы: material
      • Языкозависимые названия: Материал (Russian), Material (English)
    • Создайте поля этого блока (у всех полей тип данных Строка, а также поля должны участвовать в поиске):
      • UF_NAME (Название)
      • UF_XML_ID (Внешний код)
    • Добавьте следующие четыре записи:
    • НазваниеXML_ID
      1 хлопокcotton
      2 шёлкsilk
      3 кожаleather
      4 шерстьwool

    Решение

  1. Создайте новое свойство инфоблока с типом Справочник, а в качестве справочника используйте созданный ранее Highload-блок Material.

    Решение

  2. Добавьте новую запись в Highload-блок Material с помощью инструментов экспорта/импорта:

    НазваниеXML_ID
    5 вискозаviscose

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Push and Pull

Push-уведомления – это небольшие всплывающие окна, которые появляются на экране мобильного телефона или обычного компьютера и сообщают о важных событиях и обновлениях. То есть инициатором уведомлений являются сайты, на которые подписан пользователь. Противоположностью Push-технологии является технология Pull, где информация запрашивается самим пользователем.

Что делает Push and Pull

Модуль [dwi include_8261565]Push and Pull[/dwi] обеспечивает отправку мгновенных команд.

Так как этот функционал организован в виде отдельного модуля, то любой другой модуль (в том числе и модули сторонних разработчиков) может, используя API, отправлять мгновенные уведомления и сообщения клиентам.

Работа этого модуля требуется для полной функциональности:

  • Мобильного приложения - задачи, события в календаре, мгновенные сообщения и т.д. обновляются/добавляются мгновенно без обновления страницы.
  • Голосований и опросов - обновление результатов голосования в режиме online.
  • Блогов - мгновенное обновление счетчика лайков у сообщений и комментариев
  • Веб-мессенджера - мгновенные сообщения в личной и групповой переписке без необходимости ждать опроса сервера, уведомление о том, что сообщение прочитано и пишется ответ, возможность совершать звонки и видеозвонки.

Примечание: Если при просмотре ленты у пользователя вместо правильного текста появляются нечитаемые символы, то скорее всего, в браузере жестко указана какая-либо кодировка. Необходимо указать автоматический выбор кодировки (Вид > Кодировка > Авто).



Как работает Push-сервер

Когда пользователь входит на сайт, его браузер, настольное или мобильное приложение устанавливают и держат постоянное соединение с Push-сервером.

  Как работает Push-сервер

Обычно это делается с помощью [dw]WebSocket[/dw][di]Веб-сокеты - это технология, позволяющая открыть постоянное двунаправленное
сетевое соединение между браузером пользователя и сервером.
С его помощью вы можете отправить сообщение на сервер и получить ответ
без выполнения http запроса.
Причем этот процесс будет событийно-управляемым.

websocket.jpg[/di], который используют 95% современных браузеров. А если технология WebSocket не поддерживается браузером, то используется [dw]Long Polling[/dw][di]Другое название способа - "Очередь ожидающих запросов". Краткая схема такова:
1. Отправляется запрос на сервер
2. Соединение не закрывается сервером, пока не появится событие
3. Событие отправляется в ответ на запрос
4. Клиент тут же отправляет новый ожидающий запрос

longpolling.jpg [/di] — постоянный долгий опрос. Это [dw]ajax-запрос[/dw][di]AJAX (Asynchronous Javascript And Xml») – технология обращения к серверу без перезагрузки страницы[/di], который в течение 40 секунд ждет ответа от сервера. В случае получения ответа или при наступлении таймаута, запрос повторяется.

Для "1С-Битрикс: Управление сайтом" разработан собственный Push-сервер:

Push-сервер.png

  Схема работы Push-сервера


  • Пользователь пишет какое-то сообщение на портале.
  • Сообщение поступает на [dw]NGINX-сервер[/dw][di]NGINX-сервер - мощный веб-сервер, использующий не-потоковую, управляемую событиями архитектуру[/di]. Он обрабатывает и держит множество TCP и HTTPS-соединений, занимается балансировкой нагрузки и выполняет другие важные функции, такие как кеширование HTTP и использование в качестве обратного прокси.
  • Сообщение отправляется в PHP-часть бэкенда, там оно сохраняется, а потом транслируется в Push-сервер.
  • Push-сервер состоит из восьми процессов приложения [dw]Node.js[/dw][di]Node.js — программная платформа, основанная на движке V8 (транслирующем JavaScript в машинный код), превращающая JavaScript из узкоспециализированного языка в язык общего назначения.
    Подробнее...[/di] - 6 процессов обслуживают входящие соединения, 2 процесса отвечают за публикацию сообщений.
  • Все восемь процессов Node.js-приложения имеют постоянное соединение с [dw]Redis[/dw][di]Redis - нереляционное (для хранения используется не система из строк и столбцов, а модель, оптимизированная для хранения определённого типа содержимого) хранилище на основе пар «ключ‑значение». В нем могут храниться не только ключ-значение, но и ключ-словарь, ключ-список, то есть более сложные структуры данных. Подробнее...[/di]. В Redis сохраняются все сообщения, статистика по каналам и состояние онлайна.
  • В самом сообщении содержатся все атрибуты данных, то есть автор, адресат и т.д. Один из двух процессов, отвечающих за публикацию сообщений, принимает это сообщение, обрабатывает его и публикует в Redis.
  • Redis записывает сообщение и оповещает другие шесть процессов о том, что поступило новое сообщение и его можно разослать подписчикам.
  • Для работы с WebSocket используется [dw]open-source[/dw][di]Открытое программное обеспечение, свободный софт — программное обеспечение, пользователи которого имеют права на его неограниченную установку, запуск, свободное использование, изучение, распространение и изменение, а также распространение копий и результатов изменения[/di] модуль Node.js под названием ws.
  • Для безопасной работы с push-сервером каждый пользователь получает уникальный идентификатор канала при подсоединении. Это случайная строка из 32 символов и добавленная к ней специальная подпись, уникальная для этого конкретного идентификатора канала. Сами каналы регулярно меняются, как и их идентификаторы.
  • Сам канал хранится на сервере 24 часа, но запись в него осуществляется не более 12 часов. Остальное время хранения необходимо для того, чтобы пользователь смог получить ранее отправленные сообщения. Ведь если вечером ноутбук "уснул" с одним идентификатором канала, то утром он "проснется" с ним же и обратится на сервер. После отправки сообщений сервер закрывает старый канал и создает для этого пользователя новый.

  Варианты работы Push-сервера «1С-Битрикс»

Для работы "1С-Битрикс: Управление сайтом" и "Битрикс24 в коробке" рекомендуется использовать виртуальную машину [dw]BitrixVM[/dw][di]«1C-Битрикс: Виртуальная машина» - бесплатный программный продукт, готовый к немедленному использованию виртуальный сервер, полностью настроенный, протестированный и адаптированный для оптимальной работы как с продуктами «1С-Битрикс», так и с любыми PHP-приложениями. Имеется в версии для Windows и для Unix систем.
Подробнее...[/di], где всё уже настроено. Если по каким-то причинам использование BitrixVM невозможно, то в используемом окружении необходимо настроить push-сервер.

Скачать исходные файлы Push-сервера из нашей виртуальной машины можно по адресу: /opt/push-server/.

Настройки хранятся в файле config/config.json .

Один из примеров настройки и запуска Push-сервера на стороннем окружении приведен в уроке.



Информация о версиях сервера очередей

  Общая информация

Сервер очередей Push and Pull служит для мгновенного взаимодействия между собой многих инструментов продуктов Битрикс24 и 1С-Битрикс: Управление сайтом. Он используется в Задачах, Календарях, ленте Новостей, Группах, RPA, мобильном приложении Битрикс24, Чатах, Генераторе документов, Телефонии, Центре продаж и в других сервисах.

Внимание: Поддержка работы чатов без настроенного сервера очередей модуля Push and Pull прекращена с версии Веб-мессенджер (im) 20.400.0.

В виртуальной машине ([ds]BitrixVM c версии 7.1 и выше[/ds][di]«1C-Битрикс: Виртуальная машина» – бесплатный программный продукт, готовый к немедленному использованию виртуальный сервер, полностью настроенный, протестированный и адаптированный для оптимальной работы как с продуктами «1С-Битрикс», так и с любыми PHP-приложениями.

Виртуальная машина сэкономит время и силы на правильное развертывание и администрирование сайта или внутреннего информационного ресурса на базе продуктов «1С-Битрикс».

Подробнее в курсе Виртуальная машина[/di]) Push-сервер установлен по умолчанию.

Мы рекомендуем вам заранее настроить сервер очередей – облачный сервер «1С-Битрикс» или локальный Bitrix Push server 2.0. Инструкция в уроке.

Внимание: Поддержка старых версий локальных серверов очередей (Nginx-PushStreamModule 0.3.4/0.4.0 и Bitrix Push server 1.0) прекращена Осенью 2021 года.

Перейти на актуальную версию сервера (Bitrix Push server 2.0) вам помогут инструкции:

  Устаревшие версии BitrixVM

Внимание! Осенью 2021 года все старые версии модуля Push&Pull были признаны устаревшими, убраны из виртуальной машины BitrixVM и более не поддерживаются в продукте, например, чатами.
Настоятельно рекомендуем перейти на актуальные версии BitrixVM.

Для устаревших виртуальных машин используйте информацию из спойлеров.

Работа модуля Push and Pull Битрикса на виртуальной машине до версии 5.0.

Настройка nginx-push-stream-module в версии 0.4.0

Настройка nginx-push-stream-module в версии 0.3.4

Как использовать модуль, подробно рассказано в курсе Разработчик Bitrix Framework [ds]в отдельной главе[/ds][di]Модуль работает в двух режимах:

1) постоянное подключение к специальному серверу Сервер очередей;

2) в режиме опроса сервера (60-20-10).

Первый режим рекомендуемый, от него вы получите настоящую интерактивность, но от вас потребуется
настроить Сервер очередей или взять готовую сконфигурированную виртуальную машину.

Второй режим используется когда по каким-то причинам невозможно использовать первый. В таком случае
модуль будет каждые 60 секунд обращаться на сервер и проверять, есть ли данные. Если есть, то
следующий хит будет через 10 секунд. Если данных больше нет, то хит будет сначала через 20 секунд,
а потом через каждые 60 секунд. Тем самым будет создан эффект интерактивности.

Подробнее в курсе Разработчик Bitrix Framework[/di].

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

Сложность настройки модуля Push and Pull зависит от выбора типа сервера очередей. Сервер очередей Push and Pull служит для мгновенного взаимодействия между собой многих инструментов продуктов Битрикс24 и 1С-Битрикс: Управление сайтом.

  Настройка облачного сервера очередей

Самый простой вариант, требует только активную лицензию на продукты «1С-Битрикс» (Битрикс24 и 1С-Битрикс: Управление сайтом). Также удобен, если продукт «1С-Битрикс» установлен на [ds]shared-хостинге[/ds][di] Виртуальный хостинг (англ. shared hosting) – вид хостинга, при котором множество веб-сайтов расположено на одном веб-сервере. Это самый экономичный вид хостинга, подходящий для небольших проектов.

Подробнее...[/di] или вместо виртуальной машины VMBitrix используется собственное серверное окружение.

Перейдите в административном разделе: Настройки > Настройки продукта > Настройки модулей > Push and Pull, выберите вариант Облачный сервер «1С-Битрикс» и географическое расположение сервера по желанию (можно оставить автоматический выбор). Остается только нажать на кнопку Зарегистрироваться:

Нажмите на рисунок, чтобы увеличить

Все готово, облачный сервер очередей «1С-Битрикс» настроен и активен:

  Настройка локального Bitrix Push server

Есть случаи, когда нельзя использовать в качестве сервера очередей облачный сервер «1С-Битрикс», например, когда политикой безопасности предприятия серверу ограничен доступ в интернет. Для такого случая есть возможность установить локальный сервер очередей.

Устанавливать будем сервер очередей Bitrix Push server 2.0. Ранее (до осени 2021 года) были доступны и [dw]другие версии[/dw][di]Осенью 2021 года прекращена поддержка старых версий локальных серверов очередей Nginx-PushStreamModule 0.3.4/0.4.0 и Bitrix Push server 1.0.

Подробнее...[/di] серверов очередей, которые на текущий момент являются устаревшими.

1. Обновление VMBitrix

Обновите виртуальную машину VMBitrix до последней стабильной версии: 2. Configure localhost settings > 6. Update server.

Update server

Обязательно перед обновлением сделайте резервное копирование вашей VMBitrix. Подробнее об обновлении виртуальной машины VMBitrix читайте в специальном курсе.

2. Установка Bitrix Push server 2.0

По умолчанию в виртуальной машине VMBitrix версии 7.4.4 и ниже в качестве сервера очередей используется Nginx-PushStreamModule.

В главном меню виртуальной машины VMBitrix: 9. Configure Push/RTC service for the pool смотрим, какой сервер используется в качестве сервера очередей. В данном примере видим, что это действительно Nginx-PushStreamModule:

Nginx-PushStreamModule

Если тип сервера очередей будет NodeJS-PushServer, то можно переходить к шагу 3. Bitrix Push server 2.0 в продуктах «1С-Битрикс».

Выбираем пункт меню 1. Install/Update NodeJS RTC service, вводим название хоста Hostname и подтверждаем установку:

Install/Update NodeJS RTC service

Дожидаемся, пока задача по установке и запуску службы NodeJS-PushServer будет закончена:

NodeJS RTC Push&Pull

Проверить текущие выполняемые задачи можно с помощью меню 10. Background tasks in the pool > 1. View running tasks. Если по каким-либо причинам нужно посмотреть лог-файлы выполнения задач, то они находятся в директории /opt/webdir/temp.

3. Bitrix Push server 2.0 в продуктах «1С-Битрикс»

Перед установкой Bitrix Push server 2.0 вам нужно предварительно сбросить настройки сервера очередей. Для этого нажмите на кнопку По умолчанию:

Важно! Нажимать дополнительно на кнопку Сохранить не нужно!

Далее в опции Использовать "Push server": установленный локально выберите Виртуальная машина 7.3 - 7.5 (Bitrix Push server 2.0) и сохраните настройки:

Все готово. Как правило, никаких настроек больше не требуется.

Какие ещё настройки можно выполнить


  • При необходимости перенастройте адреса для публикации и чтения команд. Домен в адресе для чтения сообщений можно указать #DOMAIN#: такая нотация будет автоматически заменяться под нужный домен для многодоменных конфигураций. Пример: http://#DOMAIN#:8893/bitrix/sub/.
  • Если в системе несколько активных сайтов, то есть возможность выбрать, на каких сайтах не использовать модуль Push and Pull.

  Возможные ошибки Bitrix Push server 2.0

При установке и первом запуске Bitrix Push server 2.0 создается уникальный секретный код в файле настроек сервера очередей /etc/push-server/push-server*.json в секции security в параметре key:

"security": {
	"key": "<ваш секретный ключ>"
},

В виртуальной машине BitrixVM при первом запуске Bitrix Push server 2.0 этот код автоматически прописывается в файл настроек ядра системы /bitrix/.setting.php и в базу данных, а также он виден в административном интерфейсе в поле Код-подпись для взаимодействия с сервером:

Бывают ситуации, когда по каким-либо причинам в файле настроек ядра /bitrix/.setting.php и в базе данных секретный код отличается от того, который прописан в настройках сервера очередей. Из-за этого сервер очередей работает некорректно, сообщения не доставляются.

Чтобы решить эту проблему, необходимо в меню виртуальной машины BitrixVM пересоздать роль NodeJS-PushServer: 9. Configure Push/RTC service for the pool > 1. Install/Update NodeJS RTC service

Update NodeJS RTC Push&Pull

Если у вас свое серверное окружение, то можно сделать это вручную:

  1. Скопировать ключ из файла настроек сервера очередей /etc/push-server/push-server*.json.
  2. Перейти в административном интерфейсе продукта «1С-Битрикс»: Настройки > Настройки продукта > Настройки модулей > Push and Pull и сбросить настройки сервера очередей кнопкой По умолчанию.
  3. Скопированный ключ вставить в поле Код-подпись для взаимодействия с сервером и сохранить настройки.

После этого работа сервера очередей будет восстановлена.



Переход с Bitrix Push server 1.0 на Bitrix Push server 2.0

Поддержка старых версий серверов очередей, Nginx-PushStreamModule 0.3.4/0.4.0 и Bitrix Push server 1.0, прекращена осенью 2021 года. Выполните переход с сервера очередей Bitrix Push server 1.0 на актуальный Bitrix Push server 2.0 с помощью нашей инструкции.

  1. Обновление VMBitrix

Обновите виртуальную машину VMBitrix до последней стабильной версии: 2. Configure localhost settings > 6. Update server.

Update server

Важно! Обязательно перед обновлением сделайте резервное копирование вашей VMBitrix. Подробнее об обновлении виртуальной машины VMBitrix читайте в специальном курсе.

  2. Проверка NodeJS-PushServer в VMBitrix

В главном меню виртуальной машины VMBitrix: 9. Configure Push/RTC service for the pool проверяем, что в качестве сервера очередей используется NodeJS-PushServer:

NodeJS-PushServer

Если тип сервера очередей в меню виртуальной машины VMBitrix будет Nginx-PushStreamModule, то у вас установлен старый сервер очередей. Прочитать о переходе с Nginx-PushStreamModule на Bitrix Push server 2.0 можно в следующем уроке.

  3. Bitrix Push server 2.0 в продуктах «1С-Битрикс»

В административном разделе: Настройки > Настройки продукта > Настройки модулей > Push and Pull нужно предварительно сбросить настройки сервера очередей. Для этого нажмите на кнопку По умолчанию:

Важно! Нажимать дополнительно на кнопку Сохранить не нужно!

Чтобы включить новый сервер очередей Bitrix Push server 2.0, в опции Использовать "Push server": установленный локально выберите Виртуальная машина 7.3 и новее (Bitrix Push server 2.0) и сохраните настройки:

Нажмите на рисунок, чтобы увеличить

Все готово. Как правило, никаких настроек больше не требуется.

Примечание: В [dw]актуальных версиях[/dw][di]На декабрь 2022 года это версия 22.300.0.[/di] модуля Push and Pull в настройках доступен только один вариант локального сервера очередей - Bitrix Push server 2.0.

  Возможные ошибки

При установке и первом запуске Bitrix Push server 2.0 создается уникальный секретный код в файле настроек сервера очередей /etc/push-server/push-server*.json в секции security в параметре key:

"security": {
	"key": "<ваш секретный ключ>"
},

В виртуальной машине BitrixVM при первом запуске Bitrix Push server 2.0 этот код автоматически прописывается в файл настроек ядра системы /bitrix/.setting.php и в базу данных, а также он виден в административном интерфейсе в поле Код-подпись для взаимодействия с сервером:

Бывают ситуации, когда по каким-либо причинам в файле настроек ядра /bitrix/.setting.php и в базе данных секретный код отличается от того, который прописан в настройках сервера очередей. Из-за этого сервер очередей работает некорректно, сообщения не доставляются.

Чтобы решить эту проблему, необходимо в меню виртуальной машины BitrixVM пересоздать роль NodeJS-PushServer: 9. Configure Push/RTC service for the pool > 1. Install/Update NodeJS RTC service

Update NodeJS RTC Push&Pull

Если у вас свое серверное окружение, то можно сделать это вручную:

  1. Скопировать ключ из файла настроек сервера очередей /etc/push-server/push-server*.json.
  2. Перейти в административном интерфейсе продукта «1С-Битрикс»: Настройки > Настройки продукта > Настройки модулей > Push and Pull и сбросить настройки сервера очередей кнопкой По умолчанию.
  3. Скопированный ключ вставить в поле Код-подпись для взаимодействия с сервером и сохранить настройки.

После этого работа сервера очередей будет восстановлена.



Переход с Nginx-PushStreamModule на Bitrix Push server 2.0

  Общая информация

Модуль сервера очередей Nginx-PushStreamModule устарел и может работать нестабильно (зависание сообщений, падения). В результате чего сообщения могут не доставляться, это вызывает высокую нагрузку на службу PHP из-за особенностей работы модуля Nginx. Также он ограничен в функционале – в нем нет поддержки protobuf и персональных каналов, которые работают без сервера, нет возможности опроса публичного канала, чтобы узнать, кто в сети, и т.д.

Последние версии модулей продуктов «1С-Битрикс» работают намного лучше с новым сервером очередей Bitrix Push server 2.0. Например, телефония и чаты работают с ним значительно быстрее, т.к. коммуницируют с пользователями напрямую, минуя PHP.

Внимание: Поддержка старых версий серверов очередей: Nginx-PushStreamModule 0.3.4/0.4.0 и Bitrix Push server 1.0 прекращена осенью 2021 года. Перейдите c Nginx-PushStreamModule на новый сервер очередей Bitrix Push server 2.0 с помощью инструкции этого урока.

  1. Обновление VMBitrix

Обновите виртуальную машину VMBitrix до последней стабильной версии: 2. Configure localhost settings > 6. Update server.

Update server

Важно! Обязательно перед обновлением сделайте резервное копирование вашей VMBitrix. Подробнее об обновлении виртуальной машины VMBitrix читайте в специальном курсе.

  2. Установка Bitrix Push server 2.0

По умолчанию в виртуальной машине VMBitrix версии 7.4.4 и ниже в качестве сервера очередей используется Nginx-PushStreamModule.

В главном меню виртуальной машины VMBitrix: 9. Configure Push/RTC service for the pool смотрим, какой сервер используется в качестве сервера очередей. В данном примере видим, что это действительно Nginx-PushStreamModule:

Nginx-PushStreamModule

Если тип сервера очередей будет NodeJS-PushServer, то можно переходить к шагу 3. Bitrix Push server 2.0 в продуктах «1С-Битрикс».

Выбираем пункт меню 1. Install/Update NodeJS RTC service, вводим название хоста Hostname и подтверждаем установку:

Install/Update NodeJS RTC service

Дожидаемся, пока задача по установке и запуску службы NodeJS-PushServer будет закончена:

NodeJS RTC Push&Pull

Проверить текущие выполняемые задачи можно с помощью меню 10. Background tasks in the pool > 1. View running tasks. Если по каким-либо причинам нужно посмотреть лог-файлы выполнения задач, то они находятся в директории /opt/webdir/temp.

  3. Bitrix Push server 2.0 в продуктах «1С-Битрикс»

В административном разделе в Настройки > Настройки продукта > Настройки модулей > Push and Pull мы видим, что сервер очередей настроен на модуль [dw]nginx-push-stream-module[/dw][di][/di].

Перед переходом на Bitrix Push server 2.0 вам нужно предварительно сбросить настройки сервера очередей. Для этого нажмите на кнопку По умолчанию:

Важно! Нажимать дополнительно на кнопку Сохранить не нужно!

Чтобы включить новый сервер очередей Bitrix Push server 2.0, в опции Использовать "Push server": установленный локально выберите Виртуальная машина 7.3 и новее (Bitrix Push server 2.0) и сохраните настройки:

Нажмите на рисунок, чтобы увеличить

Все готово. Как правило, никаких настроек больше не требуется.

Примечание: В [dw]актуальных версиях[/dw][di]На декабрь 2022 года это версия 22.300.0.[/di] модуля Push and Pull в настройках доступен только один вариант локального сервера очередей - Bitrix Push server 2.0.

  Возможные ошибки

При установке и первом запуске Bitrix Push server 2.0 создается уникальный секретный код в файле настроек сервера очередей /etc/push-server/push-server*.json в секции security в параметре key:

"security": {
	"key": "<ваш секретный ключ>"
},

В виртуальной машине BitrixVM при первом запуске Bitrix Push server 2.0 этот код автоматически прописывается в файл настроек ядра системы /bitrix/.setting.php и в базу данных, а также он виден в административном интерфейсе в поле Код-подпись для взаимодействия с сервером:

Бывают ситуации, когда по каким-либо причинам в файле настроек ядра /bitrix/.setting.php и в базе данных секретный код отличается от того, который прописан в настройках сервера очередей. Из-за этого сервер очередей работает некорректно, сообщения не доставляются.

Чтобы решить эту проблему, необходимо в меню виртуальной машины BitrixVM пересоздать роль NodeJS-PushServer: 9. Configure Push/RTC service for the pool > 1. Install/Update NodeJS RTC service

Update NodeJS RTC Push&Pull

Если у вас свое серверное окружение, то можно сделать это вручную:

  1. Скопировать ключ из файла настроек сервера очередей /etc/push-server/push-server*.json.
  2. Перейти в административном интерфейсе продукта «1С-Битрикс»: Настройки > Настройки продукта > Настройки модулей > Push and Pull и сбросить настройки сервера очередей кнопкой По умолчанию.
  3. Скопированный ключ вставить в поле Код-подпись для взаимодействия с сервером и сохранить настройки.

После этого работа сервера очередей будет восстановлена.



Использование отдельного сервера очередей

  Отдельный сервер очередей

Есть вариант установки отдельно стоящего локального сервера очередей Bitrix Push server 2.0 на базе виртуальной машины VMbitrix.

Плюс такого метода – если у вас свое серверное окружение и ресурсы сервера ограничены, то вы можете запустить отдельную машину на базе VMbitrix, которая будет обслуживать только роль сервера очередей, сняв при этом нагрузку с основного сервера с коробочной версией продукта «1C-Битрикс». Также удобнее будет производить дальнейшее масштабирование и обслуживание.

  1. Настройка сервера очередей


  1. Скачайте образ виртуальной машины VMbitrix под нужный вам гипервизор или установите с помощью скрипта bitrix-env.sh на отдельный сервер с CentOS 7.

  2. Создайте и настройте пул сервера: 1. Create Management pool of server, чтобы открыть все необходимые порты в CentOS для корректной работы сервисов.

  3. Обновите виртуальную машину VMBitrix до последней версии: 2. Configure localhost settings > 6. Update server.

    Update server

  4. Виртуальная машина по умолчанию создает в директории сайта /home/bitrix/www скрипты для быстрой установки продуктов «1C-Битрикс». Этот сайт не нужен, его нужно удалить.

    Для этого перейдите в меню 6. Configure pool sites > 2. Delete site и выберите директорию сайта /home/bitrix/www.

    Delete site

  5. Создайте новый сайт 6. Configure pool sites > 1. Create site и укажите: адрес будущего сервера очередей, тип kernel, кодировку UTF-8. В примере адрес сервера push.b24test.club.

    Create site

    Примечание: Адрес (домен) сервера может быть как локальным, так и внешним – это зависит от инфраструктуры, где сервер будет располагаться. В любом случае, сервер с коробкой «1C-Битрикс» и сервер очередей должны быть доступны друг другу по сети.
  6. Новый сайт создается в директории /home/bitrix/ext_www/{адрес_вашего_сайта}/. Также в этой директории автоматически создаются скрипты для быстрого развертывания продуктов «1C-Битрикс»:

    [root@violent-culebra ~]# ls /home/bitrix/ext_www/push.b24test.club/
    500.html  bitrix  bitrixsetup.php  images  index.php  restore.php  upload
    [root@violent-culebra ~]# 
    

    Скрипты bitrixsetup.php, restore.php и index.php не нужны и оставлять в директории сайта их небезопасно. Поэтому удалите их из директории нового сайта (в примере: push.b24test.club) и превратите index.php в пустую страницу:

    rm -f /home/bitrix/ext_www/push.b24test.club/bitrixsetup.php && rm -f /home/bitrix/ext_www/push.b24test.club/restore.php && echo '<?php' > /home/bitrix/ext_www/push.b24test.club/index.php
    

    Проверьте, что в директории сайта остались безопасные каталоги и файлы:

    [root@violent-culebra ~]# ls /home/bitrix/ext_www/push.b24test.club/
    500.html  bitrix  images  index.php  upload
    [root@violent-culebra ~]# 
    
  7. В главном меню виртуальной машины VMBitrix: 9. Configure Push/RTC service for the pool смотрим, какой сервер используется в качестве сервера очередей. В данном примере видим, что это Nginx-PushStreamModule:

    Nginx-PushStreamModule

    Если тип сервера очередей будет NodeJS-PushServer, то можно переходить к шагу 9 открытия порта для внешних подключений к серверу очередей.
  8. Выберите пункт меню 1. Install/Update NodeJS RTC service, введите название хоста Hostname и подтвердите установку:

    Install/Update NodeJS RTC service

    Дождитесь, пока задача по установке и запуску службы NodeJS-PushServer будет закончена:

    NodeJS RTC Push&Pull

    Проверить текущие выполняемые задачи можно с помощью меню 10. Background tasks in the pool > 1. View running tasks. Если по каким-либо причинам нужно посмотреть лог-файлы выполнения задач, то они находятся в директории /opt/webdir/temp.
  9. Чтобы Bitrix Push server мог обслуживать внешние запросы, нужно открыть порт 8895.

    Нужно узнать, какой файрвол используется в VMbitrix:

    firewall-cmd --zone=public --list-all
    

    Если в результате будет выведен список правил, значит используется firewalld, если ошибка – значит iptables:

    [root@violent-culebra ~]# firewall-cmd --zone=public --list-all
    -bash: firewall-cmd: command not found
    [root@violent-culebra ~]# 
    

    Команды для открытия порта 8895:

    • iptables:
      iptables -A bx_public -p tcp -m state --state NEW -m tcp --dport 8895 -m comment --comment "BX: push public port" -j ACCEPT && iptables-save >> /etc/sysconfig/iptables
      
    • firewalld:
      firewall-cmd --zone=public --add-port=8895/tcp --permanent && firewall-cmd --reload
      
  10. При установке и первом запуске Bitrix Push server 2.0 создается уникальный секретный код в файлах настроек сервера очередей /etc/push-server/push-server*.json в секции security в параметре key:

    "security": {
    	"key": "<ваш секретный ключ>"
    },
    

    Скопируйте этот код – он пригодится для дальнейшей настройки в продукте «1C-Битрикс».

  11. Все готово. Подготовка сервера очередей Bitrix Push server 2.0 на базе виртуальной машины VMbitrix завершена.

  2. Настройка Bitrix Push server 2.0 в продукте «1C-Битрикс»


  1. Перейдите в административном разделе: Настройки > Настройки продукта > Настройки модулей > Push and Pull.

    Перед подключением Bitrix Push server 2.0 нужно предварительно сбросить настройки сервера очередей. Для этого нажмите на кнопку По умолчанию:

    Важно! Нажимать дополнительно на кнопку Сохранить не нужно!
  2. Далее в опции Использовать "Push server": установленный локально выберите Виртуальная машина 7.3 - 7.5 (Bitrix Push server 2.0).

    Добавьте в полях путей для публикации и чтения команд адрес вашего push-сервера (в примере push.b24test.club), а также Код-подпись для взаимодействия с сервером из настроек push-сервера /etc/push-server/push-server*.json:

    Нажмите на рисунок, чтобы увеличить

  3. Сохраните настройки.

  3. Установка защищенного протокола


  1. Для взаимодействия между продуктом «1C-Битрикс» и сервером очередей Bitrix Push server 2.0 по защищенным протоколам HTTPS и WSS, нужно, чтобы оба сайта на серверах имели SSL-сертификаты.

    В VMbitrix можно подключить свой SSL-сертификат или выпустить бесплатный от Let's Encrypt через меню: 8. Manage pool web servers > 3. Configure certificates.

  2. После того, как оба сервера будут работать по HTTPS, добавьте в полях путей для публикации и чтения команд HTTPS и WSS адрес вашего пуш-сервера (в примере push.b24test.club):

    Нажмите на рисунок, чтобы увеличить

  3. Сохраните настройки. Все готово.



Настройка и запуск push сервера на стороннем окружении

Для работы "1С-Битрикс: Управление сайтом" и "Битрикс24 в коробке" рекомендуется использовать [ds]BitrixVM[/ds][di]«1C-Битрикс: Виртуальная машина» - бесплатный программный продукт, готовый к немедленному использованию виртуальный сервер, полностью настроенный, протестированный и адаптированный для оптимальной работы как с продуктами «1С-Битрикс», так и с любыми PHP-приложениями. Имеется в версии для Windows и для Unix систем.
Подробнее...[/di], где всё уже настроено. Если по каким-то причинам использование BitrixVM невозможно, то в используемом окружении необходимо настроить push-сервер и окружение.

  Настройка push-сервера

Настройка push-сервера зависит от используемой ОС. Универсального способа для любой операционной системы не существует. Ниже приведены ссылки на настройки окружений, которые протестированы [ds]вендором[/ds][di]Вендор - это компания, которая разрабатывает и владеет неким ПО, и которая продает лицензии на него другим.
Вендор у "1С-Битрикс: Управление сайтом" и "Битрикс24 в коробке" единый: компания "1С:Битрикс".

Подробнее ...[/di]. Если вы используете другие ОС, то настраивать push-сервер вам придётся самостоятельно.

Настройка push-сервера для:

  1. Debian 11
  2. Astra 1.7
  3. SLES 15
  4. РЕД ОС 7.2
  5. RedHat8
  6. ALT 8 SP Server

  Настройка Redis сервера

Настройка Redis сервера зависит от используемой ОС. Универсального способа для любой операционной системы не существует. Ниже приведены ссылки на настройки окружений, которые протестированы вендором. Если вы используете другие ОС, то настраивать Redis сервер вам придётся самостоятельно.

Настройка Redis для:

  1. Debian 11
  2. Astra 1.7
  3. SLES 15
  4. РЕД ОС 7.2
  5. RedHat8
  6. ALT 8 SP Server

  Конфигурация NGINX

Настройка NGINX зависит от используемой ОС. Универсального способа для любой операционной системы не существует. Ниже приведены ссылки на настройки окружений, которые протестированы вендором. Если вы используете другие ОС, то настраивать NGINX вам придётся самостоятельно.

Настройка NGINX для:

  1. Debian 11
  2. Astra 1.7
  3. SLES 15
  4. РЕД ОС 7.2
  5. RedHat8
  6. ALT 8 SP Server


Проверьте себя

Ответьте на несколько вопросов по теме Push and Pull, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Модуль Push and Pull обеспечивает отправку мгновенных команд.
Верно
Неверно
2 Push-сервер состоит из шести процессов приложения Node.js, имеющих постоянное соединение с Redis.
Верно
Неверно
3 Для безопасной работы с push-сервером каждый пользователь получает уникальный идентификатор канала при подсоединении.
Верно
Неверно
4 Для работы "1С-Битрикс: Управление сайтом" и "Битрикс24 в коробке" обязательно нужно использовать виртуальную машину BitrixVM.
Верно
Неверно
5 Для включения облачного сервера достаточно в поле Использовать "Push server" выбрать облачный тип сервера, затем указать нужный сервер и зарегистрироваться.
Верно
Неверно
6 В виртуальной машине BitrixVM версии 7.1 и выше установлен Push-сервер по умолчанию.
Верно
Неверно
7 При наличии в системе нескольких активных сайтов модуль Push and Pull будет работать на всех сайтах. Отключить работу модуля для одного конкретного сайта нельзя.
Верно
Неверно


REST API

Модуль REST API используется для разработки собственных приложений или интеграций для Битрикс. Он работает как с облачным, так и с коробочным Битрикс24, а также с "1С-Битрикс: Управление сайтом" начиная с версии 16.6.0.

Возможности REST API

Возможности REST API

Модуль REST API позволяет расширить функциональные возможности Битрикс24 и "1С-Битрикс: Управление сайтом":

  • разрабатывать локальные приложения;
  • создавать собственные модули;
  • создавать самостоятельные типовые решения;
  • публиковать [dw]тиражные решения[/dw][di]Тиражные решения состоят из версий, каждая из которых проходит модерацию, прежде чем будет опубликована в каталоге приложений Битрикс24.Маркет. Можно сделать их доступными для установки неограниченному кругу пользователей и платными, продавая функционал по модели подписки.
    Подробнее...[/di] для Bitrix Marketplace;
  • управлять инструментами сервиса Битрикс24;
  • разрабатывать дополнительный функционал для конкретного проекта;
  • регулировать доступ к модулям.

Работа с модулем

Работа с модулем описана в курсах:

  • [ds]Маркетплейс Bitrix Framework[/ds][di]Основа работ по созданию собственных продуктов для Маркетплейс - создание собственных модулей. В курсе рассказано, как расширять функционал проектов на основе Bitrix Framework с помощью сторонних модулей и решений.

    Подробнее ...[/di]
  • [ds]Приложения Битрикс24.Маркет[/ds][di]В данном курсе представлены базовые понятия о приложениях для коробочной и облачной версий Битрикс24, подробно рассмотрен процесс разработки локальных и тиражных приложений, а также даны общие рекомендации для разработчиков готовых решений и интеграций..

    Подробнее ...[/di]
  • [ds]Бот платформа Битрикс24[/ds][di]Бот-платформа Битрикс24 - новый формат приложений, основанных на чатах в веб-мессенджере.
    Ознакомившись с этим курсом, вы сможете создать своего чат-бота, управлять чатами и сообщениями.

    Подробнее ...[/di]

Для ознакомления с REST API очень удобно использовать специально созданное приложение, которое представляет собой консоль разработчика и позволяет выполнять произвольные вызовы к REST API прямо из приложения, ориентируясь на примеры кода в справочнике.


Документация по теме:


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

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

Настройка модуля REST API осуществляется на странице Настройки > Настройки продукта > Настройки модулей > REST API:

rest1.png

На вкладке Настройки можно задать параметры экспорта и импорта данных с портала или сайта посредством REST.

Здесь можно включить или отключить модуль [dw]mod_zip[/dw][di]mod_zip - HTTP-модуль для NGINX, динамически собирающий ZIP-архивы. В простых конфигурациях mod_zip берет список файлов в локальной файловой системе и обслуживает их как один ZIP-архив. В более сложных настройках mod_zip может передавать файлы компонентов с вышестоящих серверов с помощью собственного прокси-кода NGINX. В отличие от многих сценариев создания ZIP, этот процесс никогда не занимает больше нескольких килобайт оперативной памяти, даже при сборке архивов, размер которых (потенциально) составляет сотни мегабайт.

Подробнее...[/di] для экспорта и задать максимальный размер импортируемого файла.

  Логирование

На вкладке Логирование можно задать параметры экспорта и импорта данных с портала или сайта посредством REST:

logging.png

Поясним некоторые поля:

  • Включить логирование - выберите из списка время, на которое нужно включить лог использования RESTа - на 10 минут, час, сутки. Через указанное время логирование отключится автоматически.
  • Собрано данных - нажмите на ссылку-число собранных данных и увидите более подробный лог использования RESTа.
  • Настройки фильтрации - задайте параметры для выполнения импорта посредством REST. При большом объеме выгружаемых данных это значительно ускорит импорт. В документации по REST есть подробное описание Как правильно выгружать большие объемы данных.


Wiki, Веб-мессенджер, Календарь, Опросы

В этой главе описаны настройки важных модулей. Они объединены в одну главу, так как форма настроек каждого из них достаточно проста и, в основном, понятна по аналогии или интуитивно.

Wiki

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

База знаний (Wiki) - чаще всего информационный раздел сайта, структуру и содержимое которого пользователи могут сообща изменять с помощью инструментов, предоставляемых самим сайтом.
Детальное описание способов работы и примеры работы есть в курсе Контент-менеджер.

Внимание! Если в силу каких-то причин (например, использование версии до 9.5 и последующее обновление) в Битрикс24 модуль Wiki не был установлен, то можно установить его самостоятельно. О его установке можно прочитать в документации.

Для настройки модуля Wiki перейдите на страницу Настройки > Настройка Продукта > Настройки модулей > Wiki:

wiki.png

На закладке Настройки можно запретить использование визуального редактора при создании или редактировании статей, а также указать максимальные ширину и высоту изображений, которые получатся при [dw]ресайзе[/dw][di]Resize - изменение размера.[/di] загружаемых картинок.

На закладке Социальная сеть, если планируется использование Wiki в рамках Социальной сети, [dw]нужно указать[/dw][di][/di] инфоблок для Wiki групп, а так же ID форума, который будет использоваться для комментариев статей Wiki в группах.

На закладке Доступ настраиваются права работы групп пользователей со страницами Wiki.

Внимание! При самостоятельной установке модуля Wiki опционально можно создавать/не создавать инфоблок для него. Отказываться от создания инфоблока не рекомендуется, так как компонент Wiki не будет работать корректно с созданным вне модуля инфоблоком. Работа с инфоблоком для wiki должна производиться только через компонент или API модуля.

  Пользовательские списки статей/категорий

Кроме штатных [ds]категорий,[/ds][di] Категории - один из механизмов классификации создаваемых страниц. Они помогают в поиске страниц связанных каким-то общим смыслом. Категории могут иметь подкатегории. Вложенность подкатегорий не ограничена.

Подробнее...[/di] администратор может создавать произвольные выборки страниц, пополняемые автоматически. Это не совсем категории, так как они подразумевают динамическое добавление и удаление страниц по ряду параметров.

Эти списки создаются с помощью кода, размещённого в файле [ds]init.php[/ds][di] init.php - необязательный файл в рамках структуры файлов Bitrix Framework. Он автоматически подключается в прологе.

Подробнее...[/di]:

//Можно код разместить, например в файле /bitrix/php_interface/init.php

/*
* Функция, которая будет вызываться по событию при генерации списка категорий
* @param &obj $categories - объект, списка категорий
* @param str $sPathTemplate - путь для создания ссылки на категорию
* @return bool true.
*/
function _testOnCategoryListCreateEvent(&$categories, $sPathTemplate)
{
    $catParams = new CWikiCategoryParams; // создаем объект - набор параметров категории

    $catParams->sName = "Страницы созданные пользователем test"; // название категории
    $catParams->sTitle = "Тайтл категории cтраницы созданные пользователем тест"; // всплывающая подскака

    /*здесь вычисляем количество страниц попадающих в нашу категорию*/

    $catParams->iItemsCount = 333; // к примеру их оказалось 333
    $catParams->bIsRed = 'N'; // помечать ли категорию красным цветом, если не создана для нее страница
    $catParams->createLinkFromTemplate($sPathTemplate); // создаем ссылку на категорию
    $categories->addItem($catParams); // добавляем категорию в список категорий

    return true;
}

//обрабатываем событие создания списка категорий
AddEventHandler("wiki", "OnCategoryListCreate", "_testOnCategoryListCreateEvent");

/*
* Функция, которая будет вызываться по событию при генерации списка страниц категории
* @param &obj $categoryName - Наименование категории
* @param str $iBlockId - id iblock-а, в котором хранятся страницы вики
* @return dbResult 
*/
function _testOnCategoryPagesListCreateEvent($categoryName, $iBlockId)
{
    // проверяем, наша ли категория создает список страниц
    if($categoryName != "Category:Страницы измененные сегодня")
        return false;

    //Подготавливаем данные для выборки нужных нам страниц вики                            

    $arPagesFilter = array(
            'IBLOCK_ID' => $iBlockId,
            'CHECK_PERMISSIONS' => 'N',
            'ACTIVE' => 'Y',
            'CREATED_USER_ID' => 478 // Показываем страницы созданные пользователем с id 478
            );

    $arSort = array('XML_ID' => 'ASC');    // Указываем сортировку

    $arPagesFilter['INCLUDE_SUBSECTIONS'] = 'Y'; // Включаем подкатегории

    // Учитываем, что вики может быть просто вики, а может быть для групп
    if (CWikiSocnet::IsSocNet())    
        $arPagesFilter['SECTION_ID'] = CWikiSocnet::$iCatId;
    else
        $arPagesFilter['SECTION_ID'] = 0;

    return CIBlockElement::GetList($arSort, $arPagesFilter, false, false, Array());
}

//обрабатываем событие создания списка страниц в категории
AddEventHandler("wiki", "OnCategoryPagesListCreate", "_testOnCategoryPagesListCreateEvent");


Веб-мессенджер: настройки модуля

Для настройки модуля Веб-мессенджер перейдите на страницу Настройки > Настройки продукта > Настройки модулей > Веб-мессенджер

Настройки модуля Веб-мессенджер

На закладке Настройки задаются глобальные настройки параметров модуля, которые определяют:

  • сервер видеозвонков;
  • отображение истории, контактов, сообщений по умолчанию;
  • расположение панели мессенджера;
  • настройки приватности (для «1С-Битрикс: Управление сайтом»);
  • указанию для каждого сайта шаблона пути к странице пользователя для правильной работы модуля с профилем пользователя и добавлению в друзья (для «1С-Битрикс: Управление сайтом»);
  • указание формата отображения имени в списке контактов.

Внимание: Для улучшения быстродействия модуля Веб-мессенджер версии 17.0.4 и выше необходимо:

Если вы устанавливали продукт на сервер с уже установленной БД MySQL 5.6 и выше, то вам ничего делать не нужно.

Примечание: подробное описание каждого параметра приведено в пользовательской документации по модулю Веб-мессенджер.
Интерфейс чата веб-мессенджера доступен только в решении [dw]Сайт сообщества[/dw][di]1С-Битрикс: Сайт сообщества - это решение для тех, кто создает сайт социального сообщества:
клуб любителей кофе, рыбалки, велотуризма и т.д.
Решение вы выбирали на седьмом шаге Мастера установки продукта «1С-Битрикс: Управление сайтом»:

sait_soob.png[/di] и реализован компонентом [dw]bitrix: im.messenger[/dw][di]Вызов компонента:
<?if (IsModuleInstalled("im")) 
$APPLICATION->IncludeComponent(
"bitrix:im.messenger",
"", 
Array(), 
null, 
array(
"HIDE_ICONS" => "Y")
); ?>
[/di].

Документация по теме:


Календарь событий


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

Настройки модуля Календарь событий расположены на странице административного раздела Настройки > Настройки продукта > Настройки модулей > Календарь событий. Закладка Настройки интуитивно понятна, рассмотрим закладку Типы календарей:

Типы календарей

Типы используются для систематизации календарей и управления правами доступа к ним пользователей.

Нажмите Добавить новый тип и заполните необходимые поля:

Параметры типа

Нажмите Сохранить и новый тип будет добавлен:

Новый тип

Для удаления типа воспользуйтесь ссылкой Удалить, для изменения введенных параметров - ссылкой Изменить.

Чтобы добавить право доступа к типу календарей для пользователя или группы пользователей, нажмите Добавить:

Добавление прав доступа

После того, как нужные пользователи\группы пользователей будут выбраны, нажмите Выбрать, и затем укажите права доступа для выбранных групп:

Не забудьте сохранить внесенные изменения.

О работе с календарями подробно рассказано в курсе Контент-менеджер, глава [dw]Календарь[/dw][di]Календарь — удобный модуль для организации расписания и планирования дня.
Подробнее...[/di].



Документация по теме:



Опросы, голосования

Как использовать модуль, подробно рассказано в курсе Контент-менеджер в главе [ds]Опросы.[/ds][di] Опрос — очень удобный метод сбора мнений от посетителей сайта по разным вопросам. Опросы дают возможность быстро и с минимальными затратами собрать большой объем данных и принять правильное бизнес-решение по результатам исследования.

Подробнее...[/di]


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

Настройка параметров модуля производится на странице Настройки > Настройки продукта > Настройки модулей > Опросы, голосования:

На вкладке Настройки указываются следующие параметры:

  • Использовать HTML редактор - отмеченная опция разрешает использовать визуальный редактор при создании вопросов и описания опросов.
  • Поддерживать старые шаблоны (default.php, bluebar.php) в форме редактирования вопросов - флажок в этом поле сохраняет работоспособность старых компонентов опросов из ранних версий "1С-Битрикс: Управление сайтом".

На вкладке Доступ настраиваются права доступа к модулю Опросы для групп пользователей. Работа на вкладке аналогична таковой для модуля [ds]Веб-формы[/ds][di] На вкладке Доступ указывается уровень доступа к настройкам форм и результатам заполнения.

Чтобы добавить право доступа для какой-либо группы пользователей, нажмите ссылку Добавить право доступа. В противном случае ко всем группам пользователей, кроме администраторов, будет применено право доступа По умолчанию.

Подробнее...[/di].

Документация по теме:



Проверьте себя

Ответьте на несколько вопросов по темам Wiki, Веб-мессенджер, Календарь, Опросы, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 При создании или редактировании статей Wiki обязательно использование визуального редактора.
Верно
Неверно
2 При приглашении нового пользователя в чат Веб-мессенджера ему будет доступна вся история сообщений.
Верно
Неверно
3 В Веб-мессенджере можно скрыть отсутствующих пользователей.
Верно
Неверно
4 При создании нового типа Календаря событий можно добавить права доступа для всех календарей данного типа.
Верно
Неверно
5 Права доступа к модулю Опросы задаются на странице Сервисы > Опросы > Дополнительно.
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

Практические задания

  1. Cоздайте новый тип Календаря событий и задайте права на его просмотр всем зарегистрированным пользователям.

    Решение

  2. Задайте права на запись Опросов Контент-менеджеру.

    Решение

  3. Задайте всем пользователям права на чтение страниц Wiki и настройте максимальный размер загружаемого изображения 800 на 800 пикселей.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.


Адреса и местоположения

Модуль Адреса и местоположения используется создания и управления [dw]местоположениями[/dw][di] Местоположение - географическая единица, имеющая единые условия доставки заказа и определяющая часть полного адреса доставки.[/di] .

Возможности модуля Адреса и местоположения

С версии 20.5.0 был добавлен новый интерфейс для работы с адресами.

Где используются Адреса и местоположения

Вы можете использовать их:

  • В счетах, сделках и заказах CRM. Определение местоположения клиента необходимо для правильного расчёта налогов и стоимости доставки.
  • При работе с сервисом Яндекс GO, с помощью которого вы можете доставлять товары вашим клиентам.
  • При создании [ds]пользовательских полей[/ds][di] Пользовательское поле – инструмент, позволяющий добавлять к объектам системы поля, не предусмотренные штатным функционалом.

    Подробнее в курсе "Разработчик Bitrix Framework"...[/di] (тип "Адрес").

Впоследствии модуль заменит Местоположения 2.0 в модуле Интернет-магазин.

Документация по теме:


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


Настраиваем модуль

Настройки модуля задают возможности работы с адресами - использования карт, указателей, фотографий мест и др.

Управление настройками модуля выполняется на странице настройки модуля Адреса и местоположения (Настройки > Настройки продукта > Настройки модулей > Адреса и местоположения).

Нажмите на рисунок, чтобы увеличить

На закладке Настройки можно выбрать национальный [dw]Формат адреса[/dw][di]A_M2.png[/di] из списка. Список постоянно пополняется и расширяется новыми форматами. Здесь же задается уровень журналирования ошибок и обращений.

На закладке [dw]Источники[/dw][di]A_M3.png[/di] внесите полученные на [dw]Google Maps Platform[/dw][di]Google Maps Platform- это набор API и библиотек для размещения карт Google на вашем сайте, в приложении для Android и iOs, а также во внутренних системах компании, например CRM и ERP.
Подробнее...[/di] ключи API с соответствующими правами. Подробная инструкция по получению ключей приведена в [dw]Пользовательской документации[/dw][di]Чтобы в поле «Адрес» в реквизитах компаний автоматически выводились подсказки от Google или чтобы можно было указывать адрес непосредственно на карте понадобится 2 ключа.
Подробнее...[/di].

На закладке [dw]Доступ[/dw][di]A_M4.png[/di] задаётся уровень прав на доступ к модулю различных групп пользователей.



Бизнес-процессы

Бизнес-процессы – инструмент системы, обеспечивающий обработку документов в зависимости от последовательности действий (шагов, этапов, функций), совершаемых в заданном порядке и в определенных условиях.

Общая информация

Что такое Бизнес-процессы?

  Описание

Бизнес-процесс (БП) – это процесс обработки документа, для которого задана одна точка входа и несколько точек выхода и последовательность действий (шагов, этапов, функций), совершаемых в заданном порядке и в определенных условиях.

Другими словами «Бизнес-процесс» – последовательность действий, направленных на получение заданного результата.

Необходимо понимать, что БП – это программирование, но в большинстве случаев без написания кода. Говорить, что любой менеджер справится с созданием БП – это некоторое преувеличение. Требуется постановка задачи, алгоритмирование, тестирование – для этого нужны определенные навыки и базовая подготовка.

В системе все бизнес-процессы работают с документами (таким документом может быть файл, элемент инфоблока, элемент CRM) и их версиями. Для каждого документа (из инфоблока, списков или др.) существуют свои шаблоны бизнес-процессов. Поддерживаемые типы документов:

  • Элементы инфоблоков в административной части
  • Элементы универсального списка
  • Файлы из библиотеки документов («Битрикс24 в коробке»)
  • Элементы CRM («Битрикс24 в коробке»): Лид, Контакт, Компания, Сделка, Коммерческое предложение, Счета, Смарт-процессы;
  • "Виртуальный документ" (для бизнес-процессов организаций, реализуемых с помощью компонента [comp include_bizproc_wizards]Бизнес-процесс (комплексный компонент)[/comp] в публичной части сайта)

Где можно найти Бизнес-процессы

В продуктах компании 1С-Битрикс бизнес-процессы можно найти в следующих местах:

  Права на бизнес-процесс

В большинстве случаев для корректной работы модуля Бизнес-процессы необходимо произвести настройки прав доступа для пользователей и настройки инфоблоков.

При создании бизнес-процесса при выборе пользователей в настройках действий в форме [dwi include_bp_insert_value_form]Вставка значения[/dwi] выводятся только те пользователи, которые имеют соответствующий уровень доступа к типу документа, для которых создаётся бизнес-процесс.

Например, если в настройках информационного блока для определённой группы пользователей будет выставлен уровень прав Чтение, то они не будут иметь доступа к работе с бизнес-процессами инфоблока, хотя могут просматривать его элементы.

  Видеоматериалы

Рекомендуем посмотреть видеозаписи с [ds]вебинаров по Битрикс24[/ds][di]По ссылке вы найдете как активные, так и прошедшие вебинары. Для просмотра прошедших вебинаров
выберите Тему и нажмите Показать ещё:

[/di], в которых рассказывается о том, что такое бизнес-процессы, как с ними работать, а также рассмотрены примеры их использования. По указанной ссылке доступен список вебинаров начиная с 2015 года по настоящее время.

Так же будет полезно изучить курс Автоматизация бизнес-процессов.

Примечание: В данных роликах рассмотрен функционал в рамках сервиса Битрикс24, но общие сведения и принципы переносимы и на остальные продукты, в которых используются бизнес-процессы. Функционал может меняться со временем выхода новых версий и отличаться от показанного в роликах.


Вебинар Роботы и бизнес-процессы. RPA с точки зрения разработчика. Техноволна 1 от 06 апреля 2020.



Настройка модуля Бизнес-процессы

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

Информация в уроке актуальна только для продуктов «1С-Битрикс: управление сайтом» и коробочной версии «Битрикс24».

Общесистемные настройки модуля Бизнес-процессы в продуктах 1С-Битрикс: Управление сайтом и Битрикс24 в коробке задаются на странице Настройки > Настройки продукта > Настройки модулей > Бизнес-процессы. Детальное описание настроек в документации, ниже – расшифровка некоторых полей.

Нажмите на рисунок, чтобы увеличить

Ограничения на число бизнес-процессов в поле Максимальное количество одновременно запущенных над документом процессов служат для снижения нагрузки на сервер, на котором работает ваш проект. Значение определяется [dw]эмпирически[/dw][di]То есть опытным путём.[/di], в зависимости от производительности вашего сервера и потребностей организации. Начните с числа 2 (такое ограничение стоит в облачной версии Битрикс24) и по мере работы увеличите или уменьшите его.

Так же на нагрузку на сервер влияют значения в поле Минимальное время ожидания для действий. Эта настройка влияет на действия, где возможно ожидание: пауза, задания БП, а так же rest действия. Чем меньше время – тем больше нагрузка. Оптимальное значение подбирается эмпирически, в зависимости от производительности вашего сервера и потребностей организации. Начните с 5 минут (такое ограничение стоит в облачной версии Битрикс24) и по мере работы увеличите или уменьшите его.

Включить режим совместимости для типа "Привязка к сотруднику" – это поле используется только если есть проблемы со старыми, созданными до версии 12.5, шаблонами Бизнес-процессов.

Документация по теме:



Настройка инфоблоков на работу с бизнес-процессами

Информация в уроке актуальна только для продуктов «1С-Битрикс: управление сайтом» и коробочной версии «Битрикс24».
Для настройки [dw]работы[/dw][di]Один и тот же информационный блок не может работать и в режиме Документооборота и в режиме Бизнес-процессов.[/di] бизнес-процессов (БП) с инфоблоками необходимо выполнить ряд действий.

  Настройка инфоблоков

Для участия инфоблока в Бизнес-процессах:

  • Перейдем на страницу настройки свойств инфоблока (Контент > Инфоблоки > Типы инфоблоков > [Нужный_тип_инфоблока]) в административном разделе.
  • На вкладке Инфоблок в поле Участвует в документообороте или бизнес-процессах выбираем Бизнес-процессы:

    Если в системе не установлен модуль Документооборот, то поддержка бизнес-процессов включается с помощью опции Участвует в бизнес-процессах.

  Настройка прав доступа

Для работы с бизнес-процессами необходимо дать права для групп пользователей. Перейдем на вкладку Доступ настраиваемого инфоблока и назначим для соответствующих групп уровень доступа не ниже Бизнес-процессы:

Внимание! Уровень доступа Бизнес-процессы позволяет указанным группам пользователей только участвовать в бизнес-процессах. Чтобы пользователи смогли сами запускать БП, необходимо выставить более высокий уровень прав доступа для инфоблока – например, Изменение.

  Настройка автозапуска

Модуль Бизнес-процессы позволяет [dw]автоматически запускать[/dw][di]Примечание: Автоматический запуск БП рекомендуется для часто повторяющихся бизнес-процессов, для которых не требуется смена настроек.[/di] выбранные БП при создании/изменении элемента инфоблока. Есть два варианта включения автозапуска:

  • В форме настроек информационного блока:
    • Перейдем на вкладку Шаблоны бизнес-процессов настраиваемого инфоблока.
    • В строке с названием нужного бизнес-процесса установим флаг в поле Автозапуск: Создание и/или [dw]Изменение[/dw][di]Внимание! Не используйте режим Изменение для БП, которые могут вызывать сами себя. Это приведет к цикличности.[/di]. Если оба флажка сняты, запуск БП возможен только вручную.
    • Примечание: Если у вас установлена старшая редакция продукта (с модулем Дизайнер бизнес-процессов), то вы имеете возможность редактировать шаблоны типовых БП и создавать собственные, поэтому вам названия шаблонов типовых БП отображаются в виде ссылок и доступна ссылка Список шаблонов бизнес-процессов.

  • В настройках шаблона бизнес-процесса.

Для запуска бизнес-процесса вручную используйте пункт меню действий [dw]Запустить бизнес-процесс[/dw][di][/di] желаемого элемента инфоблока.

  Настройка формы создания/изменения элемента инфоблока

При создании/изменении элемента инфоблока пользователь указывает не только название и другие параметры, относящиеся к контенту, но и все параметры запускаемого бизнес-процесса. Для этого настроим саму форму редактирования элемента инфоблока. Перейдем на страницу со списком элементов инфоблока, а затем к форме редактирования некоторого элемента. По умолчанию вкладка Бизнес-процессы, на которой производится управление бизнес-процессами, отключена. Для её включения есть [dw]два способа[/dw][di][/di]:

  1. Выбираем команду Отменить настройки формы и все доступные вкладки появятся перед вами. Этот способ не удобен тем, что из всего, что появится, требуется только одна вкладка, остальные мешаются;
  2. Выберите команду Настройки. Откроется окно Настройка формы редактирования. В секции Доступные вкладки выберите Бизнес-процессы и нажмите кнопку , чтобы в форме создания/редактирования элемента была доступна вкладка Бизнес-процессы с соответствующими полями.

Теперь, например, в форме добавления новости в публичной части сайта будет доступна вкладка [dw]Бизнес-процессы[/dw][di][/di].



Учебный курс о бизнес-процессах

  Где найти информацию

Дальнейшее описание работы с бизнес-процессами вынесено в отдельный учебный курс – Бизнес-процессы. Он полностью посвящен этой теме и содержит всю необходимую информацию. В курсе представлены уроки и главы, в которых рассказывается о типах бизнес-процессов, их создании и настройке. Также в нём приведены практические примеры, рекомендации по оптимизации и материалы для разработчиков, описанные в отдельной главе.

Обратите внимание, что все материалы курса и практические задания сделаны для коробочной версии «Битрикс24», но бóльшая часть материала будет актуальна и для облачной версии. При этом для тех, кто интересуется бизнес-процессами в продукте «1С-Битрикс: Управление сайтом» (БУС) будет полезна только часть материала. Чтобы понимать, для каких продуктов подходит информация из урока, обращайте внимание на поле [dw]Недоступно в лицензиях[/dw][di][/di] в правом верхнем углу.

Для тех, кто планирует изучать учебный курс последовательно, мы подготовили уроки «Проверьте себя» и «Практические задания». А потренироваться вы сможете на демо версии корпоративного портала.

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

  Дополнительно

В «Битрикс24» автоматизацию в CRM можно легко настроить с помощью роботов. А ещё роботы есть в задачах.

  Список тем курса

В таблице представлены основные темы курса «Бизнес-процессы» со ссылками на соответствующие уроки / главы:

Тема и ссылка Описание
Общая информация Рассказываем, что такое бизнес-процессы и где их найти.
Настройка модуля Бизнес-процессы Описание настроек модуля в коробочных версиях.
Типы бизнес-процессов При помощи модуля Бизнес-процессы могут быть описаны два типа бизнес-процессов: последовательный и со статусами.
Типовые бизнес-процессы Типовые бизнес-процессы – образцы часто используемых процессов, которые сразу включены в состав продуктов «1C-Битрикс».
Журнал выполнения бизнес-процесса При разработке и использовании уже готовых процессов бывает необходимо узнать подробности выполнения того или иного процесса / действия. Для этого в системе предусмотрен журнал выполнения бизнес-процессов (лог).
Задания бизнес-процессов С помощью бизнес-процессов сотрудникам могут быть выданы различные задания.
Бизнес-процессы в CRM Отдельно рассмотрена работа с бизнес-процессами в CRM: особенности создания шаблонов, как и где запускать.
Дизайнер бизнес-процессов Специальный модуль, предназначенный для проектирования, создания и изменения бизнес-процессов.
Шаблоны бизнес-процессов Шаблон бизнес-процесса представляет собой последовательность шагов (действий) от начального к конечному, которые будут выполняться один за другим. Необходимо таким образом и в таком порядке составить шаги (действия), чтобы реализовать задуманный алгоритм и получить необходимый результат.
Форма «Вставка значения» При работе с бизнес-процессом в параметрах действий, параметрах шаблона и настройках статуса есть возможность указывать как собственный текст, заданный вручную, так и использовать различные переменные данные. Для этого используется специальная форма «Вставка значения».
Действия Последовательный бизнес-процесс строится из набора действий. Каждое действие выполняет определенную функцию и имеет собственные параметры.
Распространенные ошибки при работе с бизнес-процессами Бизнес процессы – важнейший инструмент, который позволяет автоматизировать рабочие процессы компании. Однако их использование требует определенного навыка и осторожности. В противном случае бизнес-процессы создадут значительную нагрузку на проект.
Каталог примеров В главе приведены различные примеры создания и использования бизнес-процессов.
Бизнес-процессы для разработчика В этой главе рассмотрена работа с бизнес-процессами с точки зрения разработчика.


Блоги

[dw]Блог[/dw][di] [/di] - это сетевой журнал (дневник), позволяющий вести тематические записи в хронологическом порядке.

Этот модуль - отличный инструмент для создания блогов на Вашем собственном сайте! Владелец блога может не только добавлять новые записи блога, но и получать комментарии посетителей относительно этих сообщений. Такой функционал блогов позволяет автору (владельцу блога) предлагать посетителям блога различные темы для обсуждения, организовывать обмен мнениями по поводу мыслей, высказанных в сообщениях блога, и т.п.

Возможности блогов

  Возможности модуля

Модуль Блоги позволяет:

  • создавать неограниченное число блогов;
  • управлять правами пользователей на доступ к блогам, в том числе правами на такие операции, как:
    • создание блога;
    • администрирование/модерирование блога;
    • чтение блога;
    • добавление новых сообщений;
    • добавление комментариев к чужим сообщениям;
  • использовать смайлики и теги при показе сообщений и комментариев;
  • создавать черновик сообщения;
  • использовать календарь сообщений;
  • импортировать блоги в RSS;
  • группировать сообщения блога по произвольным темам (tags);
  • создавать древовидные комментарии;
  • присоединять изображения и видео к сообщениям.

Внимание: В системе предусмотрено следующее правило: каждый пользователь (т.е. посетитель с уникальным логином и паролем) может завести только один блог.

  Основные понятия

Трактовка некоторых терминов отличается от привычных пользователям социальных сетей трактовок:

Владелец блога – пользователь, ведущий блог (создатель блога).

Псевдоним – имя пользователя (возможно, вымышленное), отображаемое всем посетителям. Псевдоним определяется в форме редактирования профайла пользователя.

Аватар – двухмерная или трехмерная картинка, анимированная или статичная, которая представляет пользователя в блоге.

Группа пользователей – для каждого блога может быть создан собственный набор групп пользователей, обладающих определенными правами на доступ к сообщениям и комментариям.

Друг – пользователь, добавленный в группу (или несколько групп), созданную владельцем блога, и обладающий определенными правами на доступ к блогам (например, правами на чтение сообщений и добавление комментариев). Список друзей пользователя отображается на странице с профайлом данного сотрудника.

Лента друзей – страница, содержащая список (выборку) последних записей друзей.

Группа блогов – совокупность блогов, обладающих некоторым общим признаком (например, блоги сотрудников одной компании) и доступных для показа на одном портале.

Сообщение (тема) – запись в блоге, принадлежащая владельцу или посетителю.

Категории сообщения – объединение сообщений блога по некоторому признаку (например, по признаку принадлежности к определенной тематике, по назначению).

Комментарий – ответ (реакция) посетителя на сообщение, высказывание посетителя по предложенной теме.

Постоянный адрес – абсолютный путь к сообщению блога в сети (например, http://www.bitrixsoft.ru/blog/trackback.php/bitrix/99) для использования в механизме [dw]Trackback.[/dw][di]Trackback — это механизм уведомления сайта A (на нем может находиться, например, некая «родительская» статья) о существовании некоторого другого сайта B (например, с «дочерней» статьей или некоторым комментарием). [/di]

  Работа с модулем и документация

Администратор производит только настройку модуля и настройку прав. Всю остальную работу, как правило, выполняет Контент-менеджер.

Документация по теме:



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

Глобальные параметры блогов определяются на странице настроек модуля Блоги (Настройки > Настройки продукта > Настройки модулей > Блоги).

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

Закладка Настройки модуля блогов позволяет определить:


  • максимально допустимые размеры аватара пользователя и прикрепляемого к сообщению изображения;
  • возможность использования псевдонимов, Trackback'а, CAPTCHA и пр.;
  • права на сообщения, комментарии, изображения (при неотмеченной опции Проверять права для изображений пользователь сможет просмотреть картинку из сообщения\комментария блогов по ссылке на нее, даже если для него стоит запрет на просмотр самого сообщения\комментария);
  • добавлять к ссылкам rel='nofollow' и тег <noindex> - при отмеченной опции ссылки исключаются из индексации и ранжирования в Яндексе и Рамблере;

  Шаблоны путей

Шаблоны путей к публичной части блогов настраиваются на соответствующей закладке в зависимости от используемых визуальных компонентов:


  Документация по теме




Настройка прав

Настройка прав

Права доступа к группам блогов, блогам и комментариям блогов настраиваются на закладке Права на доступ на странице административного раздела Настройки > Настройки продукта > Настройки модулей > Блоги. Если необходимо, чтобы у какого-либо пользователя было право не только чтения, но и создания блога, то необходимо причислить его к [dw]группе[/dw][di]Вы можете разделить пользователей по разным группам и задать каждой группе определенный набор прав на модули
Подробнее...[/di], для которой должно быть задано соответствующее право:


Каждый владелец блога может самостоятельно настраивать права доступа для него, но администратор может задать максимальную глубину такой настройки, выставив соответствующие параметры в Настройках модуля блогов:

То есть если Администратор укажет в настройках модуля "Максимальные права на сообщения для групп пользователей блога" уровня Запись, то Контент-менеджер уже не сможет дать группам пользователей блога (и стандартным группам, и [dw]Открытым[/dw][di]Открытые группы - группы, в которые и Вы сможете добавлять других пользователей, и другие пользователи сами смогут добавляться без Вашего участия
Подробнее...[/di] группам) права Модерирование и Администрирование.

Настройка прав доступа к сообщениям и комментариям блога выполняется также при создании или редактировании блога (как в публичном, так и в административном разделе) или сообщения блога.

Документация по теме:



Проверьте себя

Ответьте на несколько вопросов по теме Блоги, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Общее число блогов, которые можно создать на сайте, ограничено.
Верно
Неверно
2 Один пользователь может иметь только один блог.
Верно
Неверно
3 Администратору доступна опция запрета вставки видео в настройках модуля.
Верно
Неверно
4 Администратор и владелец блога имеют равные возможности по настройке прав доступа к блогу.
Верно
Неверно
5 Использование CAPTCHA в комментариях может определяться пользователем.
Верно
Неверно



Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. Установите для модуля Блоги следующие настройки:
    • Запретите использование псевдонимов;
    • Разрешите вставку видео;
    • Включите обязательную CAPTCHA.

    Решение

  2. Настройка права доступа:
    1. для неавторизованных пользователей максимальные права на комментарии - Запись с премодерацией;
    2. для группы Администраторы интернет-магазина права на доступ Создание блога

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Веб-аналитика и SEO

Модуль Веб-аналитика используется для сбора и анализа информации о посетителях веб-сайтов. На основании этих данных определяется веб-аудитория и изучается её поведение для принятия решений по развитию веб-ресурса.

Для работы по SEO в Битрикс создан специальный модуль Поисковая оптимизация. Работа модуля облегчает ежедневную работу по продвижению сайта в рейтингах поисковых машин.

Возможности веб-аналитики

Возможности Веб-аналитики

Модуль Веб-аналитика позволяет:

  • вести учет хитов, хостов, сессий, посетителей сайта;
  • вести учет посетителей, добавивших сайт в «Избранное»;
  • регистрировать все ссылающиеся сайты;
  • фиксировать поисковые фразы внешних поисковых систем и встроенной системы поиска;
  • анализировать посещения разделов и документов сайта;
  • вести учет посетителей по дням с выделением постоянной аудитории сайта;
  • выполнять онлайн-мониторинг посетителей на сайте;
  • блокировать или перенаправлять посетителя, добавляя его в стоп-лист;
  • отслеживать все сессии одного посетителя между посещениями сайта;
  • просматривать всю историю движения посетителя по сайту;
  • регистрировать события, происходящие на сайте и за его пределами;
  • контролировать ход рекламной кампании и получать подробные отчеты;
  • вести учет страниц, индексируемых внешними поисковыми системами;
  • автоматически чистить базу данных статистики в соответствии с настройками модуля.

Работа с модулем

Работа с модулем описана в курсе [ds]Продвижение сайта и Маркетинг[/ds][di]Чтобы увеличить аудиторию сайта и привлечь нужную вам группу посетителей, недостаточно разместить информацию о сайте в каталогах, поисковых системах или обменяться кнопками с партнерами. Для успешного развития проекта необходимо заниматься целевой рекламой сайта и расходовать на это деньги.

Подробнее ...[/di].

Документация по теме:


Настройки модуля Веб-аналитика

Настройки модуля задают параметры обработки рекламных кампаний, определения страны и города по IP-адресу, параметры сбора статистики и управляют правами доступа к модулю.

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

Параметры по умолчанию в форме настройки приемлемы для большинства пользователей. Изменять их рекомендуется только с пониманием возможного результата. Большинство значений полей ясно из их названия, мы дадим расшифровку только тех, которые могут вызвать затруднение. Более подробно о значениях полей в форме настроек модуля можно ознакомиться на странице [comp include_settings_va]Настройки модуля "Веб-аналитика"[/comp] пользовательской документации.

В [dwi include_admin_area]административном разделе[/dwi] на странице Настройки модуля (Настройки > Настройки продукта > Настройки модулей > Веб-аналитика) откроется форма настройки параметров модуля:

Нажмите на рисунок, чтобы увеличить

В закладке Настройки обратите внимание на поля:

  • В поле Когда отослать очередной статистический отчет по EMail указывается время суток, когда производить автоматическую рассылку отчетов по статистике на [dw]почтовый ящик администратора сайта[/dw][di] Адрес почтового ящика задается в настройках Главного модуля.[/di]. Если поле пустое - отчет не будет отсылаться.
  • Поле Максимальное кол-во показываемых записей в таблицах позволяет задать число записей, которые используются при составлении отчетов. Изменение текущего значения в большую сторону позволит получать более точную аналитику, но и потребует большего количества ресурсов, необходимых серверу для обработки запроса и тем больше времени надо для отработки статистических страниц.
  • Если ваш сайт работает с базой MySQL, то можно включить функцию Оптимизировать таблицы при очистке?, которая автоматически оптимизирует таблицы MySQL при удалении устаревшей статистической информации (по полям Сколько дней хранить... закладки Время хранения). Это позволит снизить нагрузку на систему.

Cекция Ограничение активности позволяет ограничить доступ клиентов к сайту или блокировать доступ полностью в зависимости от установленных параметров, установить защиту от массовых скачиваний сайта специальными программами-грабберами (Teleport Pro, Free Download Manager, HTTrack).


На закладке [dw]Рекламные кампании[/dw][di][/di] изменения значений не рекомендуются, если вы не представляете себе последствий ваших действий.


На закладке [dw]Страна и город[/dw][di][/di] выполняется настройка параметров определения страны и города посетителя по IP адресу. С помощью колонки Будет использован выберите доступный и необходимый вам источник определения города и страны по IP-адресу. Либо установите и настройте дополнительные источники определения страны и города, используя соответствующие ссылки.


На закладке [dw]Настройка данных[/dw][di][/di] с целью снижения нагрузки на систему можно снять флажок с поля Собирать данные для отчета "Пути по сайту"?.

Параметры закладки [dw]Время хранения[/dw][di][/di] задают максимальное время хранения каждого события в днях. Каждый параметр имеет флаг очистить, который позволяет удалить статистику по данному параметру. Очистка информации происходит по нажатию на кнопку Сохранить.

Примечание: Большой период времени хранения приведет к увеличению размера базы данных статистики.

На закладке [dw]Исключения[/dw][di][/di] настраиваются правила кого считать в статистике посещений, кого нет. Можно задать ограничения по группам, IP адресам или по обоим параметрам вместе.


На закладке Доступ задаётся уровень прав на доступ к модулю различных групп пользователей.

  Служебные процедуры

Служебные процедуры предназначены для оптимизации работы сервера. Доступны:

  • Очистка БД от устаревших данных. (Исключение составляют таблица поисковиков (здесь будут сброшены только счетчики) и таблицы привязки IP-адресов к странам.)

  • Оптимизация таблиц модуля Веб-аналитика для уменьшения их размера и увеличения производительности.

  Документация по теме




Подключение сторонних сервисов веб-аналитики

Как оценить эффективность и посещаемость сайта? Как понять, в какую сторону развивать свой веб-ресурс? Эти вопросы помогает решить специальная система сбора и анализа данных веб-сайтов – [ds]веб-аналитика.[/ds][di] Веб-аналитика (англ. Web analytics) — система измерения, сбора, анализа, представления и интерпретации информации о посетителях веб-сайтов с целью их улучшения и оптимизации.
Основной задачей веб-аналитики является мониторинг посещаемости веб-сайтов, на основании данных которого определяется аудитория сайта и изучается поведение посетителей для принятия решений по развитию и расширению функциональных возможностей веб-ресурса.
Веб-аналитика позволяет не только работать над улучшением сайтов, но и проводить работы по оптимизации бюджета на онлайн-продвижение.

Подробнее...[/di]

Есть множество инструментов веб-аналитики, помогающих получить наглядные отчеты о количестве посетителей сайта и об их "поведении" на сайте. В этой главе вы узнаете, как подключить наиболее известные и популярные инструменты (список будет увеличен по мере добавления нового функционала в "1С-Битрикс: Управление сайтом"):
  • Яндекс.Метрика
  • Google Analytics и Google Tag Manager

Подключение счётчиков Яндекс.Метрики

Подключение счётчиков Яндекс.Метрики

Рассмотрим, как подключить один из удобных инструментов веб-аналитики – Яндекс. Метрику.

  1. Создайте учетную запись на Яндексе. Если у вас уже есть учетная запись, нажмите кнопку Перейти на странице Метрики;
  2. Примечание: Если вы являетесь владельцем рекламной кампании в Яндекс.Директе или ваш интернет-магазин является партнером Яндекс.Маркета, рекомендуем при авторизации использовать логин, зарегистрированный в этих сервисах. Это позволит вам быстро переходить с сервиса на сервис.

  3. Создайте счетчик, нажав кнопку [dw]Добавить счетчик.[/dw][di] [/di] Откроется страница настроек счетчика (первый этап):

    Настройки счётчика

  4. На следующем этапе выберите способ установки кода счетчика Метрики HTML (т.к. в дальнейшем мы будем вставлять html-код счётчика в шаблон нашего сайта) и включите опцию Электронная коммерция – это позволит отслеживать взаимодействие посетителей с товарами сайта. Подробнее о подключении электронной коммерции читайте в [ds]следующем уроке.[/ds][di] Электронная коммерция Яндекс позволяет оценить эффективность работы Вашего интернет-магазина (например, какие товары или бренды пользуются наибольшим спросом или какие источники приносят наибольший доход) с помощью [ds]наглядных отчётов.

    Подробнее...[/di]

    Примечание: При работе с Битрикс24 выберите способ установки CMS и конструкторы сайтов (т.к. в Битрикс24 есть готовый плагин, в котором нужно только указать номер Вашего счётчика), и далее действуйте согласно [ds]соответствующей инструкции.[/ds][di] Яндекс.Метрика — сервис для оценки посещаемости веб-сайтов, и анализа поведения пользователей. Для его использования на Битрикс24.Сайтах необходимо ввести номер счетчика в настройках сайта или отдельной страницы.

    Подробнее...[/di]

    В [dw]Дополнительных настройках[/dw][di] [/di] укажите валюту, с которой хотите работать.

  5. Далее скопируйте код счетчика, нажав соответствующую [dw]кнопку.[/dw][di] [/di]
  6. Откройте шаблон вашего сайта в режиме изменения (Настройки > Настройки продукта > Сайты > Шаблоны сайта (шаблон нужного сайта)):

    Нажмите на рисунок, чтобы увеличить

    Примечание: Если один шаблон используется для [ds]нескольких сайтов[/ds][di] В Bitrix Framework имеется возможность на базе одного экземпляра продукта создавать и поддерживать неограниченное количество сайтов (кроме лицензий "Первый сайт" - 1 сайт и "Старт" - 2 сайта).

    Подробнее...[/di], то сначала скопируйте этот шаблон, [ds]примените[/ds][di] Откройте в Административном разделе страницу Настройки > Настройки продукта > Сайты > Список сайтов. С помощью меню действий откройте для редактирования нужный сайт.

    Выберите шаблон, который вы хотите применить, и условия. Рекомендуем пользоваться функцией предпросмотра с помощью иконки для проверки верности выбора шаблона.

    Подробнее...[/di] скопированный шаблон к нужному сайту и затем вставьте в этот шаблон код счётчика, как описано в следующем пункте.

  7. Скопированный код счётчика добавьте в файл, как описано в инструкции Яндекс: между тегами <head></head> или <body></body>. Например так:

  8. Нажмите кнопку [dw]Начать пользоваться.[/dw][di] [/di]

Готово! Счетчик Яндекс.Метрики [dw]подключен![/dw][di] [/di] Вы можете отслеживать его на странице счетчиков Яндекс.Метрики

В следующих уроках смотрите, как в Яндекс.Метрике настраивать и использовать Электронную коммерцию и Цели.

Примечания: При необходимости Вы можете изменить параметры созданного счетчика на странице [dw]Настройки.[/dw][di] [/di] Однако после внесения изменений не забудьте скопировать новый код и заменить его в шаблоне сайта.

Допускается создание нескольких счётчиков. О том, как их разместить на сайте, читайте в Яндекс Справке.



Как подключить электронную коммерцию Яндекс

Как подключить электронную коммерцию Яндекс

Электронная коммерция Яндекс позволяет оценить эффективность работы Вашего интернет-магазина (например, какие товары или бренды пользуются наибольшим спросом или какие источники приносят наибольший доход) с помощью [ds]наглядных отчётов.[/ds][di] Информацию о товарах и брендах, которые пользуются наибольшим спросом содержат
отчеты Популярные товары, Популярные категории и бренды.

Общую информацию о доходах сайта и источниках, которые приносят наибольший
доход (например, поисковые системы, реклама или прямые переходы) — отчет Заказы.

Детализированную информацию о составе заказов, товарах, которые были добавлены
в корзину и товарах, которые были куплены, содержат отчеты Содержимое заказов,
Товары в корзине, Заказанные товары, Промокоды.

Подробнее...[/di]

Важно! Указанное в уроке решение доступно для редакций продукта Малый бизнес и выше.

Если в настройках компонентов Вашего сайта нет опции Включить отправку данных в электронную торговлю, то вероятная причина – использование [ds]кастомизированного[/ds][di] Кастомизация шаблона компонента, как правило, преследует две цели:

1) Приведение формы вывода данных компонента в соответствие с дизайном сайта;

2) Организация вывода данных компонента в виде, недоступном в стандартном варианте.

Подробнее...[/di] (изменённого) шаблона компонента, в котором отсутствуют необходимые параметры в файле .parameters.php.

Установите [dw]стандартный[/dw][di] [/di] шаблон (.default или bootstrap_v4) и проверьте наличие указанной опции. Если опция появилась, то можете либо использовать стандартный шаблон, либо обратиться к разработчику компонента Вашего сайта за необходимыми доработками.

Для использования возможностей электронной коммерции необходимо выполнить два действия:

  1. Создайте и подключите к сайту счетчик Яндекс.Метрики, отметив опцию Электронная коммерция (эти действия подробно описаны в [ds]предыдущем уроке[/ds][di] Рассмотрим, как подключить один из удобных инструментов веб-аналитики - Яндекс. Метрику:

    - Создайте учетную запись на Яндексе. Если у вас уже есть учетная запись, нажмите кнопку Войти на странице Метрики;

    - Создайте счетчик, нажав кнопку Добавить счетчик..

    Подробнее...[/di]);

    Если же счетчик Яндекс.Метрики уже подключен, то проверьте, включена ли эта опция в Настройке счетчика:

    Примечание: Если Электронная коммерция ранее была выключена в Вашем счётчике, то после её включения обновите [ds]код счётчика в шаблоне сайта[/ds][di] Код счётчика необходимо скопировать из настроек Яндекс.Метрики и заново добавить в шаблон Вашего сайта (Настройки > Настройки продукта > Сайты > Шаблоны сайта (шаблон нужного сайта)), как описано в пунктах 4-6 соответствующего урока.[/di]. Убедитесь, что код счётчика в шаблоне сайта содержит строку: ecommerce:"dataLayer".

  2. В Вашем интернет-магазине [dw]отредактируйте страницы[/dw][di] [/di] каталога товаров, корзины и оформления заказа: на каждой из этих страниц найдите соответствующий [dwi include_component]компонент[/dwi] и в его настройках включите отправку данных в электронную торговлю:
    • страница [dw]Каталог[/dw][di]Вам необходимо найти на сайте страницу, на которой выводится каталог товаров:

      [/di] (компонент [comp include_62978]catalog[/comp]):

    • страница [dw]Корзина[/dw][di]Вам необходимо найти на сайте страницу, на которой выводится корзина покупателя:

      [/di] (компонент [comp include_63316]sale.basket.basket[/comp]):

    • страница [dw]Оформление заказа[/dw][di]Вам необходимо найти на сайте страницу, на которой выводится форма оформления заказа:

      [/di] (компонент [comp include_146775]sale.order.ajax[/comp]):

      Настройки компонента sale.order.ajax (Оформление заказа) имеют [dw]дополнительные опции[/dw][di] Опции Использовать цели счётчика Яндекс.Метрики, а также номер счётчика и настройки целей. [/di] для подключения еще одного функционала Яндекс.Метрики – Целей. Об этом подробнее читайте в [ds]следующем уроке.[/ds][di] Цели Яндекс.Метрики позволяют отслеживать конкретные действия посетителей сайта.

      Рассмотрим, как использовать Цели для отслеживания действий при оформлении заказа (компонент sale.order.ajax).

      Подробнее...[/di]

    Примечание: Имя контейнера данных (dataLayer) не нужно менять - оно соответствует имени контейнера, заданному при настройке Яндекс.Метрики.

    Свойство брендов (или Свойство, в котором указан бренд товаров) - выберите свойство инфоблока, откуда система должна брать название бренда товара (производитель, марка, модель и т.п.).

Готово! В течение нескольких часов Вам станут доступны [ds]отчёты[/ds][di] Группа отчетов позволяет анализировать данные, относящиеся к электронной коммерции.

Для формирования отчетов необходимо использовать возможности сервиса по учету и анализу данных электронной коммерции — Ecommerce. При первой передаче данных отчеты станут доступны в течение нескольких часов.

Подробнее...[/di] по электронной коммерции (Отчёты > Стандартные отчеты > Электронная коммерция > (нужный тип отчета)):

Нажмите на рисунок, чтобы увеличить

Примеры отчётов.

Примечание: Все отчеты (кроме отчета Содержимое заказа) поддерживают возможность [ds]настройки.[/ds][di] Ниже описаны инструменты, с помощью которых вы можете настроить вид отчета:
1. Виды диаграмм.
2. Сегментация.
3. Точность данных.
4. Период отчета.
5. Детализация данных по времени.
6. Модели атрибуции.
7. Отображение данных в таблице.
8. Группировки и метрики.
9. Примечания на графике.
10. Достоверность данных.
11. Выбор цели.
12. Уточнение числовых показателей.
13. Отображение данных на диаграмме.
14. Сортировка данных по показателю.

Подробнее...[/di]


Цели Яндекс.Метрики: статистика оформленных заказов.

Цели Яндекс.Метрики: статистика оформленных заказов.

Цели Яндекс.Метрики позволяют отслеживать [dw]конкретные действия[/dw][di] В Яндекс.Метрике вы можете настроить следующие типы целей:

- Количество просмотров. Просмотр определенного числа страниц сайта.

- Посещение страниц. Просмотр заданных страниц сайта.

- Отследить клик на email. Отслеживание нажатия на все адреса на сайте или на указанный адрес.

- Отследить клик на телефон. Отслеживание нажатия на все номера телефонов на сайте или на
указанный номер.

- JavaScript-событие. Информация о достижении цели передается с помощью JavaScript (например,
нажатие кнопки «Отправить заявку»).

- Составная цель. Сочетает в себе перечисленные выше типы целей.

Подробнее... [/di] посетителей сайта.

В предыдущих уроках мы разобрали, как [ds]подключить счётчик[/ds][di] Рассмотрим, как подключить один из удобных инструментов веб-аналитики – Яндекс. Метрику.

Создайте учетную запись на Яндексе. Если у вас уже есть учетная запись, нажмите кнопку Войти на странице Метрики.

Подробнее...[/di] Яндекс.Метрики и как [ds]подключить электронную коммерцию[/ds][di] Электронная коммерция Яндекс позволяет оценить эффективность работы Вашего интернет-магазина (например, какие товары или бренды пользуются наибольшим спросом или какие источники приносят наибольший доход) с помощью наглядных отчётов.

Подробнее...[/di] Яндекс.

Теперь рассмотрим, как использовать Цели для отслеживания действий при оформлении заказа (компонент [comp include_146775]sale.order.ajax[/comp]).

  1. В настройках параметров [dwi include_component]компонента[/dwi] sale.order.ajax во вкладке Настройки аналитики отметьте следующие опции:
    • Использовать цели счетчика Яндекс.Метрики
    • Отправлять данные электронной торговли в Google и Яндекс (возможность отслеживать метрики добавления/удаления/покупки товаров)

    Появятся дополнительные поля настроек:

    Примечание: Обратите внимание на поля типа Идентификатор цели при .... Это названия как раз тех событий процедуры оформления заказа, которые можно отслеживать с помощью инструмента Цели Яндекс.Метрики. Ознакомьтесь с этими полями и скопируйте имена нужных вам событий (позднее при создании Целей нужно будет прописывать эти названия).

  2. Скопируйте [dw]номер[/dw][di] [/di] ранее созданного счётчика Яндекс.Метрики и вставьте его в [dw]соответствующее поле[/dw][di] [/di] настроек компонента sale.order.ajax;
  3. Далее в Яндекс.Метрике в разделе Цели (Счётчики > [созданный ранее счётчик] > Цели) нажмите кнопку Добавить цель:

  4. В открывшемся окне выберите тип условия JavaScript-событие, укажите название цели.

    В поле Идентификатор цели вставьте один из [dw]Идентификаторов цели[/dw][di] [/di], указанных в настройках компонента sale.order.ajax, и сохраните изменения.

    Возможные идентификаторы цели (компонент [comp include_sale_order_ajax]sale.order.ajax[/comp])

Готово! Теперь на странице счетчиков Яндекс.Метрики вы сможете отслеживать число выполненных на вашем сайте определенных действий:

Нажмите на рисунок, чтобы увеличить



Подключение Google Аналитики и Google Tag Manager

  О подключении Google Аналитики и Google Tag Manager

Еще один вид счетчика событий (т.е. клиентских "кликов" по определенным местам/кнопкам сайта) - [ds]Google Аналитика.[/ds][di] Google Analytics (сокращённо GA) — бесплатный сервис, предоставляемый Google для создания детальной статистики посетителей веб-сайтов. Статистика собирается на сервере Google, пользователь только размещает JS-код на страницах своего сайта. Код отслеживания срабатывает, когда пользователь открывает страницу в своем веб-браузере (при условии разрешенного выполнения Javascript в браузере).

Подробнее...[/di]

Для отслеживания событий магазина в Google Аналитике воспользуемся новым инструментом от Google - [ds]Google Tag Manager.[/ds][di] Google Tag Manager — бесплатный инструмент для управления маркетинговыми активностями и отслеживанием тегов (меток) на сайте. Причем тегируются посетители сайта, выполнивших определенные действия на сайте. Таким образом, можно отследить реальное количество уникальных посетителей.

Подробнее...[/di]

Примечание: Можно подключить один из счетчиков: или Google Аналитики, или Google Tag Manager (в зависимости от того, каким функционалом Вы хотите пользоваться).

Google Аналитика позволяет отслеживать посещаемость сайта.
Google Tag Manager имеет расширенный функционал (не только посещаемость, но и [ds]события магазина[/ds][di] Отслеживаемые события магазина:

showDetail - детальный просмотр товара;

addToCart - добавление товара в корзину;

checkout - переход на страницу оформления заказа;

purchase - завершение оформления заказа (заказ совершен).

removeFromCart - удаление товара из корзины.

Подробнее...[/di], а также детальные [ds]отчеты[/ds][di] В Google Analytics представлены перечисленные ниже стандартные отчеты по
электронной торговле. Для работы с дополнительными отчетами настройте отслеживание
расширенной электронной торговли.

Стандартные отчеты:

Обзор. Сводные данные – Доход, Коэффициент транзакций, Количество транзакций, Средняя стоимость
заказа и другие показатели.

Эффективность товаров. Доход от продукта, Покупки, Количество, Средняя цена и
Среднее количество с разбивкой по Коду товара и Категории.

Эффективность продаж. Доход с разбивкой по Дате.

Транзакции. Доход, Налог, Доставка и Количество с разбивкой по Идентификатору транзакции.

Время до покупки. Число дней до транзакции и Сеансы до транзакции.

Подробнее...[/di] по товарам.

Google Аналитику можно настроить во всех редакциях продукта "1С-Битрикс: Управление сайтом", а Google Tag Manager имеет смысл настраивать в редакциях Малый бизнес и выше (т.к. настраиваемые события связаны с передачей информации интернет-магазина).

В данном уроке рассмотрим, как подключить оба инструмента (Вы можете выбрать один на свое усмотрение). Вне зависимости от подключаемого инструмента все результаты (отчеты) будут выводиться на странице Google Аналитики.

Принцип подключения Google Аналитики и Google Tag Manager такой же, что и Яндекс.Метрики: необходимо зарегистрироваться на соответствующих ресурсах, получить коды отслеживания и вставить их в шаблон сайта.

  Процесс подключения пошагово

Разберем процесс подключения пошагово:

  1. Создайте аккаунт Google. Если у вас уже есть аккаунт, авторизуйтесь и нажмите кнопку [dw]Далее[/dw][di] [/di];
  2. [dw]Создайте[/dw][di] [/di] аккаунт Google Аналитики или, если он у вас уже есть, войдите в него.

    Выберите Веб-сайт, укажите [dw]название аккаунта.[/dw][di] Название аккаунта лучше выбрать такое, по которому будет легче понять его назначение. [/di] Пропишите также название сайта и введите его [dw]URL.[/dw][di] Необходимо выбрать стандарт протокола (http:// или https://) и ввести доменное имя (доменное имя вводится без каких-либо дополнительных символов, а также без косой черты в конце). [/di] Выберите категорию отрасли и укажите [ds]часовой пояс для отчетов.[/ds][di] Этот параметр используется в отчетах при разделении суток.

    Выбранный часовой пояс влияет лишь на представление данных в отчетах,
    а не на процесс их сбора. Например, если вы выберете "США, Тихоокеанское время",
    то начало и конец каждого дня будут определяться по тихоокеанскому времени, даже
    если посетители живут в Нью-Йорке, Лондоне или Москве.

    Если ваш аккаунт Google Аналитики связан с Google Рекламой, будет автоматически
    выбран часовой пояс, заданный в настройках Google Рекламы. Изменить его вы
    не сможете. Это делается для того, чтобы обеспечить точность отчетов по
    кампаниям Google Рекламы.

    Изменение часового пояса повлияет только на данные, которые будут получены
    в дальнейшем. Текущие отчеты останутся прежними. Если вы обновите свой часовой
    пояс после начала использования ресурса, в данных отчетов может появиться ровная
    полоса или пик. В течение некоторого времени после изменения этой настройки отчеты
    могут создаваться по часовому поясу, который использовался ранее.
    Подробнее... [/di]

    Кликните на кнопку [dw]Получить идентификатор отслеживания,[/dw][di] [/di] и далее примите "Условия использования Google Аналитики", предварительно ознакомившись с ними;

  3. Скопируйте Идентификатор отслеживания и Код отслеживания (идентификатор отслеживания понадобится нам в следующем уроке):

    Нажмите на рисунок, чтобы увеличить

  4. Теперь [dw]создайте аккаунт[/dw][di] [/di] на Google Tag Manager:
    • Настройте [dw]аккаунт;[/dw][di] [/di]
    • Настройте [dw]контейнер[/dw][di] [/di] (создается автоматически при создании аккаунта).
  5. Прочитайте и примите "Соглашение об Условиях использования Диспетчера тегов".
  6. Скопируйте Код Диспетчера тегов Google:

  7. Откройте шаблон вашего сайта в режиме изменения (Настройки > Настройки продукта > Сайты > Шаблоны сайта (шаблон нужного сайта)):

    Нажмите на рисунок, чтобы увеличить

  8. Скопированные Код Диспетчера тегов Google или Код отслеживания (в зависимости от подключаемого инструмента) добавьте в шаблон сайта:


    Примечания:
    1. Код отслеживания 1 и одна часть Кода Диспетчера тегов Google 2 вставляются в [dw]header[/dw][di] Header - файл, который отвечает за генерацию заголовка всех страниц сайта. [/di] шаблона сайта, а вторую часть Кода Диспетчера тегов Google 3 нужно вставить после открывающего тега <body>.
    2. В некоторых случаях модуль Проактивная защита может модифицировать часть кода, в частности <script> менять на <sc ript>. В этом случае нужно добавить эту часть кода в [ds]Исключения Ативируса[/ds][di]При необходимости могут быть заданы исключения из проактивного фильтра (закладка Исключения), т.е. проактивный фильтр не будет применяться на страницах, указанных на данной закладке.

      Подробнее ...[/di]

Готово! Google Аналитика и Google Tag Manager подключены!

Вы сразу сможете просматривать множество отчетов [dw]в режиме реального времени[/dw][di] [/di]: количество посетителей на сайте, основные активные страницы и т.д. (Отчёты > В режиме реального времени).

В [ds]следующем уроке[/ds][di] В этом уроке рассмотрим, как создать тег с триггерами для отслеживания следующих событий:
showDetail - детальный просмотр товара;
addToCart - добавление товара в корзину;
checkout - переход на страницу оформления заказа;
purchase - завершение оформления заказа (заказ совершен).
Подробнее...[/di] вы узнаете, как пользоваться Google Tag Manager и настраивать теги.



Создание тегов Google Tag Manager для событий интернет-магазина

  Теги для событий магазина

В [ds]предыдущем уроке[/ds][di] Еще один вид счетчика событий (т.е. клиентских "кликов" по определенным местам/кнопкам сайта) - Google Аналитика.

Для отслеживания событий в Google Аналитике воспользуемся новым инструментом от Google - Google Tag Manager.

Принцип подключения Google Аналитики и Google Tag Manager такой же, что и Яндекс.Метрики: необходимо зарегистрироваться на соответствующих ресурсах, получить коды отслеживания и вставить их в шаблон сайта.

Разберем процесс подключения пошагово:
Подробнее...[/di] мы разобрались, как подключить на сайт счетчики Google.

В этом уроке вы узнаете, как создать [dw]тег[/dw][di] Теги — это метка-идентификатор, представляющая собой кусочек JavaScript-кода. [/di] с [dw]триггерами[/dw][di] Триггеры — это условия срабатывания тегов. [/di] для отслеживания покупательской активности (событий) в интернет-магазине:

  • showDetail - детальный просмотр товара;
  • addToCart - добавление товара в корзину;
  • checkout - переход на страницу оформления заказа;
  • purchase - завершение оформления заказа (заказ совершен);
  • removeFromCart - удаление товара из корзины.

Примечание: О том, как задать срабатывание тегов не только на события интернет-магазина, но и на множество других событий или переменных, читайте [ds]в соответствующем уроке.[/ds][di] Вы можете задать срабатывание тегов не только на события интернет-магазина ,
но и на множество других событий или переменных. Например, на такие, как нажатие
определенной кнопки, скачивание файла, или на переменную "общая сумма покупки".

Для таких потребностей рекомендуется использовать Google Tag Manager
совместно с уровнем данных .

Очень удобно использовать уровень данных при отслеживании таких
событий взаимодействия пользователя с элементами сайта, при которых не меняется
URL страницы (например, открытие слайдера, попапа и других всплывающих элементов,
заполнение или отправка формы и т.п.).

Подробнее...[/di]

Рассмотрим пошагово, как с помощью тегов Google Tag Manager отследить указанные выше [dw]события интернет-магазина.[/dw][di] [/di]

  Создание тегов Google Tag Manager

  1. Прежде всего, [dw]отредактируйте[/dw][di] [/di] на Вашем сайте страницы каталога, корзины и оформления заказа: на каждой из этих страниц найдите [dwi include_component]компонент[/dwi], отвечающий за вывод информации. В настройках параметров таких компонентов (sale.order.ajax, sale.basket.basket и catalog) во вкладке Настройки аналитики отметьте опцию [dw]Отправлять данные электронной торговли в Google и Яндекс[/dw][di] [/di] (возможность отслеживать метрики добавления/удаления/покупки товаров);

    Важно! Указанное в уроке решение доступно для редакций продукта Малый бизнес и выше.

    Если в настройках компонентов Вашего сайта нет опции Отправлять данные электронной торговли в Google и Яндекс, то вероятная причина – использование [ds]кастомизированного[/ds][di] Кастомизация шаблона компонента, как правило, преследует две цели:

    1) Приведение формы вывода данных компонента в соответствие с дизайном сайта;

    2) Организация вывода данных компонента в виде, недоступном в стандартном варианте.

    Подробнее...[/di] (изменённого) шаблона компонента, в котором отсутствуют необходимые параметры в файле .parameters.php.

    Установите [dw]стандартный[/dw][di] [/di] шаблон (.default или bootstrap_v4) и проверьте наличие указанной опции. Если опция появилась, то можете либо использовать стандартный шаблон, либо обратиться к разработчику компонента Вашего сайта за необходимыми доработками.

  2. Далее в Google Tag Manager[dw]создайте триггеры:[/dw][di] [/di]

    Здесь укажите имя нужного события и выберите в качестве типа триггера [dw]Пользовательское событие[/dw][di] [/di]

    Посмотреть скриншоты настроек всех триггеров.
  3. Теперь [dw]создайте тег.[/dw][di] [/di] Потребуется настроить конфигурацию тега и добавить созданные триггеры.

    Необходимые настройки конфигурации тега:

    • Тип тега - [dw]Google Аналитика - Universal Analytics[/dw][di] [/di]
    • Тип отслеживания - Событие
    • Категория - указывается произвольное имя
    • Действие - [dw]Event[/dw][di] [/di]
    • Ярлык - [dw]Page URL[/dw][di] [/di]
    • Не взаимодействие - False
    • Настройки Google Analytics - [dw]Настройки Google Analytics[/dw][di] [/di]
    • Включить переопределение настроек в этом теге - отметьте эту опцию, и в появившемся окне укажите скопированный ранее [dw]Идентификатор отслеживания[/dw][di] [/di]

    Примечание: Если Вы хотите видеть детальные отчеты по товарам (а не только по событиям), то необходимо подключить Электронную торговлю Google (см. [ds]урок[/ds][di] Для использования возможностей электронной торговли необходимо выполнить два действия:

    1) Подключите к своему интернет-магазину Google Tag Manager и создайте тег. При настройке тега необходимо в Дополнительных условиях настроить Электронную торговлю.

    2) Включите отслеживание электронной торговли в Google Аналитике (Администратор > Представление > Настройки электронной торговли).

    Подробнее...[/di]). Для этого при настройке тега необходимо в Дополнительных условиях настроить опцию [dw]Электронная торговля.[/dw][di] [/di]

    После настройки конфигурации тега [dw]добавьте созданные триггеры.[/dw][di] [/di]

  4. Теперь нужно, чтобы созданные тег с триггерами начали работать. Для этого нажмите в правом верхнем углу экрана кнопку [dw]Отправить.[/dw][di] [/di] В открывшемся окне укажите [dw]название и описание версии[/dw][di] [/di] настроек (название и описание указываются произвольно), и нажмите кнопку Опубликовать.

Готово! Тег с триггерами создан и уже начал работать.

  Результат

Проверить правильность настройки триггеров можно в режиме реального времени на странице Google Аналитики (Отчёты > В режиме реального времени > События):

Нажмите на рисунок, чтобы увеличить



Уровень данных

  Если нужно отследить другие события или переменные

Вы можете задать срабатывание тегов не только на [dw]события интернет-магазина[/dw][di] showDetail - детальный просмотр товара;
addToCart - добавление товара в корзину;
checkout - переход на страницу оформления заказа;
purchase - завершение оформления заказа (заказ совершен);
removeFromCart - удаление товара из корзины.[/di], но и на множество других событий или переменных. Например, на такие, как нажатие определенной кнопки, скачивание файла, или на переменную "общая сумма покупки".

Для таких потребностей рекомендуется использовать Google Tag Manager совместно с [dw]уровнем данных[/dw][di]Уровень данных – это объект, содержащий всю информацию, которую требуется передавать в Менеджер тегов.[/di].

Очень удобно использовать уровень данных при отслеживании таких событий взаимодействия пользователя с элементами сайта, при которых не меняется URL страницы (например, открытие слайдера, попапа и других всплывающих элементов, заполнение или отправка формы и т.п.).

Уровень данных – это объект (массив объектов) или переменная JavaScript, которая хранит и передает информацию с вашего сайта в Google Tag Manager. Затем эти данные могут передаваться и другим сервисам, например, в Google Analytics и др.


GA.png

dataLayer - стандартное имя по умолчанию для массива объектов уровня данных в Google Tag Manager.


gtm.png

Для того, чтобы информация через уровень данных попадала в Google Tag Manager, необходимо использовать специальную конструкцию, которая задается по определенным правилам:

  • можно передавать одновременно до 300 элементов;
  • можно передавать любые типы данных (строки, числа);
  • все элементы, которые используются в dataLayer, состоят из пары [dw]'ключ':'значение'[/dw][di]dataLayer = [{'ключ1':'значение1','ключ2':'значение2'}];

    Имя ключа и значения заключаются в одинарные кавычки, между собой они разделяются двоеточием. Если используется несколько пар 'ключ':'значение', то такие пары между собой разделяются запятыми. Все пары заключаются в фигурные скобки. [/di];
  • для отслеживания различных действий пользователя и активации тегов используется специальная переменная event;
  • можно использовать [dw]метод push()[/dw][di]Универсальная конструкция, позволяющая вызывать dataLayer как до, так и после инициализирующего кода Google Tag Manager, выглядит так:
    <script>
    window.dataLayer = window.dataLayer || [];
    window.dataLayer.push({'event':'value'});
    </script>
    
    [/di] для добавления новых элементов.

  Пример

Например, у нас есть [dw]виджет[/dw][di]Виджет — это графическое приложение на странице сайта, рабочем столе компьютера или смартфона. Оно расширяет функционал гаджета или онлайн-платформы и дает пользователю полезную информацию.[/di] заказа автомобиля. В нём имеются радио-кнопки выбора цвета и мы хотим отследить заказы красных автомобилей. Можно настроить динамическую переменную уровня данных для выбора цвета так:

dataLayer.push({'color': 'red'});

И передать несколько переменных и событий одновременно с помощью одного оператора dataLayer.push():

dataLayer.push({
  'color': 'red',
  'conversionValue': 50,
  'event': 'customizeCar'
});

Кроме цвета, здесь мы передали еще переменную "Значение конверсии" и событие "Автомобиль выбран", привязанное к клику по кнопке "Заказать авто" в нашем виджете.

В интерфейсе Google Tag Manager необходимо создать:

  1. переменную уровня данных [dw]color[/dw][di]urov_dan1.jpg[/di];
  2. триггер [dw]Пользовательское событие[/dw][di] [/di] со значением customizeCar;
  3. тег для передачи данных в Google Analytics с типом отслеживания «Событие» и триггером активации customizeCar.

Создавать триггеры и теги мы научились в предыдущем уроке.

Таким образом, мы сформировали уровень данных DataLayer, который передал информацию в Google Tag Manager. В Google Tag Manager запустились триггеры, теги были переданы сервису Google Analytics, и мы можем увидеть отчеты на странице Google Аналитики (Отчёты > В режиме реального времени > События).

Как подключить электронную торговлю Google

Как подключить электронную торговлю Google

В [ds]предыдущем уроке[/ds][di] В этом уроке вы узнаете, как создать тег с триггерами:

showDetail - детальный просмотр товара;

addToCart - добавление товара в корзину;

checkout - переход на страницу оформления заказа;

purchase - завершение оформления заказа (заказ совершен).

removeFromCart - удаление товара из корзины.

Подробнее...[/di] мы настроили тег с триггерами для отслеживания покупательской активности (событий) в интернет-магазине. В этом уроке рассмотрим, как с помощью Электронной торговли Google получить детальные [ds]отчеты[/ds][di] В Google Analytics представлены перечисленные ниже стандартные отчеты по
электронной торговле. Для работы с дополнительными отчетами настройте отслеживание
расширенной электронной торговли.

Стандартные отчеты:

Обзор. Сводные данные – Доход, Коэффициент транзакций, Количество транзакций, Средняя стоимость
заказа и другие показатели.

Эффективность товаров. Доход от продукта, Покупки, Количество, Средняя цена и
Среднее количество с разбивкой по Коду товара и Категории.

Эффективность продаж. Доход с разбивкой по Дате.

Транзакции.Доход, Налог, Доставка и Количество с разбивкой по Идентификатору транзакции.

Время до покупки. Число дней до транзакции и Сеансы до транзакции.

Подробнее...[/di] по товарам.

Для использования возможностей электронной торговли необходимо выполнить два действия:

  1. Подключите к своему интернет-магазину [ds]Google Tag Manager[/ds][di] Еще один вид счетчика событий (т.е. клиентских "кликов" по определенным местам/кнопкам сайта) - Google Аналитика.

    Для отслеживания событий в Google Аналитике воспользуемся новым инструментом от Google - Google Tag Manager.

    Принцип подключения Google Аналитики и Google Tag Manager такой же, что и Яндекс.Метрики: необходимо зарегистрироваться на соответствующих ресурсах, получить коды отслеживания и вставить их в шаблон сайта.

    Подробнее...[/di] и [ds]создайте тег[/ds][di] Рассмотрим пошагово, как с помощью тегов Google Tag Manager отследить события.

    Прежде всего, в настройках параметров компонентов sale.order.ajax, sale.basket.basket и catalog во вкладке Настройки аналитики отметьте опцию Отправлять данные электронной торговли в Google и Яндекс (возможность отслеживать метрики добавления/удаления/покупки товаров).

    Подробнее...[/di] Universal Analytics.

    При настройке тега необходимо в Дополнительных условиях настроить [dw]Электронную торговлю.[/dw][di] [/di]

  2. Включите отслеживание электронной торговли в Google Аналитике (Администратор > Представление > Настройки электронной торговли):

    Нажмите на рисунок, чтобы увеличить

    Примечание: В Настройках электронной торговли можно при желании [dw]включить[/dw][di] Обязательно нужно включить отслеживание электронной торговли.

    При желании можно включить отчеты для расширенной электронной торговли.

    [/di] дополнительно отчеты для [ds]расширенной[/ds][di] В отчетах расширенной электронной торговли можно просмотреть дополнительно следующие параметры:

    - Поведение потребителей при совершении покупки;

    - Экономическая эффективность;

    - Эффективная реклама;

    - Атрибуция товаров.

    Подробнее...[/di] электронной торговли.

Готово! Теперь данные о товарах Вашего интернет-магазина будут поступать в Google Аналитику, и Вам станут доступны отчеты Google по электронной торговле (Отчеты > Конверсии > Электронная торговля):

Нажмите на рисунок, чтобы увеличить



Примеры кастомизации

Пара примеров для разработчиков

Для корректного определения геолокации в настройках модуля Аналитики настройте закладку [dw]Страна и город[/dw][di]На закладке выполняется настройка параметров определения страны и города посетителя по IP адресу.


Подробнее...[/di].

1. Определение текущих посетителей в онлайне. Может использоваться как для кейса "Количество людей на сайте", так и для таких кейсов как "Данную страницу сейчас просматривают".

if (\Bitrix\Main\Loader::includeModule('statistic'))
{
   $res = \CUserOnline::getList($guests, $sessions);
   echo 'Всего ' . $guests . ' гостей, и ' .$sessions . ' сессий';
   echo '
'; while ($row = $res->fetch()) { echo 'Гость #' . $row['ID'] . ', из ' . $row['REGION_NAME'] . ', его IP = ' . $row['IP_LAST'] . ', последний хит был на ' . $row['URL_LAST']; echo '
'; } }

Выведет примерно следующее:

Всего 24 гостей, и 24 сессий
Гость #8982548, из Москва, его IP = 178.208.*.*, последний хит был на https://....
Гость #8982547, из Санкт-Петербург, его IP = 5.188.*.*, последний хит был на https://....
...

2. Определение текущего города:

if (\Bitrix\Main\Loader::includeModule('statistic'))
{
   $res = \CGuest::getList(
      $by = 's_last_date',
      $order = 'desc',
      [
         'SESS_GUEST_ID' => $_SESSION['SESS_GUEST_ID']
      ],
      $isfiltered
   );
   if ($row = $res->fetch())
   {
      echo 'Ваш город: ' . $row['LAST_REGION_NAME'];
   }
}
//>> Ваш город: Москва

Может применяться для передачи данного города при оформлении заказа (нужен отдельный скрипт обработки, чтобы оформление заказа понимало данный город). Или для показа определенных типов цен в конкретном городе (требует также дополнительного программирования).


Поисковая оптимизация

Для работы по SEO в Битрикс создан специальный модуль Поисковая оптимизация. Работа модуля облегчает ежедневную работу по продвижению сайта в рейтингах поисковых машин.

  Возможности модуля Поисковая оптимизация

Этот модуль анализирует техническое исполнение сайта, отображает параметры, влияющие на оптимизацию, и дает рекомендации по улучшению этих параметров. Небольшая часть функционала модуля Поисковая оптимизация реализуется с помощью модуля Аналитика и доступна только в редакции Бизнес.

Для продвижения сайта в WWW модуль предоставляет инструменты для поисковой оптимизации по страницам и сайту в целом:

  • Выводит всю необходимую информацию в публичной части для модификации страницы или сайта.
  • Отображает специальную информацию о странице: частота индексации поисковиками; запросы, которые приводят на эту страницу, дополнительную статистическую информацию.
  • Даёт наглядную оценку результативности работы страницы и сайта.
  • Возможность тут же вызвать необходимые диалоги и произвести изменения на странице.
  • Применительно ко всему сайту выводит: общее ссылочное ранжирование, цитирование, количество ссылок, поисковые слова, индексация поисковиками.

Работа с инструментами модуля

Работа с модулем описана в курсе [ds]Продвижение сайта и Маркетинг[/ds][di]Поисковая оптимизация подразумевает постоянную работу, а не разовые акции по продвижению информационных ресурсов. На оценку поисковой системы влияют десятки различных факторов, начиная с имени домена и заканчивая качеством каналов связи.

Подробнее ...[/di].

  Настраиваем модуль и сайт

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

Настройки модуля (Настройки > Настройки продукта > Настройки модулей > Поисковая оптимизация) дают возможность изменить коды свойств страницы, настроить параметры сбора статистики и управлять правами доступа к модулю.

Нажмите на рисунок, чтобы увеличить

На закладке Регистрационные данные отображается аккаунт, с которого осуществлена авторизация, есть возможность сменить аккаунт и [dw]очистить данные[/dw][di]В Базе данных сайта хранятся некоторые настройки для поисковиков: access_token и данные для него, host_id на стороне Яндекса, client_id для seo-прокси сайта и прочее. Иногда бывает надо это очистить.[/di].

На закладке [dw]Свойства страниц[/dw][di]Закладка "Свойства страниц"[/di] изменяются коды используемых свойств страницы. Делать это нужно только в случае, если используемые по умолчанию значения были изменены в ходе разработки сайта.

На закладке [dw]Инструменты[/dw][di]Закладка "Инструменты"[/di] задаются основные параметры для получения статистики о странице сайта.

  • В поле Отображаемые счетчики введите все счётчики, которые вы получили от поисковых машин для установки на сайте.
  • В поле [dw]Поисковые системы, используемые для анализа[/dw][di]Данные для этого поля берутся из списка поисковых систем модуля Аналитика, который есть только в редакции Бизнес. Соответственно, на младших редакциях "1С-Битрикс: Управление сайтом", это поле настроек отсутствует.[/di] выберите поисковые системы, которые должны использоваться для анализа. Выбор нескольких систем осуществляется с помощью клавиши CTRL. Выбранные поисковые системы после сохранения измененных параметров отобразятся в строке Сейчас выбрано.

На закладке [dw]Доступ[/dw][di]Закладка "Инструменты"[/di] установите нужный уровень [ds]прав доступа к модулю[/ds][di]Настройка прав доступа к модулям системы позволяет определить диапазон допустимых действий пользователя над модулем и его контентом.

Подробнее ...[/di] различных групп пользователей. Имеется три вида доступа:

  • Полный доступ – доступны инструменты анализа и управление настройками, рекомендуется для администраторов сайта;
  • Анализ страниц и сайта – доступны инструменты анализа, рекомендуется для редакторов, SEO-оптимизаторов и контролирующих лиц заказчика.;
  • Доступ запрещен – запрет на доступ к модулю.

Модуль настроен на работу.

Настройки сайта

Если сайт доступен по нестандартному порту (например, 6448 в случае использования пакета «Битрикс: Веб-окружение»), то необходимо убедиться, что этот порт указан в настройке главного модуля в поле URL сайта (и в аналогичных настройках каждого из сайтов в случае многосайтовости [dw]на одном домене[/dw][di]Принципиальная необходимость для многосайтовости на одном домене - разделение сайтов по подкаталогам, так, чтобы структура файлов не пересекалась.

Подробнее ...[/di]).

  Важно!

На хостинге иногда устанавливают ограничение на размер текста страницы. Соответствующее ограничение задается в параметре [dw]pcre.backtrack_limit[/dw][di]Настройка pcre.backtrack_limit файла php.ini ограничивает максимальную длину текста, обрабатываемого регулярными выражениями.[/di] файла php.ini. Если такое ограничение наложено, и объем текста на странице его превышает, то данные, выводимые в других инструментах, могут быть некорректными.

Сообщение о превышении ограничения будет отображено в поле Рекомендации и исправления [ds]инструмента Страница[/ds][di]Инструмент Страница предназначен для вывода общей статистики по странице и состоит из четырех групп параметров...

Подробнее...[/di].



Проверьте себя

Ответьте на несколько вопросов по теме Веб-аналитика и SEO, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Статистический отчет по EMail отправляется на почтовый ящик администратора сайта.
Верно
Неверно
2 Страна и город посетителя сайта определяются по IP-адресу только по таблицам модуля статистики.
Верно
Неверно
3 В статистике посещений учитываются все пользователи без исключения.
Верно
Неверно
4 Код счетчика Яндекс.Метрики добавляется в подвал (footer) сайта.
Верно
Неверно
5 В электронную коммерцию Яндекс отправляются данные из компонентов Каталог, Корзина, Оформление заказа.
Верно
Неверно
6 Отчеты Google Аналитики или Google Tag Manager выводятся на странице Аналитика > Сводная статистика.
Верно
Неверно
7 Для доступа к отчетам Google по электронной торговле нужно создать и настроить тег Universal Analytics.
Верно
Неверно
8 Доступ к модулю Поисковая оптимизация есть только у администратора сайта и SEO-специалиста.
Верно
Неверно


Веб-кластер

Важно! Модуль Веб-кластер доступен в коробочной версии Битрикс24 и в «1С-Битрикс: Управление сайтом» только в редакциях Энтерпрайз.

Модуль Веб-кластер — это комбинация технологических решений, которые позволяют распределить один сайт на несколько серверов, решая тем самым несколько задач:

  • обеспечение высокой доступности сайта
  • его масштабирование в условиях возрастающей нагрузки
  • балансирование нагрузки, трафика, данных между несколькими серверами

Что может Веб-кластер

  Цели и задачи

Модуль Веб-кластер – это комбинация технологических решений, которые позволяют распределить один сайт на несколько серверов, решая тем самым несколько задач:

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

Работа Веб-кластера поддерживается на уровне самой платформы «1С-Битрикс», поэтому вносить какие-либо изменения в код существующих и новых проектов не потребуется. Для настройки веб-кластера может потребоваться начальная квалификация в области системного администрирования.

Модуль Веб-кластер позволяет использовать:

  • Вертикальный шардинг (вынесение отдельных частей базы данных (модулей) на отдельные серверы MySQL, например, "Поиск" и "Веб-аналитика");
  • Репликацию MySQL и балансирование нагрузки между серверами;
  • Распределенный кеш данных (memcached);
  • Непрерывность сессий между веб-серверами (хранение сессий в базе данных);
  • Кластеризацию веб-сервера:
    • Синхронизация файлов;
    • Балансирование нагрузки между серверами.

Внимание! Если серверы СУБД кластера расположены в разных дата-центрах, необходимо настроить на них единую временную зону.

Модуль "Веб-кластер" решает несколько очень важных практических бизнес-задач, каждую из которых мы рассмотрим далее в этом уроке:

  • Масштабирование веб-проекта, повышение производительности;
  • Резервирование всех узлов системы, обеспечение отказоустойчивости и непрерывной доступности;
  • Real-time backup;
  • Снижение стоимости трафика, простая система CDN.

  Масштабирование веб-проекта,
  повышение производительности

Рост популярности и посещаемости веб проекта требует увеличения ресурсов (CPU, памяти, дискового пространства). До определенного порога задача решается просто. С виртуального хостинга сайт переносится на [dw]VPS[/dw][di]VPS (англ. virtual private server) – виртуальный выделенный сервер.[/di], затем – на свой выделенный сервер, затем – на более мощный сервер. При этом каждый новый перенос сайта на новые ресурсы сопровождается временной недоступностью сайта в период переезда. Но рано или поздно ресурсов оказывается недостаточно.

"1С-Битрикс: Веб-кластер" гибко, в реальном времени, масштабирует именно те ресурсы (база данных или веб-сервер), которые востребованы в настоящий момент. Просто добавляя/отключая новые машины по мере необходимости.

Ключевые особенности технологии:

  • каждая машина ("нода") в кластере может быть разной сущности: виртуальный хост, VPS, выделенный сервер, [dw]инстанс[/dw][di]Инстанс в облачных вычислениях – это серверный ресурс, предоставляемый сторонними облачными сервисами.

    Подробнее...[/di] в "облаке" (например, Amazon EC2);
  • ноды могут быть распределены любым удобным образом – вплоть до нахождения в разных датацентрах;
  • добавление нод различной мощности в среднем дает пропорциональный прирост производительности.

Пример: если ваш сайт работает на выделенном сервере с одним процессором Intel Quad Core, 4 Гб RAM и в пиках посещаемости может обрабатывать до 40 запросов в секунду, то добавление второго такого же сервера в веб-кластер повышает производительность примерно на 90-95% и позволяет обрабатывать в пиках до 77 запросов в секунду.

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

Примерные рекомендации по "железу"

Интернет-магазин с посещаемостью примерно 150 человек за 10 минут, папка сайта весит 700ГБ, БД 10ГБ.

  • Для memcached: Intel Xeon E-2236 3.4 ГГц, 6 ядер 16 ГБ DDR4 2 × 480 ГБ SSD
  • Для App сервера: Intel Xeon E3-1230 3.4 ГГц, 4 ядра 32 ГБ DDR4 2 × 240 ГБ SSD 2 × 2000 ГБ HDD
  • Для сервера БД: Intel Xeon E-2236 3.4 ГГц, 6 ядер 64 ГБ DDR4 2 × 960 ГБ SSD

  Резервирование всех узлов системы, обеспечение
  отказоустойчивости и непрерывной доступности

Выход из строя оборудования или авария в датацентре может привести к многочасовой недоступности сайта. А это чревато последствиями:

  • потерянные заказы (в случае интернет-магазина);
  • впустую потраченные деньги на рекламу;
  • потеря репутации;
  • потеря позиций в выдаче поисковых систем в случае переиндексации поисковым роботом в момент недоступности сайта.

Кластеризация всех составляющих сайта (веб-сервер и база данных) с помощью "1С-Битрикс: Веб-кластер" минимизирует время простоя системы. В зависимости от того, как именно реализована балансировка нагрузки между нодами кластера, время недоступности сайта может составить 5-15 минут, а в отдельных случаях и вовсе может быть сведено к нулю.

Как это работает: при аварии на отдельных нодах вышедшие из строя узлы кластера помечаются неактивными (OFFLINE), а нагрузка на систему автоматически распределяется между оставшимися узлами.

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

После устранения причин аварии вновь вводятся в работу вышедшие из строя ноды, тем самым распределив нагрузку между большим числом серверов.

  Real-time backup

Крайне важный аспект создания резервных копий – частота их обновлений. Если бэкапы создаются не очень часто, например, раз в неделю (а для больших проектов, это, к сожалению, не редкость), то в случае аварии есть риск потерять все изменения (код разработчиков, данные самого сайта, пользовательские данные) вплоть до семи дней.

"1С-Битрикс: Веб-кластер" подключает одну из нод в качестве бэкап-сервера. Это может быть не очень дорогой сервер или, например, VPS. В настройках веб-кластера отмечается, что данная нода используется только для бэкапа, и она не участвует в распределении нагрузки от посещений сайта. При этом данные сайта (и файлы, и база данных) дублируются в реальном времени. В случае аварии будут восстановлены актуальные данные на момент сбоя. Для максимально быстрого восстановления обращения к сайту могут быть переключены непосредственно на резервный бэкап-сервер.

  Снижение стоимости трафика,
  простая система CDN

Перед владельцами сайтов с "тяжелым" контентом (аудио, видео, фото) стоит серьезная задача: минимизировать стоимость трафика проекта в сочетании с обеспечением высокой скорости доступа для всех посетителей независимо от территориального распределения.

Ноды веб-кластера размещают в разных датацентрах (например, три сервера: в США, в Европе и в России). Дополнительные инструменты (например, базы GeoIP) автоматически определяют регион посетителя сайта и перенаправляют его запрос на соответствующую ноду кластера. (Подобный механизм, регулирующий загрузку контента в зависимости от географического положения клиента, называется CDN – Content Delivery Network).


Настройки модуля и группы серверов

  Настройки - проще некуда

Форма настроек модуля имеет единственную настройку:

Максимально возможное время отставания slave базы данных от master (сек.) - время отставания slave базы данных от master, после которого она будет автоматически отключена для снижения риска рассинхронизации данных.

Отставание slave базы данных возможно при большом количестве обновлений основной (master) базы данных, недостаточно быстром соединении между master и slave базами данных, недостаточной производительности slave базы данных.

Примечание: Время отставания базы данных отображается в таблице на странице [ds]Репликация[/ds][di]Репликация базы данных - это процесс создания и поддержания в актуальном состоянии её копии....

Подробнее ...[/di].

  Группирование серверов

Группы - сущность созданная только для удобства работы. Они используются для объединения "узлов" в рамках гео-кластера. Это позволяет расположить в различных географически расположенных дата-центрах собственные: Cервера баз данных, Memcached-сервера, Веб-сервера.

Создание групп происходит на странице Настройки > Веб-кластер > Группы серверов. Создание группы - это просто задать ей название.

Важно! Для каждого веб-сервера одной группы в файле dbconn.php должна быть определена переменная BX_CLUSTER_GROUP, значение которой соответствует идентификатору группы. Например: define("BX_CLUSTER_GROUP", 1).

Название второй группы может быть "Группа #2", но в переменной BX_CLUSTER_GROUP необходимо указать реальный (автоинкрементный) идентификатор этой группы, который можно посмотреть на странице со списком групп серверов (Настройки > Веб-кластер > Группы серверов).

Файл dbconn.php не должен синхронизироваться между группами.

  Документация по теме


Репликация

Репликация базы данных - это процесс создания и поддержания в актуальном состоянии её копии.

Репликация позволяет:

  • перенести часть нагрузки с основной базы данных (master) на одну или несколько ее копий (slave);
  • использовать копии в качестве горячего резерва.
  • использовать несколько географически разнесенных основных баз данных (master-master репликация).

Master-Slave репликация

  Настройка и подключение резервной базы данных для снятия нагрузки с основной БД

Подключение к сайту дополнительных серверов баз данных позволяет снизить нагрузку на основную базу данных. В этом случае чтение данных происходит из дополнительных (slave) баз данных, а запись - в основную.

Репликация

  Подключение

Подключение и настройка дополнительных (slave) баз данных осуществляется на странице Slave базы данных (Настройки > Веб-кластер > Группа #1 > Репликация).

Репликация

Внимание! При использовании нескольких веб-серверов в файле /bitrix/[dw].settings.php[/dw][di]Секция connections. Параметры соединения с базой данных и другими источниками данных.

Подробнее...[/di]
на всех серверах обязательно должен быть указан адрес подключения к главной базе данных (master). Желательно указывать прямой IP-адрес или быть уверенным, что для каждого веб-сервера будет происходить соединение именно с сервером главной базы данных в случае обращения не по IP-адресу. Использование адреса вида localhost при такой конфигурации запрещено.

Для репликации необходимо использовать разные серверы с быстрым каналом связи между собой.

В настройках модуля Веб-кластер можно указать [dw]время отставания slave базы[/dw][di][/di] данных от master, после которого она будет автоматически отключена для снижения риска рассинхронизации данных.

Примечание: Для работы репликации учетные записи основного и резервных master/slave-серверов должны иметь, кроме стандартных, также привилегии: SUPER, REPLICATION CLIENT, REPLICATION SLAVE.

Учетные записи

  • Нажмите кнопку Добавить slave базу данных. После чего откроется окно мастера добавления новой slave базы данных.
  • В первом окне будут выведены [dw]рекомендации по настройке системы[/dw][di]Мастер добавления новой slave базы данных[/di], критичные для работы. Обязательно исправьте их, пока проверка не покажет, что [dw]всё в порядке[/dw][di]Мастер добавления новой slave базы данных[/di].
  • Пройдите все [dw]шаги мастера[/dw][di]Мастер добавления новой slave базы данных

    И так далее...[/di].

После прохождения мастера база появится в списке, но будет не задействована:

Мастер добавления новой slave базы данных

В списке slave баз данных в меню действий выполните команду [dw]Начать использовать[/dw][di]пункт меню "Начать использовать"[/di] и следуйте рекомендациям мастера.

Внимание! Запуск репликации начинается с копирования содержимого базы данных. На время копирования [dw]публичная часть сайта будет закрыта[/dw][di]Мастер запуска slave базы данных[/di], а административная нет. Любые неучтенные модификации данных в период копирования могут в дальнейшем повлиять на правильность работы сайта.

После успешного подключения slave-сервера баз данных отображается его [dw]статус[/dw][di]Статус сервера баз данных[/di].

  Настройка параметров базы данных

При необходимости измените настройки подключения базы. Для этого дважды кликните по желаемой базе в списке или воспользуйтесь пунктом меню действий Изменить. Откроется форма Настройка параметров главной базы/slave базы данных:

Настройка параметров slave базы данных

Значение в поле Процент распределения нагрузки (0..100) указывается для каждой базы в отдельности. Эта опция перераспределяет большую часть нагрузки на более быстрые и мощные серверы в составе кластера.

Примечание: Для главной базы существует отдельная опция, которая позволяет [dw]Минимизировать нагрузку[/dw][di]Настройка параметров главной базы данных[/di] на нее.

  Особенности обращений к master базе

Если на хите в системе происходит запись в master базу, то последующие операции чтения (запросы) данных будут тоже происходить из master базы, а не slave.

Это связано с особенностью кластерной архитектуры: только так можно быть уверенным в том, что при запросе этих данных они будут актуальны, т.к. синхронизация со слейвами всегда имеет определенное отставание (данных там просто может еще и не быть).

Примечание для разработчиков: Собственные запросы на запись в системе (пример - веб аналитика) обрамлены специальными методами класса CDatabase: StartUsingMasterOnly и StopUsingMasterOnly. Которые соответственно начинают и заканчивают использование только мастер базы.

Вы можете обернуть свои АПИ вызовы на запись такими конструкциями, но должны быть уверены, что дальше по коду не будет чтения этих данных из базы.

  Дополнительно


Резервная копия

Настройка базы данных для использования в качестве резервной копии

В данном случае slave база данных будет использоваться только для создания копии основной базы данных. В отличие от случая, описанного выше, операций чтения из нее происходить не будет.

Для перевода базы в этот режим в форме [ds]Настройка параметров slave базы данных[/ds][di]Подключение и настройка дополнительных (slave) баз данных осуществляется на странице Slave базы данных (Настройки > Веб-кластер > Группа #1 > Репликация).

Подробнее...[/di] отметьте опцию Для резервного копирования:

Настройка параметров slave базы данных

Резервное копирование производится в постоянном режиме.


Master-master репликация

Настройка master-master репликации

Master-master репликация настраивается на уровне Базы Данных. Делать это можно по этому примеру master-slave, либо по подобному описанию настройки master-master.



Memcached

  Кеш в оперативной памяти

memcached сервер - сервер, позволяющий сохранять кеш не в файлах, а в оперативной памяти. memcached можно использовать и для хранения сессий.

Использование нескольких memcached-серверов:

  • повышает надежность системы за счет устойчивости подсистемы кеширования к выходу из строя отдельных компонентов,
  • повышает эффективность за счет централизованного использования кеша веб-приложением,
  • обладает неограниченной масштабируемостью за счет добавления новых memcached-серверов.

Если произошёл отказ всех memcached-серверов, то подсистема кеширования снова начинает использовать [dw]файловый кеш[/dw][di] После возврата к файловому кешу рекомендуется удалить старый, неактуальный файловый кеш bitrix\cache bitrix\stack_cache.[/di].

Внимание! Для работы потребуется php расширение memcache.

Некоторые версии расширения memcache имеют ошибку, приводящую к значительному снижению производительности при наличии более одного подключения. С помощью панели производительности получите оценку производительности до добавления подключения и после. При наличии значительной разницы попробуйте установить другую версию расширения memcache.

Если используется несколько memcache-серверов, нужно установить значение переменной memcache.hash_strategy string в consistent (по умолчанию это выключено!). Такое значение нужно для следующего: если один из мемкэшей сломается, начнется ресурсоемкая операция перетасовки ключей между мемкэшами, замедляющая работу веб-кластера. А если установить в consistent - проблем практически не будет.

Примечание: «1С-Битрикс: Веб-окружение» для Linux уже содержит сервер memcached. Для его запуска необходимо выполнить команды:
chkconfig memcached on
service memcached start

  Подключение серверов memcached

Сервера подключают на странице Подключения к memcached (Настройки > Веб-кластер > [_название_группы_] > Memcached):

  • Нажмите кнопку Добавить на контекстной панели и в форме [dw]Настройка параметров подключения к серверу memcached[/dw][di]Обычно по умолчанию порт memcached сервера равен 11211

    Настройка параметров подключения к серверу memcached[/di] укажите адрес и порт сервера.

    Примечание: Если подключаемые к кластеру memcached серверы разной мощности или с разным объемом оперативной памяти, то желательно соответственно настроить коэффициент их использования через настройку параметра Процент распределения нагрузки (0..100).

  • После подключения сервер по умолчанию не будет активным.

  • Для запуска его в работу в меню действий выберите пункт [dw]Начать использовать[/dw][di][/di].

Теперь сервер используется вместо файлового кеша:

Примечание: Настройки подключения серверов memcached хранятся в файле \bitrix\modules\cluster\memcache.php. Соответственно любые изменения настроек подключения будут автоматически применены на остальные ноды кластера при настроенной файловой синхронизации в кластере.

  Рекомендации по настройке

При настройке подсистемы кластерного кеширования обратите внимание на параметр: get_hits: #count# (#hitrate#%) где, #hitrate# - показывает эффективность кеширования. Это значение надо довести как можно ближе к 100%.

Экспериментально отрегулируйте эффективность, постепенно увеличивая объем памяти, выделяемой серверу memcached (limit_maxbytes). Начните с объема памяти в 128MB и увеличивайте с шагом в 32MB, пока #hitrate# перестанет заметно увеличиваться.

Также рекомендуется периодически анализировать и использование кеша приложением (параметр using_bytes).

За счет использования в сервере memcached алгоритма LRU в кеше будут храниться только наиболее актуальные данные, а редко используемые - вытесняться. Это не позволит объему кеша безгранично разрастаться в размерах, что приводило не только к неэффективному использованию ресурсов системы, но и отрицательно сказывалось на скорости работы с кешем за счет роста его объема. В результате кеш веб-кластера будет автоматически поддерживаться в максимально эффективном состоянии: как по скорости доступа, так и по использованию ресурсов.

Примечание: Константа BX_CLUSTER_GROUP должна быть установлена в файле dbconn.php. В противном случае не будет работать [ds]Композитный сайт[/ds][di]Скорость отображения страниц сайта, создаваемых с помощью CMS, на данный момент - одна из основных проблем сайтостроения. От этой скорости многое зависит. Современного пользователя уже не устраивают страницы, открывающиеся более 1 секунды, он предпочтёт более быстрые сайты конкурентов.

Подробнее ...[/di].


Веб-сервера

Распределяем нагрузку на веб-сервера

На странице Веб-сервера (Настройки > Веб-кластер > [_название_группы_] > Веб-сервера) показаны [dw]статусы активности[/dw][di]Для отображения статуса веб-сервера необходимо включить и настроить модуль mod_status веб-сервера apache.[/di] и текущей нагрузки веб-серверов. Страница носит информационный характер.

Веб-сервера

Для добавления веб-сервера в список:

  • Нажмите на контекстной панели кнопку Добавить новый веб-сервер;
  • Заполните поля формы:

    Редактирование параметров веб-сервера

Примечание: Настройки для "1С-Битрикс: Веб-окружение" (Linux) подробно рассмотрены в уроке [ds]Кластеризация веб-сервера[/ds][di]Использование нескольких веб-серверов для работы сайта означает, что любой запрос любого посетителя сайта может попасть на любой из узлов кластера...

Подробнее ...[/di]

Документация по теме:


Шардинг

  Выносим работу отдельных модулей на сторонний сервер

Шардинг позволяет перераспределить нагрузку, создаваемую запросами между различными серверами, за счёт выноса данных некоторых модулей в отдельную базу данных.

Вертикальный шардинг - разделение одной базы данных веб-приложения на две и более базы данных за счет выделения отдельных модулей, без изменения логики работы веб-приложения. (Таблицы разносятся по серверам.)

Горизонтальный шардинг - распределение однотипных данных веб-приложения (например, учетных записей) между отдельными базами данных. (Таблица делится на части и части разносятся по серверам.)

В "1С-Битрикс: Управление сайтом" и "Битрикс24 в коробке" поддерживается только Вертикальный шардинг и перенос данных модулей Веб-аналитика и Поиск

  Настройка шардинга

Добавление новой БД делается на странице Вертикальный шардинг (базы данных модулей) (Настройки > Веб-Кластер > Шардинг). Для вынесения таблицы с данными модуля в отдельную базу:

  • Нажмите на контекстной панели кнопку [dw]Добавить новую базу данных[/dw][di][/di]. После чего откроется окно мастера добавления новой базы данных модулей.
  • Пройдите все шаги мастера. Если необходимо, произведите настройки, в соответствии с рекомендациями. Вы должны получить полностью [dw]"зелёный" список[/dw][di]Выполненные рекомендации мастера[/di].
  • Укажите [dw]параметры подключения БД[/dw][di]Параметры подключения новой базы данных[/di] и исправьте, при необходимости, параметры до получения "зелёного" списка.
  • После чего база появится в списке, но будет не задействована.

  Перенос данных

Теперь перенесём данные модуля в добавленную базу данных. Это можно выполнить двумя способами:

  • Первый способ доступен только для MySQL: в списке баз данных модулей в меню действий выбранной базы данных выполнить команду [dw]Начать использовать[/dw][di]пункт меню "Начать использовать"[/di]. Запустится мастер переноса данных. В нем выберите [dw]модуль, который будет перенесен[/dw][di][/di].

    Внимание! Любые модификации данных в модуле на период копирования сохранены не будут.

  • Второй способ: удалите модуль и установите его заново. На первом шаге установки укажите базу данных для использования модулем. В этом случае таблицы модуля не будут перенесены.

    Выбор базы данных для установки модуля

После переноса таблиц модуля в подключенную базу данных список будет иметь следующий вид:

Примечание: Для mssql и oracle версий вместо мастера будет отображена форма Редактирование подключения к базе данных.


Хранение сессий в базе данных

Если несколько веб-серверов

По умолчанию данные о сессиях пользователей хранятся в файловой системе сервера. Информация об этом есть на странице Хранение сессий в базе данных (Настройки > Веб-кластер > Сессии)

Хранение сессий в базе данных

Если веб-сервер единственный, то такой способ хранения сессий в файлах наиболее удобен. Основной его плюс - наиболее высокая производительность. Как показывают различные нагрузочные тесты, скорость генерации страниц сайта при хранении сессий в базе снижается на 3-5%.

Если веб-серверов несколько, то возможно что один запрос пользователя (например, непосредственно авторизация) попадёт на один сервер, а следующий или какие-либо другие запросы - на другие серверы, где посетитель еще не будет авторизован. Подобные ситуации доставят целый ряд неудобств для посетителей сайта. Также, в случае хранения сессий в файлах будет некорректно вестись статистика посетителей.

Пользовательская сессия должна быть "прозрачной" для всех серверов веб-кластера. Поэтому рекомендуется включить хранение сессий в базе данных. Включение механизма хранения данных сессий пользователей в базе данных выполняется с помощью кнопки Включить хранение данных сессий в БД модуля.

Внимание! При переключении режима хранения сессий все пользователи потеряют авторизацию (данные сессий будут уничтожены).

Примечание: Для снижения нагрузки на базу данных и обеспечения "прозрачности сессии", можно сессии в базе не хранить, а вместо этого настроить и использовать в nginx модуль ip_hash.


Безопасность

Как защитить веб-кластер

Веб-кластер использует дополнительные сервисы (централизованное кэширование, синхронизация) и запускается, как правило, на группе машин. Рассмотрим особенности обеспечения информационной безопасности веб-кластера.

Балансирование нагрузки и защита от DDoS-атак

Рекомендуется открыть для публичного доступа 80 порт балансировщика нагрузки, ограничив внешний доступ к http портам машин (нод) веб-кластера. Это надежно защитит ноды, спрятанные за балансировщиком, от перегрузки (например, возникшей при проведении рекламной интернет-кампании), а также существенно снизит эффективность DDoS-атак.

Кластеризованный кэш

Необходимо закрыть от публичного доступа серверы memcached (tcp порт 11211), открыв доступ к ним с нод веб-кластера. Одно из решений – сконфигурировать [dw]файервол[/dw][di]Простыми словами, файервол – это система, которая предотвращает несанкционированный доступ к сети, а именно, осуществляет контроль и фильтрацию проходящего через него сетевого трафика в соответствии с заданными правилами. По другому его ещё называют брандмауэр или межсетевой экран.[/di].

Сервис синхронизации контента нод кластера

Если для синхронизации контента используется утилита csync2, необходимо закрыть ее сервисы от публичного доступа (tcp порт 30865), открыв доступ к ним с нод веб-кластера.

Пример настройки файервола

Для ноды веб-кластера:

  • 22 (tcp; ssh) – открыт для подсети администратора;
  • 80 (tcp; http) – открыт для подсети веб-кластера;
  • 443 (tcp; https) – открыт для подсети веб-кластера;
  • 3306 (tcp; mysql) – открыт для подсети веб-кластера;
  • 11211 (tcp; memcached) – открыт для подсети веб-кластера;
  • 30865 (tcp; csync2) – открыт для подсети веб-кластера.

Для балансировщика нагрузки:

  • 80 (tcp; http) – открыт для всех;
  • 443 (tcp; https) – открыт для всех.

Локальный кеш в кластере

Ускоряем работу с кешем

Внимание! Ниже описаны действия, которые можно отнести к экстремальному тюнингу. Действия требуют от системного администратора довольно высокого уровня компетенции, нужно чётко понимать смысл выполняемых действий.

Использование подключения через unix soket к локальным memcache серверам, ускоряет работу проекта. Ядро обеспечивает валидность кеша на всех нодах, удаляя помеченные ключи кеша на них. Такой режим работы кластера очень хорошо себя зарекомендовал в различных нагрузочных тестах и реальной эксплуатации, обеспечивая прирост порядка 30% за счет более быстрой работы с кешем.

Настройка режима работы с локальным кешем

Предположим, есть две ноды на которых настроены роли веб сервера, мемкеша и БД. В этом случае необходимо выполнить следующие шаги:

  1. Настроить memcache на использование веб сокета и модуль Веб-кластер на работу с мемкешем через сокет.
    • Для настройки memcache на работу с сокетом выполните команду:
      cat /etc/sysconfig/memcached 
      # Ansible managed: /etc/ansible/roles/memcached/templates/sysconfig-memcached.j2 modified on 2015-01-30 19:00:16 by root on bx24.perf
      # memcached settings
      PORT="11211"
      USER="memcached"
      MAXCONN="4096"
      CACHESIZE="512"
      OPTIONS="-t 8 -s /tmp/memcached.sock -a 0777"
    • Для настройки модуля Веб-кластер на работу с мемкешем через сокет [ds]указать[/ds][di]В случае, если в проекте планируется использовать memcached, необходимо произвести его настройку в соответствии с предполагаемой нагрузкой.

      Подробнее ...[/di] порт 0 и урл unix:///tmp/memcached.sock
  2. В модуле кластера добавить нужное количество [ds]групп[/ds][di]Группы - сущность созданная только для удобства работы. Они используются для объединения "узлов" в рамках гео-кластера. Это позволяет расположить в различных географически расположенных дата-центрах собственные: Cервера баз данных, Memcached-сервера, Веб-сервера.

    Подробнее ...[/di].
  3. На каждом сервере определить константы указывающие ID группы, а также включающий режим чтения слэйвов из любой группы.
    <?
    define('BX_CLUSTER_GROUP', 1);
    define('BX_CLUSTER_SLAVE_USE_ANY_GROUP', true);
    ?>
  4. Перенести слэйв сервера в административную часть БУС, по нужным группам. Для переноса слэйв серверов в нужную группу необходимо, отредактировать соответствующие записи в таблице b_cluster_dbnode, установив нужное значение в поле GROUP_ID.
  5. Для переноса серверов memcached в нужную группу, необходимо установить нужное значение ключа GROUP_ID в файле /bitrix/modules/cluster/memcache.php.

После этого сервера начнут работать с локальным кешем через сокет, что значительно быстрее чем работа с удаленными серверами по tcp.


Варианты конфигурации веб-кластера для решения практических задач

Выберите подходящий вариант

Прежде всего, необходимо внимательно проанализировать (спрогнозировать) характер нагрузки на веб-приложение. Для сбора и анализа данных рекомендуется проактивно использовать известные инструменты мониторинга, такие как munin, zabbix, apache server-status, и т.п.

Ниже перечислены варианты конфигурации веб-кластера для различных типов нагрузки.

Высокая нагрузка на процессоры, невысокая/средняя нагрузка на СУБД, контент меняется редко

Необходимо снизить нагрузку на процессоры - подключаем к веб-кластеру [dw]ноду(ы)[/dw][di]Нода - сервер, включённый в кластер и выполняющий задачи этого кластера в сообществе с другими серверами (нодами). [/di]. Ноды заводим под балансировщик нагрузки. В результате нагрузка на процессоры распараллеливается между нодами.

Рекомендуется также на каждой ноде запустить сервер memcached - это позволит еще больше снизить нагрузку на процессоры за счет того, что кэш будет создаваться один раз на одной из нод веб-кластера, а использоваться остальными нодами.

Для синхронизации контента подойдет csync2, nfs/cifs-сервер на одной из нод веб-кластера.

Высокая растущая нагрузка на СУБД

Для разгрузки СУБД необходимо организовать master-slave репликацию. Чем больше будет добавлено slave-нод, тем сильнее снизится нагрузка на основную master базу данных. Если slave-ноды разной мощности, рекомендуется адекватно распределить между ними нагрузку с помощью параметра Процент распределения нагрузки (0..100).

В результате нагрузка на СУБД распределится между master и slave нодами веб-кластера. При дальнейшем увеличении нагрузки на СУБД рекомендуется:
  1. Оптимизировать master и slave-ноды. Т.к. master-сервер будет использоваться преимущественно для записи, его нужно, путем настройки параметров, оптимизировать для записи, а slave-ноды - оптимизировать для чтения.
  2. Добавлять slave-ноды.

Большой объем кэша, кэш часто перестраивается, контент меняется часто, изменений много

Необходимо настроить эффективную работу с кэшем. Для этого запускаем на каждой ноде сервер memcached, выделяем каждому по несколько GB памяти (в зависимости от требований приложения).

Для синхронизации контента рекомендуется использовать выделенный nfs/cifs-сервер, либо ocfs/gfs или аналоги.


Практическая реализация веб-кластера на примере Amazon Web Services

Рассмотрим [dw]создание и конфигурирование веб-кластера[/dw][di]Внимание! Для настройки веб-кластера может потребоваться квалификация в области системного администрирования.[/di] на примере настройки двух виртуальных машин на "облачном" хостинге Amazon Web Services. Этот сервис удобен тем, что можно в любое время практически моментально получить виртуальные серверы любой необходимой конфигурации. Если возникли дополнительные вопросы по работе с ним, обращайтесь к официальной документации.

Создание виртуальных машин

Начинаем с создания машин

На сайте Amazon Web Services [dw]создаем аккаунт[/dw][di]Нажмите на рисунок, чтобы увеличить [/di]. Создав аккаунт запускаем виртуальную машину с помощью кнопки Launch Instance:

Нажмите на рисунок, чтобы увеличить

Далее нам нужно пройти мастер создания машин.

  1. На первом шаге отфильтруйте образы по CentOS и 64 битам. Выберите подходящий вам или рекомендуемый образ.

    Нажмите на рисунок, чтобы увеличить

    Примечание: "1С-Битрикс: Веб-окружение - Linux" можно поставить и на другие Linux платформы.

  2. В зависимости от ожидаемой нагрузки выбираем аппаратную конфигурацию виртуальной машины. В данном случае выбираем конфигурацию m5.large: 2 ядра примерно по 2 GHz и 7.5GB оперативной памяти:

    Нажмите на рисунок, чтобы увеличить

  3. Конфигурацию машины рекомендуется оставить по умолчанию, но если вы достаточно квалифицированный администратор, то, конечно, никто не мешает выбрать то, что вам нужно.

    Нажмите на рисунок, чтобы увеличить

  4. Задайте нужное число дисков с нужными параметрами. Рекомендуемые значения - на скриншоте.

    Нажмите на рисунок, чтобы увеличить

  5. Задайте название, позволяющее отличить ее от других машин кластера и [dw]другие теги[/dw][di]Нажмите на рисунок, чтобы увеличить[/di]
  6. Создаём (либо выбираем) созданную раннее группу безопасности с нужным набором параметров. Рекомендуемые параметры - на скриншоте. Порт 22 используется rsync/ssh. После настройки кластера необходимо обязательно закрыть доступ извне кластера к портам memcached.

    Нажмите на рисунок, чтобы увеличить

  7. На последнем шаге проверьте ещё раз [dw]все введённые значения[/dw][di]Нажмите на рисунок, чтобы увеличить[/di]. Если всё верно,то нажмите Launch. Во всплывшем окне создаем (либо выбираем) сделанную ранее пару ключей (для последующей авторизации по SSH):

    Созданный закрытый ключ необходимо импортировать в PuTTYgen и пересохранить в формат закрытого ключа Putty (если Вы работаете на платформе Windows). Т.к. доступ на виртуальные машины осуществляется по умолчанию с использованием закрытого ключа, рекомендуется задать пароль для его защиты.

Всё, машина запущена!

Аналогично запускаем вторую виртуальную машину, но уже как slave:

Нажмите на рисунок, чтобы увеличить

Итог: Запущены две виртуальные машины требуемой производительности с установленной 64-х разрядной операционной системой CentOS.

Для установки и настройки веб-платформы мы использовали бесплатный пакет «1С-Битрикс: Веб-окружение» - Linux. Данный пакет предназначен для быстрой и простой установки и конфигурации всего стека ПО, используемого продуктами "1С-Битрикс" на Linux-платформах.

Мы не ограничиваем использование той или иной веб-платформы. Можно использовать любой другой дистрибутив ОС, иные дистрибутивы и настройки серверного ПО. Однако мы рекомендуем использовать именно "1С-Битрикс: Веб-окружение":

  • как показывают тесты, прирост производительности на сервере, на котором установлено веб-окружение, по сравнению с "голым" сервером с настройками по умолчанию - как минимум, в 2-3 раза;
  • требуется минимальное время для разворачивания системы - полностью настроенную среду можно получить в буквальном смысле в считанные минуты, использование веб-окружения по нашим подсчетам экономит 200-300 часов администрирования.
  • Настройки веб-окружения сбалансированы под большие нагрузки.

Настройка репликации MySQL

Как настроить

Репликация MySQL используется для решения следующих задач:

  1. Увеличение производительности СУБД за счёт подключения к ней серверов при возрастающей нагрузке. Выделяется один сервер преимущественно для модификации данных (master) и остальные для чтения данных (slaves).Это особенно эффективно для веб-приложений, у которых большая часть запросов к СУБД - запросы на чтение.
  2. Онлайн бэкап - данные передаются в режиме онлайн на резервные slave-сервера. При отказе основного сервера на одном из резервных slave серверов имеется "свежая" копия данных.
  3. Эффективное резервное копировании: бэкап делается с резервного сервера без прерывания /замедления работы основного сервера СУБД. Для осуществления целостного [dw]бинарного[/dw][di]Двоичный (bin’арный) бэкап[/di] бэкапа СУБД (в особенности InnoDB) можно остановить на необходимое время резервный сервер, выполнить бэкап и запустить резервный сервер снова.
  4. Обеспечение высокой доступности: при выходе из строя одного из серверов СУБД система продолжает обрабатывать запросы.
  5. Примечание: Подробнее о примерах использования репликации MySQL читайте в официальной документации.

Надежность репликации

Вечная проблема: либо производительность, либо надёжность. Для обеспечения максимальной надежности репликации рекомендуется установить следующие параметры MySQL:

innodb_flush_log_at_trx_commit = 1
sync_binlog = 1
sync_relay_log = 1
sync_relay_log_info = 1

Примечание: Установка именно таких параметров может привести к общему снижению производительности системы.

Для повышения производительности можно использовать такие параметры (чревато потерей данных нескольких транзакций в момент аварии на базе данных):

innodb_flush_log_at_trx_commit  = 2
sync_binlog = 0

Динамический hostname

Если у настраиваемого сервера динамический IP-адрес/hostname, рекомендуется явно задать параметры: relay-log, relay-log-index (актуально для версии MySQL 5.5).

Привилегии

Для работы репликации учетные записи основного и резервных master/slave-серверов должны иметь, кроме стандартных, также привилегии: SUPER, REPLICATION CLIENT, REPLICATION SLAVE.

Учетные записи

Временные зоны

Если сервера СУБД кластера расположены в разных дата-центрах, необходимо настроить на них единую временную зону.

Настройка репликации в административном интерфейсе

При добавлении резервного [ds]slave-сервера[/ds][di]Подключение к сайту дополнительных серверов баз данных позволяет снизить нагрузку на основную базу данных. В этом случае чтение данных происходит из дополнительных (slave) баз данных, а запись - в основную.

Подробнее ...[/di] СУБД мастер настройки репликации проверяет [dw]все необходимые параметры[/dw][di]Мастер добавления новой slave базы данных[/di]. После успешного добавления slave-сервера отображается его [dw]статус[/dw][di]Статус сервера баз данных[/di].

Администрирование репликации

Репликация после настройки работает надежно и требует минимального администрирования. Тем не менее, рекомендуется периодически проверять её состояние утилитами мониторинга операционной системы (nagios, zabbix, monit, linux-ha).

В маловероятном случае возникновения ошибки на slave-сервере переинициализируйте его - заново залейте данные с основного сервера. Для этого нужно его Прекратить использовать, а затем [dw]Начать использовать[/dw][di][/di] в разделе Репликация (Настройки > Веб-кластер > Репликация).

Резервное копирование

Можно свободно останавливать slave-сервера, в том числе для осуществления логического и целостного бинарного резервного копирования средствами MySQL и операционной системы. При этом не прерывается работа основного сервера СУБД.


Аварийное переключение в случае отказа master

Если вышел из строя master

Если отказал основной (master) сервер СУБД, то вручную или автоматически скриптом переключите кластер на другой master-сервер СУБД. Slave-сервер, хранящий последние реплицированные данные, станет основным.

Общая схема этой процедуры:

  1. Закрываем доступ клиентов к веб-приложению

    В двухуровневой конфигурации (фронтэнд nginx - бэкэнд apache и т.п.) на фронтэнде отключите доступ к бэкэнду (веб-приложению) и отдавайте при обращении клиентов информационную страницу о регламентных работах.

  2. Остановите на всех slave-серверах поток получения обновлений бинарного лога с основного (master) сервера:

    STOP SLAVE IO_THREAD;
    SHOW PROCESSLIST;
    

    Дождитесь от потока выполнения команд slave (SQL_THREAD) сообщения "Has read all relay log; waiting for the slave I/O thread to update it", говорящее о том, что slave-сервер выполнил все команды из relay-лога в своей базе. Сразу останавливать slave командой STOP SLAVE не рекомендуется, т.к. не все SQL-команды могут быть выполнены из relay-лога (по причине отставания и т.п.), а при переключении slave на новый мастер, relay-лог будет очищен и, возможно, потеряется часть "непроигранных" данных.

  3. Подготовка нового master-сервера

    Убедитесь, что на slave-сервере, который будет master-сервером, бинарный лог ведется и не логируются запросы из master:

    SHOW VARIABLES LIKE 'log_bin';
    log_bin       | ON
    SHOW VARIABLES LIKE 'log_slave_updates';
    log_slave_updates | OFF 
    

    Полностью останавите slave: потоки чтения бинарного лога и выполнения SQL-команд:

    STOP SLAVE;
    RESET MASTER;
    

    Команда RESET MASTER необходима для очистки бинарного лога нового master. Иначе, если в бинарном логе будут записи (устаревшие и т.п.), они проиграются на подключаемых к нему slave-серверах. Такое возможно, если сервер был master с включенным бинарным логом, потом стал slave и перестал использовать бинарный лог, потом снова переводится в режим master.

    Итак, новый master подготовлен, у него очищен бинарный лог, и он готов обрабатывать запросы.

  4. Переключение slave-серверов на новый master-сервер

    На всех slave-серверах выполняем:

    STOP SLAVE;
    CHANGE MASTER TO MASTER_HOST='#new_master_host_name#';
    START SLAVE;
    

    В момент выполнения на slave CHANGE MASTER ... очищается relay-лог slave-сервера, а позиция c которой читается бинарный лог master-сервера устанавливается, если не задано иное, в значение по умолчанию: первый файл бинарного лога, 4 позиция (т.е. в самое начало бинарного лога master-сервера).

  5. Переключаем веб-приложение на новый master-сервер

    Необходимо настроить кластер на использование нового master-сервера. Для этого вписываем его характеристики ($DBHost) в файл /bitrix/php_interface/dbconn.php. Затем, если интервал синхронизации статического контента кластера достаточно велик, вручную запускаем процесс синхронизации на master-сервере: csync2 - x (см. урок [ds]Синхронизация данных между серверами[/ds][di]Задачу организации общего файлового хранилища данных веб-кластера можно решить разными, хорошо известными способами, начиная от "расшаривания" папки с файлами продукта на одной из нод, заканчивая высокопроизводительными SAN/NAS-решениями уровня предприятия.

    Подробнее ...[/di]).

  6. Открываем доступ клиентов к веб-приложению

    В двухуровневой конфигурации (фронтэнд nginx - бэкэнд apache и т.п.), на фронтэнде уберите информационную страницу о регламентных работах и переключите запросы на бэкэнд (веб-приложение).

    В итоге кластер использует новый master-сервер.

  7. Подключение вышедшего из строя master-сервера как slave-сервера

    В административном разделе на странице [ds]Репликация[/ds][di]Репликация базы данных - это процесс создания и поддержания в актуальном состоянии её копии .

    Подробнее...[/di] (Настройки > Веб-кластер > Репликация) нажимаем Добавить slave базу данных и следуем указаниям мастера. Происходит переинициализация slave-сервера: в него переносится текущая база данных с master-сервера и включается репликация.

Примечание: После того, как слейв стал мастером (после аварии), необходимо на странице [ds]Slave базы данных[/ds][di]Подключение к сайту дополнительных серверов баз данных позволяет снизить нагрузку на основную базу данных. В этом случае чтение данных происходит из дополнительных (slave) баз данных, а запись - в основную.

Подробнее ...[/di] удалить этот слейв.


Кластеризация веб-сервера

  Несколько веб-серверов

При использовании нескольких веб-серверов для работы сайта любой запрос любого посетителя сайта может попасть на любой из [dw]узлов кластера[/dw][di]О том, как именно могут распределяться коннекты к разным веб-серверам смотрите Способы балансировки нагрузки между нодами веб-сервера[/di].

Такой принцип работы ставит две задачи:

  1. На каждом веб-сервере должен находиться одинаковый контент ([dw]файлы[/dw][di] Например, картинка, загруженная через административный интерфейс на одном веб-сервере, должна быть доступна для отдачи посетителю через другой веб-сервер.[/di]).
  2. Пользовательская сессия должна быть "прозрачной" для всех [dw]серверов веб-кластера[/dw][di]Например, после авторизации на одном из серверов пользователь должен считаться авторизованных и для всех других серверов. И наоборот, окончание сессии на любом сервере должно означать ее окончание на всех серверах сразу.[/di].

Не все эти задачи могут быть решены в полной степени на уровне веб-приложения. Опишем возможные подходы, покажем на примерах конкретные реализации и расскажем о тех инструментах модуля Веб-кластер платформы "1С-Битрикс", которые помогают решить вопрос кластеризации веб-сервера.

  Решение задач

Существует два возможных метода обеспечения синхронизации данных на серверах:

  1. Использование общего дискового хранилища данных.
  2. Использование инструментов синхронизации данных между локальными хранилищами разных серверов.

Кроме того, можно использовать [dw]пул серверов[/dw][di]Пул серверов - это логически автономная область, содержащая один или несколько физических серверов.[/di] memcached (что позволяет значительно сократить объем синхронизируемых файлов за счет вынесения кеша продукта с файловой системы в memcached) и различные варианты хранения пользовательских сессий.

Каждый веб-сервер кластера можно добавить в общий веб-кластер для мониторинга в административном интерфейсе в разделе [ds]Веб-сервера[/ds][di]На странице Веб-сервера (Настройки > Веб-кластер > [_название_группы_] > Веб-сервера) показаны статусы активности и текущей нагрузки веб-серверов. Страница носит информационный характер.

Подробнее ...[/di].

На каждом из серверов необходимо настроить страницу, на которой будет отображаться статистика веб-сервера Apache (с помощью модуля mod_status). Если используется "1С-Битрикс: Веб-окружение", необходимо:

  1. Внести изменения в конфигурационный файл Apache (/etc/httpd/conf/httpd.conf) - добавить:
    <IfModule mod_status.c>
    ExtendedStatus On
    <Location /server-status>
        SetHandler server-status
        Order allow,deny
        Allow from 10.0.0.1
        Allow from 10.0.0.2
        Deny from All
    </Location>
    </IfModule>
    

    Директива Location обозначает адрес, по которому будет доступна статистика, строки Allow from определяют, с каких IP-адресов статистика будет доступна для просмотра. Можно указать IP всех веб-серверов кластера.

    Перечитать конфигурационные файлы Apache с помощью команды:

    # service httpd reload
    
  2. Внести изменения в конфигурационный файл nginx (/etc/nginx/nginx.conf) - в первой секции server добавить:
    Location ~ ^/server-status$
    { 
      proxy_pass http://127.0.0.1:8888; 
    }
    

    Перечитать конфигурационные файлы nginx с помощью команды:

    # service nginx reload
    
  3. Отредактировать файл /home/bitrix/www/.htaccess, добавив после строки:
    RewriteCond %{REQUEST_FILENAME} !/bitrix/urlrewrite.php$ 
    
    ...строку: 
    
    RewriteCond %{REQUEST_URI} !/server-status$
    

После внесения всех необходимых изменений адрес server-status'а можно добавить в [dw]конфигурацию кластера[/dw][di][/di].


Синхронизация данных между серверами

  Хранение файлов

Задача организации общего файлового хранилища данных веб-кластера решается хорошо известными способами, начиная от "расшаривания" папки с файлами продукта на одной из нод и заканчивая высокопроизводительными SAN/NAS-решениями уровня предприятия.

  NAS-сервис веб-кластера на базе NFS, SMB/CIFS

Если веб-кластер создается на двух нодах, на одной ноде запустите сервер NFS/CIFS и обращайтесь к хранимым на нем файлам с других нод веб-кластера.

Для увеличения производительности организуйте выделенный NFS/CIFS сервер, оптимизированный исключительно под файловые операции, используемый всеми нодами веб-кластера. Для достижения большей производительности и надежности общего файлового хранилища веб-кластера рекомендуется обратить внимание на технологии: OCFS, GFS, Lustre, DRBD, SAN, GFS (GlusterFS).

Данные технологии могут значительно упростить организацию общего файлового хранилища для серверов кластера, но могут и отрицательно сказаться на скорости работы. При выборе конкретной из них необходимо проводить тестирование.

  Синхронизация данных между серверами

Другой подход в организации нескольких серверов состоит в использовании локальных хранилищ (дисков) и постоянной синхронизации файлов между ними.

Существует множество инструментов, позволяющих решить эту задачу, начиная с простых утилит копирования файлов (ftp, scp) и заканчивая специализированным ПО для синхронизации данных между серверами (rsync, unison). Рассмотрим два варианта.

lsyncd

Если вы используете виртуальную машину BitrixVM, то в ней используется утилита lsyncd. Описание настроек этой утилиты приводится в курсе "Виртуальная машина".

Пример этих настроек можно взять за основу настройки lsyncd и на других окружениях.

csync2

Также в других окружениях можно использовать утилиту csync2, которая ранее использовалась в штатной BitrixVM до версии 7.0. csync2 предоставляет хорошие возможности:

  • Высокая скорость работы.
  • Низкое потребление ресурсов (CPU, дисковые операции). Два этих фактора позволяют запускать процесс синхронизации максимально часто, поэтому данные на серверах становятся идентичными практически в "реальном времени".
  • Простота настройки для обмена данными между любым количеством серверов.
  • Возможность синхронизации удаления файлов.
  • Защищенный обмен данными между хостами (SSL).

Подробная документация по использованию и конфигурированию csync2 доступна на официальном сайте разработчика: http://oss.linbit.com/csync2/. Мы же рассмотрим пример конкретной конфигурации для двух веб-серверов в кластере.

В некоторых дистрибутивах Linux (например, в Ubuntu) csync2 уже присутствует в репозиториях и доступен для установки из пакетов. Для CentOS это, к сожалению, не так, поэтому необходимо рассмотреть иные варианты установки (сборка из исходников, установка из доступных rpm).

Один из возможных вариантов установки:

  1. Устанавливаем необходимые доступные пакеты (библиотеки rsync используются в csync2, из xinetd будет запускаться серверная часть csync2):
    # yum install rsync librsync-devel xinetd
    
  2. Устанавливаем libtasn1 - библиотеку для работы с X.509 (требуется для csync2):
    # wget http://ftp.freshrpms.net/redhat/testing/EL5/cluster/x86_64/libtasn1-1.1-1.el5/libtasn1-1.1-1.el5.x86_64.rpm 
    # wget http://ftp.freshrpms.net/redhat/testing/EL5/cluster/x86_64/libtasn1-1.1-1.el5/libtasn1-devel-1.1-1.el5.x86_64.rpm 
    # wget http://ftp.freshrpms.net/redhat/testing/EL5/cluster/x86_64/libtasn1-1.1-1.el5/libtasn1-tools-1.1-1.el5.x86_64.rpm 
    # rpm -ihv libtasn1-1.1-1.el5.x86_64.rpm libtasn1-devel-1.1-1.el5.x86_64.rpm libtasn1-tools-1.1-1.el5.x86_64.rpm
    
    
  3. Устанавливаем sqlite (2-ой версии) - именно эта версия используется в csync2:
    # wget http://ftp.freshrpms.net/redhat/testing/EL5/cluster/x86_64/sqlite2-2.8.17-1.el5/sqlite2-2.8.17-1.el5.x86_64.rpm 
    # wget http://ftp.freshrpms.net/redhat/testing/EL5/cluster/x86_64/sqlite2-2.8.17-1.el5/sqlite2-devel-2.8.17-1.el5.x86_64.rpm 
    # rpm -ihv sqlite2-2.8.17-1.el5.x86_64.rpm sqlite2-devel-2.8.17-1.el5.x86_64.rpm
    
  4. Устанавливаем непосредственно csync2:
    # wget http://ftp.freshrpms.net/redhat/testing/EL5/cluster/x86_64/csync2-1.34-4.el5/csync2-1.34-4.el5.x86_64.rpm 
    # rpm -ihv csync2-1.34-4.el5.x86_64.rpm
    
  5. После установки уже доступны сгенерированные SSL-сертификаты, однако, если их нужно сгенерировать заново, сделать это можно так:
    # openssl genrsa -out /etc/csync2/csync2_ssl_key.pem 1024 
    # openssl req -new -key /etc/csync2/csync2_ssl_key.pem -out /etc/csync2/csync2_ssl_cert.csr 
    # openssl x509 -req -days 600 -in /etc/csync2/csync2_ssl_cert.csr -signkey /etc/csync2/csync2_ssl_key.pem -out /etc/csync2/csync2_ssl_cert.pem
    
  6. На одном из хостов необходимо сгенерировать файл ключей, который затем будет необходимо разместить на всех серверах, которые будут участвовать в процессе синхронизации:
    # csync2 -k /etc/csync2/csync2.cluster.key
    

    Файл csync2.cluster.key на всех машинах должен быть одинаковым и должен быть размещен в /etc/csync2/.

    Пример конфигурационного файла /etc/csync2/csync2.cfg

  7. Обратим особое внимание на директиву host.

    В конфигурационном файле csync2 может быть задано несколько групп синхронизации. csync2 автоматически игнорирует те группы, в которых не задано локальное имя машины (которое можно посмотреть, например, с помощью команды hostname).

    Поэтому имена машин, данные которых синхронизируются, не должны изменяться. Используйте файл /etc/hosts для указания постоянных IP для конкретных имен. Чтобы задать фиксированное имя для каждого сервера укажите его в каком-либо файле:

    # echo "node1.demo-cluster.ru" > /etc/hostname
    
    И в стартап-скрипте /etc/init.d/network предпоследней строкой (до exit) впишите:
    /bin/hostname -F /etc/hostname
    
  8. Если изначально каждый новый сервер создается уже с копией данных с других серверов (например, в случае использования Amazon EC2 удобно сделать snapshot имеющегося instance, а затем подключить его для нового instance), то первая инициализация базы файлов для синхронизации выполняется с помощью команды:
    # csync2 -cIr
    

    Делается это на каждом хосте.

  9. Работа csync2 на каждом хосте состоит из двух частей - серверной и клиентской. Для запуска серверной части закомментируйте (символом #) в файле /etc/xinetd.d/csync2 строку "disable = yes", перезапустите сервис xinetd и разрешите его запуск при загрузке системы:
    # service xinetd restart 
    # chkconfig xinetd on
    
  10. Клиентская часть - запуск csync2 с ключом "-x".

    Определите (в зависимости от объема данных) необходимую частоту обновлений и пропишите запуск csync2, например, через cron. Строка в /etc/crontab:

    */5 * * * * root /usr/sbin/csync2 -x >/dev/null 2>&1
    
    ...означает запуск csync2 каждые 5 минут.

Кластеризация кеша (memcached)

  Кеш храним в кластере

Для обеспечения максимальной производительности веб-кластера реализовано централизованное, разделяемое между нодами хранилище данных кэша - кэш, созданный в результате ресурсоемких вычислений нодой "А", будет использован нодой "B" и остальными нодами кластера. Чем больше нод, тем больший эффект даст использование централизованного кэша.

Для централизованного и надежного хранения данных кэша используется кластер серверов memcached, который активно используется в таких проектах как Youtube, Facebook, Twitter, Google App Engine.

Для запуска сервера memcached на "1С-Битрикс: Веб-окружение" (Linux) выполните команды:

# chkconfig memcached on
# service memcached start
 

  Улучшенная эффективность за счет вытеснения устаревших данных

За счет использования в сервере memcached алгоритма LRU в кэше будут храниться только наиболее актуальные данные, а редко используемые - вытесняться. Это не позволит объему кэша безгранично разрастаться в размерах (например, из-за ошибок разработчиков при интеграции), что приводило не только к неэффективному использованию ресурсов системы, но и отрицательно сказывалось на скорости работы с кэшем за счет роста его объема.

В результате кэш веб-кластера будет автоматически поддерживаться в максимально эффективном состоянии: как по скорости доступа, так и по использованию ресурсов.

Рекомендуется периодически анализировать использование кэша приложением и подобрать оптимальный размер кэша. Если сервера memcached имеют разный размер (обусловленный, возможно, разным объемом оперативной памяти на физических серверах), можно регулировать их использование через задание [dw]Процент распределения нагрузки[/dw][di][/di].

  Улучшенная надежность и масштабируемость

За счет кластеризации данных кэша на нескольких серверах memcached выход из строя одного memcached сервера не выведет из строя подсистему кэширования. В случае увеличения объема данных кэша необходимо подключить к веб-кластеру дополнительный memcached сервер:

Если используется несколько memcache-серверов, нужно установить значение переменной memcache.hash_strategy string в consistent (по умолчанию это выключено!). Такое значение нужно для следующего: если один из мемкэшей сломается, начнется ресурсоемкая операция перетасовки ключей между мемкэшами, замедляющая работу веб-кластера. А если установить в consistent - проблем практически не будет.

  Безопасность

Необходимо открыть доступ к серверам memcached только для нод веб-кластера путем настройки файервола. При использовании хостинга Amazon Web Services это можно сделать через редактирование параметров группы безопасности (введите параметры, соответствующие вашей конфигурации веб-кластера):


Способы балансировки нагрузки между нодами веб-сервера

  Как распределять нагрузку

Спектр инструментов, служащих для распределения и балансировки нагрузки между серверами, очень широк. Существуют как дорогие аппаратные решения (например, Cisco CSS, Content Services Switch - различных моделей), так и более простые (но тем не менее весьма эффективные) программные средства.

  Elastic Load Balancer (Amazon Web Services)

Балансировщик нагрузки AWS использует простой алгоритм балансировки (round robin) и настраивается достаточно просто. DNS-имя балансировщика создается автоматически, и необходимо создать для него удобочитаемое CNAME:

my-load-balancer-1820597761.us-west-1.elb.amazonaws.com -> www.mydomain.com

В личном кабинете воспользуйтесь командой [dw]добавления балансировщика[/dw][di][/di]. При выборе мастера создания и воспользуйтесь [dw]классическим сценарием[/dw][di][/di] для добавления. Пройдите все шаги мастера.

Балансировщик «слушает» порт 80 и перенаправляет [dw]запросы на 80 порт нод веб-кластера[/dw][di]Нажмите на рисунок, чтобы увеличить[/di].

Укажите страницу ноды для проверки и таймауты:

Нажмите на рисунок, чтобы увеличить

Рекомендуется в Ping Path задать страницу, [ds]обращения к которой не фиксируются[/ds][di]Можно ли отключить статистику на отдельно взятой странице?
Да, для этого необходимо в код страницы вставить следующее:

Подробнее ...[/di] в модуле Веб-аналитика. Остальные параметры выбираются в зависимости от ожидаемой нагрузки.

Выбираем ноды, которые будут находиться за балансировщиком. В связи с простым алгоритмом балансировки (round robin), рекомендуется подбирать ноды примерно одинаковой производительности. Если ноды располагаются в разных дата-центрах (availability zones), то рекомендуется их одинаковое количество в каждом дата-центре.

Нажмите на рисунок, чтобы увеличить

Если мы хотим, чтобы все запросы от одних и тех же клиентов обрабатывались одними и теми же нодами кластера, необходимо добавить привязку сессии посетителя к ноде веб-кластера. Для этого в настройках балансировщика включаем привязку Enable Load Balancer Generated Cookie Stickiness.

Теперь, независимо от того, сколько нод кластера размещены за балансировщиком, они будут доступны по единому доменному имени: www.mydomain.com. В случае выхода ноды из строя/перегрузки балансировщик перестает направлять на нее посетителей кластера.

Примечание: Подробнее о балансировщике нагрузки читайте в официальной документации AWS.

  DNS

Самый простой способ балансирования нагрузки и распределения запросов между веб-серверами - использование механизма round robin DNS. У Amazon в сервисе Route53 существует еще один простой и удобный механизм фейловера на базе DNS (Route 53 Health Checks and DNS Failover).

Спецификация стандарта DNS позволяет указать несколько разных IN A записей для одного имени. Например:

www  IN A  10.0.0.1 
www  IN A  10.0.0.2

В этом случае DNS-сервер в ответ на запрос разрешения имени в IP-адрес будет выдавать не один адрес, а весь список:

# host www.domain.local 
www.domain.local has address 10.0.0.1 
www.domain.local has address 10.0.0.2

При этом с каждым новым запросом последовательность адресов в списке в ответе будет меняться. Таким образом клиентские запросы будут распределяться между разными адресами и будут попадать на разные серверы.

Использование round robin DNS - самый простой способ балансировки нагрузки, не требующий никаких дополнительных средств, однако он обладает целым рядом недостатков, поэтому мы рекомендуем использовать его только в том случае, если нет возможности применить какой-либо иной балансировщик.

Минусы применения round robin DNS:

  • нет четкого критерия выбора IP из списка клиентом (может выбираться первый элемент, может кэшироваться последнее выбранное значение, возможны иные варианты): все зависит от реализации конкретного клиента;
  • нет механизмов определения доступности узлов и возможности задания их "весов": в случае аварии на одном или нескольких узлах кластера нагрузка будет продолжать распределяться между рабочими и вышедшими из строя нодами;
  • длительное время кэширования ответов DNS: в случае аварии и изменении тех или иных записей в DNS потребуется некоторое время (зависит от настроек DNS) для обновления данных на всех клиентах.

  nginx

Рассмотрим пример использования в качестве балансировщика http-сервера nginx. Для этих целей используется модуль ngx_http_upstream.

При использовании "1С-Битрикс: Веб-окружения" nginx уже установлен на серверах веб-кластера. И для распределения нагрузки можно использовать непосредственно один из серверов кластера. Однако для более простого, гибкого и удобного конфигурирования лучше использовать отдельный сервер с установленным nginx в качестве балансировщика.

В простейшем примере фрагмент конфигурационного файла nginx (/etc/nginx/nginx.conf), обеспечивающего распределение нагрузки между серверами, будет выглядеть так (помимо стандартных директив, определяющих, например, пути и формат log-файлов и т.п.):

http { 
    upstream backend { 
        server node1.demo-cluster.ru; 
        server node2.demo-cluster.ru; 
    } 

    server { 
        listen   80; 
        server_name  load_balancer; 

        location / { 
            proxy_set_header X-Real-IP $remote_addr; 
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
            proxy_set_header Host $host:80; 

            proxy_pass  http://backend; 
        } 

    } 
}

В секции upstream задаются адреса серверов, между которыми будет распределяться нагрузка.

В DNS имя сайта указывается на тот IP, на котором работает сервер с nginx, распределяющем нагрузку.

Если не указаны какие-либо дополнительные параметры, запросы распределяются между серверами по принципу round robin.

Однако с помощью модуля ngx_http_upstream можно реализовать и более сложные конфигурации.

  • В некоторых случаях бывает удобно передавать все запросы от одного клиента на один и тот же сервер, а между серверами распределять только запросы разных клиентов.

    Для реализации подобного функционала служит директива ip_hash. Пример:

    upstream backend 
    { 
        ip_hash; 
    
        server node1.demo-cluster.ru; 
        server node2.demo-cluster.ru; 
    }
    

    В этом случае распределение запросов основано на IP-адресах клиентов.

  • Если для узлов кластера используются серверы разной конфигурации (разной мощности), бывает полезно задать "вес" для тех или иных хостов, направляя на них больше или меньше запросов.

    Для этого служит параметр weight директивы server. Пример:

    upstream backend 
    { 
        server node1.demo-cluster.ru weight=3; 
        server node2.demo-cluster.ru; 
        server node3.demo-cluster.ru; 
    }
    
    В такой конфигурации каждые 5 запросов будут распределяться следующим образом:
    • 3 - на node1.demo-cluster.ru;
    • 1 - на node2.demo-cluster.ru;
    • 1 - на node3.demo-cluster.ru.

    Обратите внимание: для серверов, использующих метод распределения ip_hash, нельзя задать вес.

  • Можно настроить параметры, по которым будут определяться неработающие серверы.

    max_fails = число - задает число неудачных запросов к серверу в течение времени, заданного параметром fail_timeout, после которых он считается неработающим также в течение времени заданного параметром fail_timeout;

    fail_timeout = время

    Пример:

    upstream backend 
    { 
        server node1.demo-cluster.ru max_fails=3 fail_timeout=30s; 
        server node2.demo-cluster.ru max_fails=3 fail_timeout=30s; 
    }
    

    Если при запросе к серверу произошла ошибка, запрос будет передан на следующий сервер. Если произошло 3 ошибки в течение 30 секунд, то на 30 секунд сервер будет помечен неработающим, и в течение этого времени новые запросы не будут на него отправляться.

Примечание: Пример настройки балансировщика на NGINX - универсальный. Его можно брать за основу для настройки на любом другом сервисе.


Добавление ноды веб-кластера

+ ещё одна нода

Задача: в связи с растущей нагрузкой необходимо добавить ноду к веб-кластеру. Фактически, необходимо запустить новый физический/виртуальный сервер и прописать его в настройках веб-кластера.

Так как наш демо-кластер мы запускали в «облаке» Амазона, мы опишем последовательность действий именно для AWS. Однако и для любой другой среды ( VPS или несколько выделенных серверов) общая схема будет примерно такой же.

На облачном хостинге AWS необходимо:

  1. Создать [dw]снапшот[/dw][di]Снапшот (от англ. snapshot - моментальный снимок) - это полный снимок текущего состояния какой либо системы, который позволяет в любой момент вернуть её к сохраненной конфигурации. [/di] диска с данными приложения одной из нод.
  2. Создать из снапшота новый диск.
  3. Запустить виртуальную машину с AMI, аналогичной оригинальной ноде.
  4. Выбрать для виртуальной машины аппаратную конфигурацию в зависимости от ожидаемой нагрузки. В самом простом случае рекомендуется ее выбрать аналогичной оригинальной ноде.
  5. Остановить новую ноду.
  6. Отключить от нее диск.
  7. Вместо отключенного диска подключить диск созданный в шаге 2.
  8. Запустить новую ноду.
  9. Привязать при необходимости к новой ноде [dw]эластичный IP-адрес[/dw][di]В AWS эластичный IP-адрес – это статический IPv4-адрес для динамических облачных вычислений.

    Подробнее информацию вы найдёте в официальной документации AWS.[/di].
  10. Настроить новую ноду: если используется csync2, то прописать в его настройки на всех нодах веб-кластера доменное имя новой ноды. Запустить на ней необходимые сервисы: memcached, mysql-slave.
  11. Рекомендуется в инициализационные скрипты новой ноды добавить ее привязку к эластичному IP-адресу. Иначе при ее остановке/запуске нужно будет снова привязывать к ней IP-адрес вручную.
  12. Теперь с новой нодой синхронизируется контент с текущих нод веб-кластера. Ее необходимо добавить в балансировщик нагрузки.

    Примечание. Если новая нода используется как mysql-slave, memcached-сервер, необходимо зарегистрировать её в административном интерфейсе веб-кластера (Настройки > Веб-кластер).


Нагрузочное тестирование кластера, анализ различных сценариев и выводы

  Проверяем работу

Существует множество утилит для проведения [ds]нагрузочных тестов веб-систем[/ds][di]Есть такой миф из XP/TDD, что можно полностью покрыть веб-приложение модульными и функциональными тестами, написать большое количество Selenium-тестов, кликающих по системе снаружи и без страха вносить в систему доработки и выкладывать на рабочий сервер через процесс непрерывной интеграции.

Подробнее ...[/di]. От достаточно простых (ab, входящая в дистрибутив Apache, siege, httperf) до мощных инструментов, позволяющих задавать любые пользовательские сценарии и предоставляющих самую разнообразную статистическую информацию (JMeter, tsung, WAPT).

Кроме этих утилит вы можете использовать [ds]Монитор производительности[/ds][di]Монитор производительности показывает скорость работы сайта на хостинге, выявляет узкие места (скрипты на сайте, которые потребляют наибольшее число системных ресурсов) и основные ошибки настройки сервера.

Подробнее ...[/di] платформы "1С-Битрикс" доступен встроенный инструмент тестирования нагрузки.

Обратите внимание: для минимизации влияния самого тестирующего скрипта на результаты тестов рекомендуется запускать его не на самих тестируемых серверах, а на отдельном хосте.

На тестируемом сайте необходимо на время проведения теста отключить опцию ([dw]Блокировать?[/dw][di][/di]) в настройках модуля Веб-аналитика, закладка Настройки, секция Ограничение активности.

Покажем, как работает этот инструмент, и проведем несколько тестов.

  Первый тест - рост нагрузки

Параметры проводимых тестов:

  • Сервер - в нашем случае мы даем тестовую нагрузку на балансировщик (nginx), который распределяет нагрузку между двумя веб-серверами кластера (на каждом сервере работают и добавлены в кластер веб-сервер, MySQL, memcached);
  • Страница - URL, на который отправляются запросы;
  • Начальное количество одновременных соединений, Конечное количество, Шаг увеличения соединений - параметры нагрузки.

В нашем тестовом примере мы начинаем отправлять запросы на индексную страницу в 10 одновременных потоков и постепенно увеличиваем их количество до 200.

По графику Время генерации/получения страницы мы видим что:

  • вся система сбалансирована по нагрузке, с ее ростом не наступает деградация производительности системы (скорость генерации страниц сервером практически не изменяется, это видно на красном графике);
  • увеличивается время отдачи страниц клиентам, растет очередь (синий график).

  Второй тест - эмуляция аварии (отключения) сервера со slave базой данных MySQL

Во втором тесте мы [dw]эмулируем отключение одной из машин кластера[/dw][di][/di] (той, на которой работает slave-база данных MySQL).

Небольшие пики на графиках – моменты синхронизации контента (у нас в тесте установлен частый период обновлений, его можно уменьшить).

Большой «провал» красного графика (и «всплеск» на синем графике) – момент отключения одной из машин кластера.

  Третий тест - эмуляция аварии (отключения) сервера с master базой данных MySQL

Отключение сервера с master-базой данных MySQL отличается от предыдущего теста тем, что необходимо выполнить ряд действий для переключения базы данных slave в режим мастера. Общая схема действий подробно описана в главе [ds]Настройка репликации MySQL, аварийное переключение slave->master[/ds][di]В случае отказа основного (master) сервера СУБД, необходимо вручную или автоматически скриптом переключить кластер на другой master-сервер СУБД. Для этого обычно slave-сервер, хранящий последние реплицированные данные, переводят в режим основного.

Подробнее ...[/di].


Веб-формы

Веб-форма - специальная область на странице или отдельная страница сайта, в которой посетитель может внести ту или иную информацию. Образно - это аналог бумажной анкеты, бланка и опросного листа. Количество веб-форм и количество вопросов в них ничем не ограничено, вам доступно гибкое управление параметрами ваших форм.

Возможности модуля Веб-формы

Где используются Веб-формы

Вы можете использовать их, например, для:

  • создания форм обратной связи;
  • для получения запросов посетителей вашего сайта (заявок на приобретение товара каталога или на участие в семинаре, обращений к компании и т.д.);
  • заполнения и хранения анкет;
  • создания новых [ds]лидов[/ds][di] Лид - это самый-самый «холодный контакт», зацепка, которая может стать клиентом, а может и не стать. Это может быть email, номер телефона, даже какое-то событие - всё, что может послужить источником для ваших менеджеров по продажам; все, за что можно «зацепиться», чтобы в будущем получить клиента.

    Подробнее...[/di] CRM (для корпоративного портала);
  • обработки другой информации, подразумевающей использование форм для ввода данных.

Возможности модуля Веб-формы

Кроме создания веб-форм и выведения их в [dwi include_public_area]публичной части[/dwi], модуль:

  • хранит результаты ответов в базе данных;
  • извещает о заполнении веб-формы на указанный электронный адрес (адреса);
  • ограничивает просмотр ответов посетителей в зависимости от уровня прав на доступ к веб-формам или статусов для результатов веб-форм;
  • помогает анализировать динамику заполнения веб-форм, а также выдаёт информацию о посетителях, заполнивших формы;
  • работает в двух режимах редактирования:
    • [dw]упрощенном[/dw][di]Упрощенный режим предназначен для решения простых задач, например, создания формы обратной связи. В этом режиме не используются поля и статусы веб-форм
      Подробнее...[/di];
    • [dw]расширенном[/dw][di]Расширенный режим работы с веб-формами, помимо управления вопросами и результатами веб-форм, позволяет настраивать статусы результатов и создавать вычисляемые поля веб-форм
      Подробнее...[/di].

Примечание: Если Вы хотите провести на сайте исследование, собрав мнения посетителей сайта по различным вопросам и проведя голосование, воспользуйтесь функционалом модуля [ds]Опросы.[/ds][di] Опрос — очень удобный метод сбора мнений от посетителей сайта по разным вопросам. Опросы дают возможность быстро и с минимальными затратами собрать большой объем данных и принять правильное бизнес-решение по результатам исследования.

Подробнее...[/di]

Работа с вебформами

Работа с модулем описана в курсе Контент-менеджер.

Документация по теме:


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

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

Настройка модуля Веб-формы осуществляется на странице Настройки > Настройки продукта > Настройки модулей > Веб-формы:

Нажмите на рисунок, чтобы увеличить

Поясним некоторые опции вкладки Настройки:

  • Использовать упрощенный режим редактирования форм - включение/выключение [dw]расширенного режима[/dw][di]Расширенный режим работы с веб-формами, помимо управления вопросами и результатами веб-форм, позволяет настраивать статусы результатов и создавать вычисляемые поля веб-форм.
    Подробнее...[/di] работы с веб-формами. После выключения упрощённого режима возврат к нему не рекомендуется: возможно искажение данных.
  • Максимальное кол-во записей выбираемых в SQL запросах - число записей, которое будет разрешено выбирать за один запрос SQL (устаревший параметр);
  • Право по умолчанию для вновь создаваемых веб-форм - определяются возможные действия для пользователя с создаваемой формой.

  Связь с CRM

На вкладке Связь с CRM модуль Веб-формы можно [dw]интегрировать с CRM корпоративного портала[/dw][di]Веб-форма может передавать данные в CRM корпоративного портала в качестве нового лида.
Подробнее...[/di], после чего любую веб-форму можно настроить так, что результаты ее заполнения будут отправляться в качестве полей нового лида в CRM.

Чтобы добавить новое соединение нажмите кнопку Добавить, после чего появится окно [dw]привязки CRM[/dw][di]Доступно с CRM версии 11.5 и выше.[/di]:

Поясним некоторые поля:

  • Сервер CRM - адрес вашего корпоративного портала или Битрикс24.
  • Путь - адрес страницы с компонентом интеграции относительного корневого каталога сервера (он уже по умолчанию должен присутствовать в поле и вводить его не надо).

  Доступ

На вкладке Доступ указывается уровень доступа к настройкам форм и результатам заполнения.

Чтобы добавить право доступа для какой-либо группы пользователей, нажмите ссылку Добавить право доступа. В противном случае ко всем группам пользователей, кроме администраторов, будет применено право доступа По умолчанию.

  Документация по теме




Настройка доступа к собственным результатам заполнения веб-формы

Как настроить доступ

Доступ пользователя к результатам заполнения веб-формы в упрощённом режиме задаётся в настройках модуля Веб-формы. Если выставить полный доступ, то все члены группы пользователей будут иметь доступ ко всем веб-формам. Такое решение удобное, но не всегда правильное.

Более гибко ограничение прав реализовано в расширенном режиме редактирования. В настройках модуля Веб-формы для группы пользователя обозначьте право доступа как доступ открыт и выключите [dw]использование упрощённого режима[/dw][di][/di] редактирования веб-форм.

Определите доступ непосредственно к конкретной веб-форме (Сервисы > Веб-формы > Настройка форм > Имя_формы):

Создайте для данной формы статусы или используйте уже существующие, но в том и другом случае у соответствующей группы пользователей должен быть доступ к работе с результатами в данном статусе:

Для доступа в административном интерфейсе к результатам заполнения веб-формы нужно чтобы пользователь имел как минимум право [dw]Чтение[/dw][di]На странице Контент > Структура сайта > Файлы и папки > bitrix, в меню действий папки /admin кликните пункт Права на доступ продукта (либо Свойства папки, а затем перейдите на закладку Доступ) и укажите данное право для группы, к которой принадлежит пользователь..[/di] на папку /bitrix/admin/.

Документация по теме:


Система "Вопрос-ответ" на базе веб-форм

После знакомства с теорией работы модуля [dw]Веб-формы[/dw][di]Модуль организует работу с произвольными веб-формами, позволяет хранить и фильтровать данные заполненных форм
Подробнее...[/di] изучить живой пример использования - крайне полезно. Рассмотрим пример создания системы Вопрос-ответ с использованием статусов.

ТЗ на систему Вопрос-ответ

Как должна работать система Вопрос-Ответ

Техническое задание на систему Вопрос-ответ:

  • На главной странице раздела Вопрос-ответ представлен список вопросов с ответами на них. Причем для администраторов сайта и модераторов системы (специальной группы пользователей) будут отображаться и вопросы без ответов.

    Для быстрого поиска необходимых вопросов и ответов используется специальная форма фильтра.

    В зависимости от прав пользователя доступны действия с вопросами: ответить на вопрос или удалить вопрос. Администраторы сайта могут отвечать на вопросы, изменять ответы и удалять вопросы. Модераторы могут отвечать на вопросы только один раз.

  • Для создания нового вопроса используется специальная форма, расположенная на отдельной странице.
  • Составление ответа на вопрос выполняется на отдельной странице с помощью специальной формы.
  • При заполнении формы должно быть получено согласие пользователя на [ds]обработку персональных данных[/ds][di]Согласно закону ФЗ-152 пользователь должен дать согласие/несогласие на обработку своих персональных данных. На сайте обязательно должна быть страница с текстом соглашения об обработке персональных данных. А на странице обязательно должен быть специальный адрес для обращений пользователей.

    Подробнее ...[/di].

Примечание: работа с веб-формами должна осуществляться в [dw]расширенном режиме[/dw][di]Расширенный режим работы с веб-формами, помимо управления вопросами и результатами веб-форм, позволяет настраивать статусы результатов и создавать вычисляемые поля веб-форм.
Подробнее...[/di].

Модераторы системы Вопрос-ответ

Если необходимо, создайте группу пользователей Модераторы системы "Вопрос-ответ". Специальной потребности в этом нет, так как права модераторов определяются при настройке веб-формы и ее элементов, и можно выбрать любую существующую группу. Однако, если по каким-то причинам модерацию должны проводить отдельные пользователи, то [dw]создание группы[/dw][di]Управление группами пользователей выполняется на странице Группы пользователей (Настройки > Пользователи > Группы пользователей)
Подробнее[/di] будет лучшим решением.

Если у Контент-менеджера нет прав на создание групп пользователей, что естественно для большинства проектов, то обратитесь к администратору сайта с просьбой создать такую группу.



Настройка веб-формы

Создадим саму веб-форму, её шаблон, вопросы, поля, настроим статусы.

Что должно быть в веб-форме

Что должно быть в веб-форме

Пусть в нашей системе Вопрос-ответ при создании вопроса посетитель сайта укажет следующие данные, которые будут являться [dw]вопросами формы[/dw][di]
Подробнее...[/di]:

  • фамилию, имя, отчество;
  • электронный адрес;
  • номер телефона;
  • текст вопроса.

Кроме того, при создании вопроса пользователь должен будет заполнить поле защиты от роботов (CAPTCHA). Возможность использования CAPTCHA определяется настройками самой формы.

Чтобы модератор системы мог ответить на вопрос, нам следует создать также [dw]поле формы[/dw][di]Поле формы используется для хранения каких-либо данных, введённых после сохранения заполненной формы (после сохранения результата). Простейший пример: комментарий к ответу пользователя
Подробнее...[/di] для хранения ответа.


Требование законодательства РФ

И последнее требование - это требование законодательства РФ: ФЗ-152 о персональных данных. Страница с Веб-формой должна обязательно содержать чекбокс подтверждения посетителем своего согласия на обработку персональных данных, если такие данные запрашиваются. А мы запрашиваем: e-mail и телефон.

На данный момент, к сожалению, штатно этот функционал в компонентах модуля Веб-формы не реализован. Добавить чекбокс подтверждения согласия можно, но потребуется привлечение разработчиков.



Создание веб-формы, вопросов и полей

  Создание веб-формы

Для создания формы перейдите в административный раздел на страницу Сервисы > Веб-Формы > Настройка форм и нажмите кнопку Создать. На закладке Свойства заполните все [dw]необходимые поля[/dw][di][/di]. Подпись кнопки, сохраняющей результаты формы, замените на Отправить и отметьте опцию Использовать CAPTCHA.

На закладке Доступ для групп Все пользователи и Модераторы системы "Вопрос-ответ" укажите право доступа работа со всеми результатами в соответствии с их статусами:

Сохраните веб-форму. К настройке шаблона веб-формы и почтового шаблона вернемся после того, как создадим вопросы, поле и статусы.

  Создание вопросов

Последовательно создайте все вопросы, указанные в Техзадании:

Символьный идентификаторОбязателенТекст вопросаОтвет, тип поляПоля в фильтре
nameдаФамилия, имя, отчествопустое значение (пробел), тип textотмечаем текстовое поле в поле для вводимого значения
textдаВопроспустое значение (пробел), тип textareaотмечаем текстовое поле в поле для вводимого значения
emailдаАдрес электронной почтыпустое значение (пробел), тип emailне указываем
phoneнетНомер телефонапустое значение (пробел), тип textне указываем

Рекомендуется выставить сортировку вопросам, чтобы они отображались в верной последовательности, например, в фильтре. В результате на странице со списком вопросов веб-формы у нас будет представлена следующая таблица:

  Создание полей

Теперь создайте поле, в котором будет хранить ответ на вопрос.

На закладке Свойства задайте параметры:

  • символьный идентификатор - our_answer;
  • типа поля - текст;
  • заголовок - Ответ.

Чтобы создаваемое поле не просто отображалось в фильтре поиска, а обязательно после полей Фамилия, имя, отчество и Вопрос:

  • задайте значение сортировки больше, чем у вопроса Фамилия, имя, отчество и больше, чем у вопроса Вопрос. Например, равной 300 (см. настройки сортировки вопросов выше).
  • на закладке Фильтр отметьте текстовое поле в поле [dw]Поля в фильтре[/dw][di][/di].

Сохраните созданное поле.



Настройка статусов

Создаём статусы для вебформы

Нам понадобятся [dw]два статуса[/dw][di]Они нужны для того, чтобы реализовать сложные схемы работы с веб-формами, когда нужно не просто получить ответы на вопросы от посетителей сайта, но и обработать их: занести в CRM, составить какие списки по выборочным данным и так далее.
Подробнее...[/di] для результатов заполнения веб-формы:

  1. Статус Вопрос – устанавливается [dw]по умолчанию[/dw][di]В форме создания статуса отмечаем опцию:
    [/di] сразу после заполнения формы.

    Чтобы созданный вопрос был виден только его создателю и пользователям группы Модераторы системы "Вопрос-ответ", а также чтобы модераторы могли отвечать на вопрос, в настройках доступа этого статуса необходимо выставить [dw]права доступа[/dw][di][/di]:

    • Имеют право на перевод результатов в данный статус [MOVE] – здесь выбираем создатель результата.
    • Имеют право на просмотр результатов в данном статусе [VIEW] – выбираем создатель результата и Модераторы системы "Вопрос-ответ", чтобы остальные пользователи не видели неотвеченных вопросов в списке.
    • Имеют право на редактирование результатов в данном статусе [EDIT] – выбираем группу Модераторы системы "Вопрос-ответ", поскольку только пользователи этой группы смогут отвечать на вопросы.
    • Имеют право на удаление результатов в данном статусе [DELETE] – здесь ничего не выбираем, т.к. удалять неотвеченные вопросы модераторы не могут. Это право оставляем за администратором сайта.
  2. Статус Ответ – устанавливается вручную, когда модератор дал ответ на вопрос.

    На закладке Свойства указываем заголовок статуса и переходим на закладку Доступ, чтобы настроить [dw]права доступа[/dw][di][/di] к результатам в этом статусе:

    • Имеют право на перевод результатов в данный статус [MOVE] – когда модератор отвечает на вопрос, то результат сразу переводится в данный статус, поэтому здесь выбираем группу Модераторы системы "Вопрос-ответ".
    • Имеют право на просмотр результатов в данном статусе [VIEW] – выбираем группу Все пользователи, поскольку все пользователи могут просматривать систему Вопрос-ответ.
    • Имеют право на редактирование результатов в данном статусе [EDIT] – ничего не выбираем, т.к. никто, кроме администраторов сайта, не может изменять уже отвеченные вопросы.
    • Имеют право на удаление результатов в данном статусе [DELETE] – ничего не выбираем, т.к. никто, кроме администраторов сайта, не может удалять вопросы из системы.

Создание шаблона формы

Как будет выглядеть ваша форма

Внешний вид формы добавления нового вопроса в систему Вопрос-ответ зависит от того, как вы настроите шаблон веб-формы. Пусть шаблон выглядит, например, так:

На закладке Шаблон формы в визуальном редакторе добавьте элемент Название формы, а под ним задайте таблицу из 2-х столбцов и 5-и строк. В строках разместите элементы: Название вопроса (первый столбец) и сам вопрос (второй столбец). В последней строке разместите элементы для вывода CAPTCHA:

Всё, шаблон готов.

Для любопытных: HTML-код формы выглядит так


Почтовый шаблон

Шаблон для e-mail сообщений

После заполнения веб-формы отправляется письмо с уведомлением модераторам и администратору сайта.

В форме редактирования веб-формы Вопрос-ответ переходим на закладку Дополнительно и нажимаем ссылку [dw]создать[/dw][di][/di]. В результате сразу создается почтовый шаблон и почтовое событие Заполнена web-форма "Question_answer" для нашей веб-формы.

По [dw]ссылке с идентификатором[/dw][di][/di] шаблона переходим к его редактированию:

  • В поле Кому указываем email модератора.
  • В поле Копия указываем email администратора сайта, чтобы он мог контролировать работу модератора.
  • Отредактируем текст сообщения, оставив только данные о посетителе и сам вопрос, а также добавим ссылку для перехода к форме ответа на вопрос:

Примечание: все параметры, которые могут быть использованы при создании почтового шаблона, указаны внизу формы под полем Сообщение.


Вопросы и ответы

Создадим место на сайте для Вопросов и ответов.

Раздел на сайте для Вопросов и ответов

Создаём структуру

Создайте отдельный [dwi include_add_section]раздел[/dwi] Вопрос - ответ (имя папки - /question_answer) для публичных страниц системы, например, на верхнем уровне, и разместите его в нижнем меню последним пунктом:

[dwi include_add_page]Создайте[/dwi] в папке /question_answer страницы:

  • Вопрос - ответ (название файла index.php) – [dw]главная страница раздела[/dw][di]Она создается автоматически, если создание раздела выполняется с помощью мастера.[/di] со списком вопросов и ответами на них.
  • Задать вопрос (название файла ask_question.php) – страница создания нового вопроса. На ней будет заполняться веб-форма.
  • Ваш вопрос принят (название файла mess_send.php) – здесь будет размещено сообщение об успешном создании нового вопроса. Сюда пользователь будет перенаправляться после заполнения формы на странице Задать вопрос.
  • Дать ответ (название файла answer.php) – страница составления ответа. На ней будет выводиться форма редактирования результата заполнения веб-формы.

Осталось разместить на этих страницах компоненты и настроить их на работу.



Список вопросов и ответов

[dw]Внимание![/dw][di]Этот урок предполагает наличие у администратора навыков по работе с кодом и минимальных знаний PHP, HTML и CSS. Если у вас возникают трудности по реализации описанного в уроке алгоритма, обратитесь к разработчикам вашего сайта.[/di]

Интерфейс главной страницы раздела со списком вопросов создается с помощью компонента Список результатов. Но разместить и настроить компонент - мало, вам предстоит ещё настроить вывод данных, то есть изменить шаблон компонента.

  Размещение компонента

Откройте страницу Вопрос - ответ на редактирование и в теле страницы [dwi include_add_component]обычным способом[/dwi] разместите компонент [comp include_63061]Список результатов[/comp].

Настройте параметры компонента:

  • В поле ID веб-формы укажите форму Вопрос-ответ.
  • Поле Страница просмотра результата оставьте пустым, оно использоваться не будет.
  • В поле Страница редактирования результата введите название страницы составления ответа - answer.php.
  • В поле Страница добавления результата укажите название страницы заполнения формы - ask_question.php.
  • Опцию Показать дополнительные поля веб-формы отметьте, чтобы на странице отображались ответы на вопросы.
  • Опцию Показать текущий статус результата снимите, т.к. эта информация использоваться не будет.

Результат:

Штатный внешний вид врядли подойдёт под дизайн вашего сайта. Отредактируйте шаблон компонента, чтобы изменить внешний вид выводимой информации.

  Редактирование шаблона компонента

[dwi include_copy_tamplate]Скопируйте шаблон[/dwi] компонента Список результатов (bitrix:form.result.list). Откроется [dw]форма копирования[/dw][di][/di] шаблона компонента. Укажите название нового шаблона и шаблон сайта, в который копировать шаблон компонента (например, шаблон по умолчанию .default). Отметьте опции Применить новый шаблон компонента и Перейти к редактированию шаблона, чтобы сразу новый шаблон использовался в компоненте и открылась форма редактирования шаблона.

После сохранения откроется окно для редактирования шаблона компонента. Удобнее редактировать шаблон из административной части. Такие скопированные шаблоны хранятся по пути /bitrix/templates/[название_шаблона_сайта]/components/bitrix. В нашем примере путь до шаблона компонента получится такой: /bitrix/templates/.default/components/bitrix/form.result.list/qa_template, файл template.php.

Сначала отредактируем ту часть, которая отвечает за вывод формы фильтра. В фильтре оставим только следующие поля:

  • дату создания вопроса (хранится в переменной FORM_F_DATE_CREATE);
  • вопросы формы Фамилия, имя, отчество и Вопрос, а также поле Ответ, которые хранятся в arrFORM_FILTER (для показа в фильтре при создании этих вопросов и поля были выполнены соответствующие настройки на закладке [comp include_form_question_edit]Фильтр[/comp]).

Находим в коде шаблона код таблицы формы фильтра (таблица с классом form-filter-table data-table) и заменяем на следующий:

<table class="form-filter-table data-table">
	<thead>
		<tr>
			<th colspan="2"> </th>
		</tr>
	</thead>
	<tbody>
		<?
		if (strlen($arResult["str_error"]) > 0)
		{
		?>
		<tr>
			<td class="errortext" colspan="2"><?=$arResult["str_error"]?></td>
		</tr>
		<?
		} // endif (strlen($str_error) > 0)
		?>
		<tr>
			<td><?=GetMessage("FORM_F_DATE_CREATE")." (".CSite::GetDateFormat("SHORT")."):"?></td>
			<td><?=CForm::GetDateFilter("date_create", "form1", "Y", "", "")?></td>
		</tr>

		<?
		if (is_array($arResult["arrFORM_FILTER"]) && count($arResult["arrFORM_FILTER"])>0)
		{
			foreach ($arResult["arrFORM_FILTER"] as $arrFILTER)
			{
				$prev_fname = "";

				foreach ($arrFILTER as $arrF)
				{
					if ($arParams["SHOW_ADDITIONAL"] == "Y" || $arrF["ADDITIONAL"] != "Y")
					{
						$i++;
						if ($arrF["SID"]!=$prev_fname)
						{
							if ($i>1)
							{
							?>
							</td>
							</tr>
							<?
							} //endif($i>1);
							?>
		<tr>
			<td>
				<?=$arrF["FILTER_TITLE"] ? $arrF['FILTER_TITLE'] : $arrF['TITLE']?>
				<?=($arrF["FILTER_TYPE"]=="date" ? " (".CSite::GetDateFormat("SHORT").")" : "")?>
			</td>
			<td>
			<?
						} //endif ($fname!=$prev_fname) ;
						?>
						<?
						switch($arrF["FILTER_TYPE"]){
							case "text":
								echo CForm::GetTextFilter($arrF["FID"]);
								break;
							case "date":
								echo CForm::GetDateFilter($arrF["FID"]);
								break;
							case "integer":
								echo CForm::GetNumberFilter($arrF["FID"]);
								break;
							case "dropdown":
								echo CForm::GetDropDownFilter($arrF["ID"], $arrF["PARAMETER_NAME"], $arrF["FID"]);
								break;
							case "exist":
							?>
								<?=CForm::GetExistFlagFilter($arrF["FID"])?>
								<?=GetMessage("FORM_F_EXISTS")?>
							<?
								break;
						} // endswitch
						?>
						<?
						if ($arrF["PARAMETER_NAME"]=="ANSWER_TEXT")
						{
						?>
				 [<span class='form-anstext'>...</span>]
						<?
						}
						elseif ($arrF["PARAMETER_NAME"]=="ANSWER_VALUE")
						{
						?>
				 (<span class='form-ansvalue'>...</span>)
						<?
						}
						?>
				<br />
						<?
						$prev_fname = $arrF["SID"];
					} //endif (($arrF["ADDITIONAL"]=="Y" && $SHOW_ADDITIONAL=="Y") || $arrF["ADDITIONAL"]!="Y");

				} // endwhile (list($key, $arrF) = each($arrFILTER));

			} // endwhile (list($key, $arrFILTER) = each($arrFORM_FILTER));
		} // endif(is_array($arrFORM_FILTER) && count($arrFORM_FILTER)>0);
		?></td>
		</tr>
	</tbody>
	<tfoot>
		<tr>
			<th colspan="2">
				<input type="submit" name="set_filter" value="<?=GetMessage("FORM_F_SET_FILTER")?>" /><input type="hidden" name="set_filter" value="Y" />  <input type="submit" name="del_filter" value="<?=GetMessage("FORM_F_DEL_FILTER")?>" />
			</th>
		</tr>
	</tfoot>
</table>

Теперь отредактируем ссылку Заполнить форму >>. Для этого в строке:

<p>
<b><a href="<?=$arParams["NEW_URL"]?><?=$arParams["SEF_MODE"] != "Y" ? (strpos($arParams["NEW_URL"], "?") === false ? "?" : "&")."WEB_FORM_ID=".$arParams["WEB_FORM_ID"] : ""?>"><?=GetMessage("FORM_ADD")?>  >></a></b>
</p>

находим параметр FORM_ADD и заменяем его на FORM_NEW_QUESTION. После чего в языковом файле по пути /bitrix/templates/.default/components/bitrix/form.result.list/qa_template/lang/ru/template.php добавляем следующее языковое сообщение:

$MESS ['FORM_NEW_QUESTION'] = "Задать свой вопрос";

Функции OnSelectAll_ и OnDelete_ можно удалить из шаблона, поскольку в коде для нашей формы списка вопросов и ответов они использоваться не будут.

Теперь можно приступать к редактированию формы списка вопросов и ответов.

Вернемся к редактированию шаблона компонента и для списка вопросов добавим механизм постраничной навигации, чтобы страница не была очень большой. В связи с этим нам потребуется параметр постраничной навигации, определяющий количество вопросов на одной странице. Помимо этого нам необходимо знать идентификатор статуса Ответ. Его можно посмотреть в списке статусов веб-формы (цифра в поле ID). Мы не будем усложнять задачу и зададим эти параметры явно в шаблоне компонента. Просто добавьте строки (важно, чтобы строки были добавлены как PHP код, т.е. в границах знаков <? ?>:

$status = "4";   // ID статуса Ответ. В нашем примере идентификатор статуса Ответ получился равен 4;
$ques_count = "10";  // параметр постраничной навигации. Укажите любую цифру. В нашем примере это 10;

Примечание: Более удобный, но сложный вариант - вы можете определить настройку этих параметров через параметры компонента. Аналогично тому, как мы это сделаем для компонента Редактирование результата далее в примере (урок Ответ на вопрос).

Форма вопросов и ответов будет представлять из себя таблицу, в которой будут отображаться:

  • вопрос;
  • ответ;
  • дата создания вопроса;
  • фамилия, имя, отчество пользователя, создавшего вопрос;
  • ссылки Ответить на вопрос и Удалить вопрос с учетом прав доступа пользователей к системе Вопрос-ответ.

Находим код формы в шаблоне компонента (начало аналогично коду ниже) и заменяем на следующий код:

<form name="rform_<?=$arResult["filter_id"]?>" method="post" action="<?=POST_FORM_ACTION_URI?>#nav_start">
	<input type="hidden" name="WEB_FORM_ID" value="<?=$arParams["WEB_FORM_ID"]?>" />
	<?=bitrix_sessid_post()?>

	<?
	if ($arResult["res_counter"] > 0 && $arParams["SHOW_STATUS"] == "Y" && $arParams["F_RIGHT"] >= 15)
	{
	?>
	<p><input type="submit" name="save" value="<?=GetMessage("FORM_SAVE")?>" /><input type="hidden" name="save" value="Y" /> <input type="reset" value="<?=GetMessage("FORM_RESET")?>" /></p>
	<?
	} //endif(intval($res_counter)>0 && $SHOW_STATUS=="Y" && $F_RIGHT>=15);
	?>
	<p>
	<?=$arResult["pager"]?>
	</p>

<?

if(count($arResult["arrResults"]) > 0)
{
	$arPerm = CFormStatus::GetPermissions($status);
	$rsContent = new CDBResult;
	$rsContent -> InitFromArray($arResult["arrResults"]);
	$rsContent -> NavStart($ques_count);
	$j=0;
	?>
	<table class="data-table form-table">
	<?
	while ($arRes=$rsContent->Fetch())
	{
		$j++;
		$user_date = $arRes["DATE_CREATE"];
		$res_id=$arRes["ID"];
		$arAns = CFormResult::GetDataByID($res_id, array(), $arResult, $arAnswer);
		if ($j>1)
			{
			?>
				<tr><td colspan="3" class="form-results-delimiter"> </td></tr>
			<?
			} 
			?>
		<tr>
		<td><b><?=$arAns["text"][0]["TITLE"]?></b></td><td><?=$arAns["text"][0]["USER_TEXT"]?></td>
		<td rowspan="2"><b><?=substr($user_date,0,10)."";?></b><br/><b><?=$arAns["name"][0]["USER_TEXT"]?></b>
			<br/>
			<?
			if ($arRes["STATUS_ID"]!=$status && in_array("MOVE", $arPerm) || $USER->IsAdmin())
				{
				$href = $arParams["SEF_MODE"] == "Y" ? str_replace("#RESULT_ID#", $arRes["ID"], $arParams["EDIT_URL"]) : $arParams["EDIT_URL"].(strpos($arParams["EDIT_URL"], "?") === false ? "?" : "&")."RESULT_ID=".$arRes["ID"]."&WEB_FORM_ID=".$arParams["WEB_FORM_ID"];
				?>
				[ <a title="<?=GetMessage("FORM_EDIT_ALT")?>" href="<?=$href?>"><?=GetMessage("FORM_EDIT")?></a> ]
				<?
				}
				?>
			<br/>
			<?
			if ($USER->IsAdmin())
				{
				$href = $arParams["LIST_URL"].(strpos($arParams["LIST_URL"], "?") === false ? "?" : "&").($arParams["SEF_MODE"] == "Y" ? "" : "WEB_FORM_ID=".$arParams["WEB_FORM_ID"]."&")."del_id=".$arRes["ID"]."&".bitrix_sessid_get()."#nav_start";
				?>[ <a title="<?=GetMessage("FORM_DELETE_ALT")?>" href="javascript:if(confirm('<?=GetMessage("FORM_CONFIRM_DELETE")?>')) window.location='<?=$href?>'"><?=GetMessage("FORM_DELETE")?></a> ]
				<?
				}
				?>
		</td>
		</tr>
		<tr>
			<?
		if ($arRes["STATUS_ID"]!=$status)
			{
			?>
		<td colspan="2"><i><?=GetMessage("FORM_NEW_ANSWER")?></i></td>
		<?
			}
		else
			{
		?>
		<td><b><?=$arAns["our_answer"][0]["TITLE"]?></b></td>
		<td><?=$arAns["our_answer"][0]["USER_TEXT"]?></td>
		<?
			}
		?>
		</tr>
	<?
	}
	?>
	</table>
<br />
	<?
echo $rsContent->NavPrint('Вопросы');
}
?>
</form>

Важно! Встречающиеся в коде name, text и our_answer - это символьные идентификаторы вопроса Фамилия, имя, отчество, вопроса Вопрос и поля Ответ. Если у Вас заданы другие символьные идентификаторы - замените их на свои.

Для используемого в коде параметра FORM_NEW_ANSWER необходимо в языковом файле /bitrix/templates/.default/components/bitrix/form.result.list/qa_template/lang/ru/template.php добавить следующее сообщение:

$MESS ['FORM_NEW_ANSWER'] = "Вопрос ожидает ответа";

А для параметров FORM_EDIT, FORM_EDIT_ALT, FORM_DELETE_ALT и FORM_DELETE отредактировать их языковые сообщения:

$MESS ['FORM_EDIT_ALT'] = "Дать ответ на вопрос";
$MESS ['FORM_EDIT'] = "Ответить на вопрос";
$MESS ['FORM_DELETE_ALT'] = "Удалить вопрос";
$MESS ['FORM_DELETE'] = "Удалить вопрос";

  Результат в публичном разделе

Сразу посмотрим, как будет выглядеть результат нашей работы над шаблоном и добавления нескольких вопросов. Полный функционал заработает только после выполнения настроек на других страницах (следующие уроки).

Главная страница системы Вопрос-ответ будет представлена в следующем виде для обычных пользователей:

Причем для авторизованных создателей вопросов будут отображаться и те вопросы, которые еще ожидают ответа.

Пользователям группы Модератор системы "Вопрос-ответ" дополнительно в списке будут отображаться все неотвеченные вопросы со ссылкой Ответить на вопрос.

Администратору сайта всегда доступны все вопросы. По ссылке Ответить на вопрос он может дать ответ на новый вопрос или изменить уже существующий ответ, а по ссылке Удалить вопрос - удалить любой вопрос.



Добавление вопроса

Настраиваем страницу добавления вопроса

Выполните следующие действия:

  • Откройте страницу Задать вопрос (ask_question.php) на редактирование в визуальном редакторе.
  • При желании добавьте некоторый поясняющий текст, например, Заполните поля формы.
  • Разместите на странице [dwi include_add_component]обычным способом[/dwi] компонент Заполнение веб-формы.
  • В настройках параметров компонента укажите следующие данные:
    • ID веб-формы - выбрать из списка веб-форму Вопрос-ответ;
    • Включить поддержку ЧПУ и в параметре Каталог ЧПУ указать каталог системы /question_answer/;
    • В параметре Страница с сообщением об успешной отправке задать адрес к странице Ваш вопрос принят (mess_send.php);

      адреса остальных страниц задавать не нужно.

В результате выполненных действий страница создания вопроса будет иметь следующий вид:


Сообщение об успешном создании

Уведомим посетителя о том, что вопрос принят

Страница "Ваш вопрос принят" (mess_send.php) уведомляет посетителя о том, что вопрос создан. Откройте её на редактирование как HTML из административного раздела (или в режиме редактирования исходного кода в визуальном редакторе) и добавьте:

<p><font color="#005824">Спасибо, ваш вопрос принят.</font></p>
<p>Наши специалисты постараются ответить на него максимально оперативно.</p>
<br />
<table> 
  <tbody> 
    <tr><td> <a href="/question_answer/ask_question.php" ><b>Задать новый вопрос</b></a> </td><td></td><td>
             <a href="/question_answer/index.php" ><b>Вернуться к списку вопросов</b></a> </td></tr>
   </tbody>
 </table>
<br><br>

После сохранения изменений страница будет иметь следующий вид:

Ссылки Задать новый вопрос и Вернуться к списку вопросов ведут на страницы ask_question.php и index.php соответственно.


Ответ на вопрос

Интерфейс страницы Дать ответ (answer.php) создается с помощью компонента Редактирование результата. Однако стандартный компонент для наших целей не подходит, поскольку нам необходимо вносить изменения только в поле Ответ. Поэтому нам необходимо скопировать полностью компонент в [dw]собственное пространство имен[/dw][di]О размещении компонентов в собственном пространстве имен смотрите в учебном курсе Разработчик Bitrix Framework.[/di], чтобы отредактировать и код компонента, и шаблон компонента под наши нужды.

  Копирование и размещение компонента

Создадим папку demo в /bitrix/components/. Выполним [ds]копирование компонента[/ds][di] Чтобы кастомизировать стандартный компонент, необходимо:

1) Создать новое пространство имён компонентов в папке /local/components/,
например создать директорию /local/components/my_components/.

2) В созданную папку необходимо скопировать папку с компонентом,
который хотите изменить (копировать из папки /bitrix/components/bitrix/).

3) Изменить компонент под текущие задачи.

4) Отредактировать шаблон компонента под текущие задачи.

5) Очистите кеш визуального редактора. В результате в визуальном редакторе
отобразится кастомизированный компонент.

Подробнее...[/di] Редактирование результата (form.result.edit) из папки /bitrix/components/bitrix/ в пространство demo, т.е. папка компонента /form.result.edit будет располагаться в папке /bitrix/components/demo.

Теперь откроем на редактирование страницу answer.php в визуальном редакторе и [dw]разместим скопированный компонент[/dw][di]Если компонент не отобразится в дереве компонентов после копирования, то необходимо очистить закешированные данные[/di] Редактирование результата (demo:[comp include_form_result_edit]form.result.edit[/comp]):

Настраиваем компонент следующим образом:

  • В поле ID результата оставляем код ={$_REQUEST[RESULT_ID]}, предложенный по умолчанию.
  • В поле Выводить на редактирование дополнительные поля обязательно указываем Да.
  • В обоих параметрах Страница со списком результатов и Страница просмотра результата указываем index.php, чтобы со страницы составления ответа осуществлялся переход только на главную страницу системы Вопрос-ответ.
  • Параметры Игнорировать свой шаблон и Выводить форму смены статуса можно не настраивать, поскольку они не будут использоваться в компоненте и мы их потом удалим за ненадобностью.

Сохраняем компонент и переходим к редактированию файла параметров компонента /bitrix/components/demo/form.result.edit/.parameters.php.

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

В форме добавления ответа на вопрос не будет поля для смены статуса. При нажатии на кнопку Отправить, расположенной на форме, статус будет автоматически меняться на Ответ. Поэтому в параметры компонента необходимо добавить возможность указания этого статуса (чтобы компонент "знал", с каким статусом работать). В связи с этим в файле /bitrix/components/demo/form.result.edit/.parameters.php перед строкой:

$arComponentParameters = array(...

добавляем код формирования списка веб-форм сайта и списка статусов веб-формы, зависящего от выбранной впоследствии в параметрах компонента веб-формы:

$arrForms = array();
$rsForm = CForm::GetList($by='s_sort', $order='asc', array("SITE" => $_REQUEST["site"]), $v3);
while ($arForm = $rsForm->Fetch())
{
	$arrForms[$arForm["ID"]] = "[".$arForm["ID"]."] ".$arForm["NAME"];
}

$arrStatuses = array();
$rsStat = CFormStatus::GetList($arCurrentValues["WEB_FORM_ID"], $by='s_sort', $order='asc');
while ($arStatus = $rsStat->Fetch())
{
	$arrStatuses[$arStatus["ID"]] = "[".$arStatus["ID"]."] ".$arStatus["TITLE"];
}

Находим массив PARAMETERS и добавляем в него код [dw]после массива RESULT_ID[/dw][di][/di] для отображения параметров выбора веб-формы и статуса :

		"WEB_FORM_ID" => array(
			"NAME" => GetMessage("COMP_FORM_PARAMS_WEB_FORM_ID"),
			"TYPE" => "LIST",
			"VALUES" => $arrForms,
			"ADDITIONAL_VALUES" => "Y",
			"DEFAULT" => "={\$_REQUEST[WEB_FORM_ID]}",
			"PARENT" => "DATA_SOURCE",
			"REFRESH" => "Y",
		),
		"STATUS_ID" => array(
			"NAME" => GetMessage("COMP_FORM_PARAMS_STATUS_ID"),
			"TYPE" => "LIST",
			"VALUES" => $arrStatuses,
			"DEFAULT" => '',
			"PARENT" => "DATA_SOURCE",
		),

Для новых параметров COMP_FORM_PARAMS_WEB_FORM_ID и COMP_FORM_PARAMS_STATUS_ID задаем языковые сообщения в файле /bitrix/components/demo/form.result.edit/lang/ru/.parameters.php:

$MESS ['COMP_FORM_PARAMS_WEB_FORM_ID'] = "ID веб-формы системы \"Вопрос-ответ\"(используется только для проверки)";
$MESS ['COMP_FORM_PARAMS_STATUS_ID'] = "ID статуса, когда дан ответ на вопрос";

Теперь параметры компонента полностью готовы под наши нужды. Форма настройки параметров компонента приобретает следующий вид:

В настройках компонента указываем нашу веб-форму Вопрос-ответ и статус Ответ.

Переходим к изменению логики компонента, т.е к редактированию файла /bitrix/components/demo/form.result.edit/component.php.

  Изменение логики компонента

Необходимо сформировать массив данных компонента так, чтобы только в поле ответа можно было вносить данные, а сами вопросы формы не были доступны для редактирования. Публикация вопроса (т.е. смена его статуса на Ответ) должна происходить сразу же по нажатии кнопки Отправить. Поэтому полностью изменяем код компонента в файле /bitrix/components/demo/form.result.edit/component.php:

<?if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)die();?><?

if (CModule::IncludeModule("form"))
{
	$GLOBALS['strError'] = '';

	$arDefaultComponentParameters = array(
		"RESULT_ID" => $_REQUEST["RESULT_ID"],
		"EDIT_ADDITIONAL" => "Y",
		"WEB_FORM_ID" => $_REQUEST["WEB_FORM_ID"],
		"STATUS_ID" => $_REQUEST["STATUS_ID"],
		"USE_EXTENDED_ERRORS" => "N",
	);

	$arParams['NAME_TEMPLATE'] = empty($arParams['NAME_TEMPLATE'])
		? (method_exists('CSite', 'GetNameFormat') ? CSite::GetNameFormat() : "#NAME# #LAST_NAME#")
		: $arParams["NAME_TEMPLATE"];

	foreach ($arDefaultComponentParameters as $key => $value) if (!is_set($arParams, $key)) $arParams[$key] = $value;

	$arDefaultUrl = array(
		'LIST' => $arParams["SEF_MODE"] == "Y" ? "list/" : "result_list.php",
		'VIEW' => $arParams["SEF_MODE"] == "Y" ? "view/#RESULT_ID#/" : "result_view.php",
	);

	foreach ($arDefaultUrl as $action => $url)
	{
		if (strlen($arParams[$action.'_URL']) <= 0)
		{
			if (!is_set($arParams, 'SHOW_'.$action.'_PAGE') || $arParams['SHOW_'.$action.'_PAGE'] == 'Y')
				$arParams[$action.'_URL'] = $url;
		}
	}

	if ($arParams["SEF_MODE"] == "Y" && empty($arParams["RESULT_ID"]))
	{
		$arDefaultUrlTemplates404 = array(
			"edit" => "#RESULT_ID#/",
		);

		$arDefaultVariableAliases404 = array(
		);

		$arDefaultVariableAliases = array();

		$arComponentVariables = array("RESULT_ID");

		$arUrlTemplates = CComponentEngine::MakeComponentUrlTemplates($arDefaultUrlTemplates404, $arParams["SEF_URL_TEMPLATES"]);
		$arVariableAliases = CComponentEngine::MakeComponentVariableAliases($arDefaultVariableAliases404, $arParams["VARIABLE_ALIASES"]);
		CComponentEngine::ParseComponentPath($arParams["SEF_FOLDER"], $arUrlTemplates, $arVariables);

		$arParams["RESULT_ID"] = intval($arVariables["RESULT_ID"]);
	}

	$arResult["FORM_SIMPLE"] = COption::GetOptionString("form", "SIMPLE", "N") == "N" ? "N" : "Y";
	$arResult["bAdmin"] = defined("ADMIN_SECTION") && ADMIN_SECTION===true ? "Y" : "N";

	// if form taken from admin interface - check rights to form module
	if ($arResult["bAdmin"] == "Y")
	{
		$FORM_RIGHT = $APPLICATION->GetGroupRight("form");
		if($FORM_RIGHT<="D") $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED"));
	}

	/****************************************************************************/

	// if there's result ID try to get form ID
	if (intval($arParams["RESULT_ID"] > 0))
	{
		$DBRes = CFormResult::GetByID($arParams["RESULT_ID"]);

		if ($arResultData = $DBRes->Fetch())
		{
			$arParams["WEB_FORM_ID"] = intval($arResultData["FORM_ID"]);
		}
	}

	if (intval($arParams["RESULT_ID"]) <= 0 || intval($arParams["WEB_FORM_ID"]) <= 0)
	{
		$arResult["ERROR"] = "FORM_RECORD_NOT_FOUND";
	}


	if (strlen($arResult["ERROR"]) <= 0)
	{
		// check WEB_FORM_ID and get web form data
		$arParams["WEB_FORM_ID"] = CForm::GetDataByID($arParams["WEB_FORM_ID"], $arResult["arForm"], 
                                                                $arResult["arQuestions"], $arResult["arAnswers"], $arResult["arDropDown"], $arResult["arMultiSelect"], 
                                                                $arResult["bAdmin"] || $arParams["SHOW_ADDITIONAL"] == "Y" || $arParams["EDIT_ADDITIONAL"] == "Y" ? "ALL" : "N");
	$arResult["WEB_FORM_NAME"] = $arResult["arForm"]["SID"];

		// if wrong WEB_FORM_ID return error;
		if ($arParams["WEB_FORM_ID"] > 0)
		{
			//  insert chain item
			if (strlen($arParams["CHAIN_ITEM_TEXT"]) > 0)
			{
				$APPLICATION->AddChainItem($arParams["CHAIN_ITEM_TEXT"], $arParams["CHAIN_ITEM_LINK"]);
			}

			// check web form rights;
			$arResult["F_RIGHT"] = intval(CForm::GetPermission($arParams["WEB_FORM_ID"]));

			// in no form access - return error
			if ($arResult["F_RIGHT"] >= 15)
			{
				//if (!empty($_REQUEST["strFormNote"])) $arResult["FORM_NOTE"] = $_REQUEST["strFormNote"];
				if (!empty($_REQUEST["formresult"]))
				{
					$formResult = strtoupper($_REQUEST['formresult']);
					switch ($formResult)
					{
						case 'ADDOK':
							$arResult['FORM_NOTE'] = str_replace("#RESULT_ID#", $arParams["RESULT_ID"], GetMessage('FORM_NOTE_ADDOK'));
						break;
						default:
							$arResult['FORM_NOTE'] = str_replace("#RESULT_ID#", $arParams["RESULT_ID"], GetMessage('FORM_NOTE_EDITOK'));
					}
				}

				if ($arResult["F_RIGHT"]>=20 || ($arResult["F_RIGHT"]>=15 && $USER->GetID()==$arResultData["USER_ID"]))
				{
					$arResult["arrRESULT_PERMISSION"] = CFormResult::GetPermissions($arParams["RESULT_ID"], $v);

					// check result rights
					if (!in_array("EDIT", $arResult["arrRESULT_PERMISSION"]))
					{
						$arResult["ERROR"] = "FORM_RESULT_ACCESS_DENIED";
					}
					else
					{
						if (!$arResultData)
						{
							$z = CFormResult::GetByID($arParams["RESULT_ID"]);
							$arResult["arResultData"] = $z->Fetch();
						}
						else
						{
							$arResult["arResultData"] = $arResultData;
						}

						if ($arResult["arResultData"])
						{
							$arResult["arrVALUES"] = CFormResult::GetDataByIDForHTML($arParams["RESULT_ID"], $arParams["EDIT_ADDITIONAL"]);
						}
						else
						{
							$arResult["ERROR"] = "FORM_RECORD_NOT_FOUND";
						}
					}
				}
				else
				{
					$arResult["ERROR"] = "FORM_ACCESS_DENIED";
				}

				$arResult["arForm"]["USE_CAPTCHA"] = "N";
			}
			else
			{
				$arResult["ERROR"] = "FORM_RESULT_ACCESS_DENIED";
			}
		}
		else
		{
			$arResult["ERROR"] = "FORM_NOT_FOUND";
		}
	}

	// if there's no error
	if (strlen($arResult["ERROR"]) <= 0)
	{
		// ************************************************************* //
		//                                             get/post processing                                             //
		// ************************************************************* //

		if (strlen($_REQUEST["web_form_submit"])>0 || strlen($_REQUEST["web_form_apply"])>0)
		{
				reset($arResult["arQuestions"]);
				foreach ($arResult["arQuestions"] as $key => $arQuestion)
				{
					$FIELD_SID = $arQuestion["SID"];
                	if (is_array($arResult["arQuestions"][$FIELD_SID]) && $arResult["arQuestions"][$FIELD_SID]["ADDITIONAL"] == "Y")
					{
						$temp="form_";
						switch ($arResult["arQuestions"][$FIELD_SID]["FIELD_TYPE"])
						{
						case "text":
							$temp.="textarea_ADDITIONAL_";
							break;
						case "integer":
							$temp.="text_ADDITIONAL_";
							break;
						case "date":
							$temp.="date_ADDITIONAL_";
							break;
						}
						$temp.=$arResult["arQuestions"][$FIELD_SID]["ID"];
                    	$arResult["arrVALUES"][$temp]= $_REQUEST[$temp];
					}
				}
			// check errors
				$arResult["FORM_ERRORS"] = CForm::Check($arParams["WEB_FORM_ID"], $arResult["arrVALUES"], $arParams["RESULT_ID"], "Y", $arParams['USE_EXTENDED_ERRORS']);

			if (
				$arParams['USE_EXTENDED_ERRORS'] == 'Y' && (!is_array($arResult["FORM_ERRORS"]) || count($arResult["FORM_ERRORS"]) <= 0)
				||
				$arParams['USE_EXTENDED_ERRORS'] != 'Y' && strlen($arResult["FORM_ERRORS"]) <= 0
			)
			{//echo "<pre>error "; print_r("enter"); echo "</pre>";
				// check session id
				if (check_bitrix_sessid())
				{
					$return = false;

					if (CFormResult::Update($arParams["RESULT_ID"], $arResult["arrVALUES"], $arParams["EDIT_ADDITIONAL"]))
					{
						CFormResult::SetStatus($arParams["RESULT_ID"],$arParams["STATUS_ID"],"Y");
						$arResult["FORM_RESULT"] = 'editok';

						if (strlen($_REQUEST["web_form_submit"])>0 && !(defined("ADMIN_SECTION") && ADMIN_SECTION===true))
						{
							if ($arParams["SEF_MODE"] == "Y")
							{
								//LocalRedirect($arParams["LIST_URL"]."?strFormNote=".urlencode($arResult["FORM_NOTE"]));
								LocalRedirect(
									str_replace(
										array('#WEB_FORM_ID#', '#RESULT_ID#'),
										array($arParams['WEB_FORM_ID'], $arParams["RESULT_ID"]),
										$arParams["LIST_URL"]
									)."?formresult=".urlencode($arResult["FORM_RESULT"])
								);
							}
							else
							{
								//LocalRedirect($arParams["LIST_URL"].(strpos($arParams["LIST_URL"], "?") === false ? "?" : "&")."WEB_FORM_ID=".$arParams["WEB_FORM_ID"]."&strFormNote=".urlencode($arResult["FORM_NOTE"]));
								LocalRedirect(
									$arParams["LIST_URL"]
									.(strpos($arParams["LIST_URL"], "?") === false ? "?" : "&")
									."WEB_FORM_ID=".$arParams["WEB_FORM_ID"]
									."&RESULT_ID=".$arParams["RESULT_ID"]
									."&formresult=".urlencode($arResult["FORM_RESULT"])
								);
							}

							die();
						}

						if (strlen($_REQUEST["web_form_apply"])>0 && !(defined("ADMIN_SECTION") && ADMIN_SECTION===true))
						{
							if ($arParams["SEF_MODE"] == "Y")
							{
								LocalRedirect(
									$APPLICATION->GetCurPageParam(
										"formresult=".urlencode($arResult["FORM_RESULT"]),
										array('formresult', 'SEF_APPLICATION_CUR_PAGE_URL')
									)
								);
							}
							else
							{
								LocalRedirect(
									$APPLICATION->GetCurPageParam(
										"WEB_FORM_ID=".$arParams["WEB_FORM_ID"]
										."&RESULT_ID=".$arParams["RESULT_ID"]
										."&formresult=".urlencode($arResult["FORM_RESULT"]),
										array('WEB_FORM_ID', 'RESULT_ID', 'formresult')
									)
								);
							}
							die();
						}

						if (defined("ADMIN_SECTION") && ADMIN_SECTION === true)
						{
							if (strlen($_REQUEST["web_form_submit"])>0)
							{
								LocalRedirect(BX_ROOT."/admin/form_result_list.php?lang=".LANG."&WEB_FORM_ID=".$arParams["WEB_FORM_ID"]."&formresult=".urlencode($arResult["FORM_RESULT"]));
							}
							elseif (strlen($_REQUEST["web_form_apply"])>0)
							{
								LocalRedirect(BX_ROOT."/admin/form_result_edit.php?lang=".LANG."&WEB_FORM_ID=".$arParams["WEB_FORM_ID"]."&RESULT_ID=".$arParams["RESULT_ID"]."&form_result=".urlencode($arResult["FORM_RESULT"]));
							}
							die();
						}
					}
					else
						$arResult['FORM_ERRORS'] = $GLOBALS['strError'];
				}
			}
		}

		/*
if (is_array($arResult["FORM_ERRORS"]))*/


		$arResult["isFormErrors"] =
			(
				is_array($arResult["FORM_ERRORS"]) && count($arResult["FORM_ERRORS"]) > 0
				||
				!is_array($arResult['FORM_ERRORS']) && strlen($arResult["FORM_ERRORS"]) > 0
			)
			? "Y" : "N";

		//echo "<pre>ar "; print_r($arResult); echo "</pre>";
		if ($arResult['isFormErrors'] == 'Y')
		{
			unset($arResult['FORM_RESULT']);
			unset($arResult['FORM_NOTE']);
		}

		// ************************************************************* //
		//                                             output                                                                    //
		// ************************************************************* //
		// include CSS with additional icons for Site Edit mode
		if ($APPLICATION->GetShowIncludeAreas() && $USER->IsAdmin())
		{
			// define additional icons for Site Edit mode
			$arIcons = array(
				array(
					'URL' => "javascript:".$APPLICATION->GetPopupLink(
						array(
							'URL' => "/bitrix/admin/form_edit.php?bxpublic=Y&from_module=form&lang=".LANGUAGE_ID."&ID=".$arParams['WEB_FORM_ID']."&back_url=".urlencode($_SERVER["REQUEST_URI"]),
							'PARAMS' => array(
								'width' => 700,
								'height' => 500,
								'resize' => false,
							)
						)
					),
					'ICON' => 'bx-context-toolbar-edit-icon',
					'TITLE' => GetMessage("FORM_PUBLIC_ICON_EDIT"),
				),
			);

			$this->AddIncludeAreaIcons($arIcons);
		}

		if (intval($arResult["arResultData"]["USER_ID"])>0)
		{
			$rsUser = CUser::GetByID($arResult["arResultData"]["USER_ID"]);
			$arUser = $rsUser->Fetch();

			$arResult["RESULT_USER_ID"] = $arResult["arResultData"]["USER_ID"];
			$arResult["RESULT_USER_LOGIN"] = $arUser["LOGIN"];
			$arResult["RESULT_USER_EMAIL"] = $arUser["USER_EMAIL"];
			$arResult["RESULT_USER_FIRST_NAME"] = $arUser["NAME"];
			$arResult["RESULT_USER_LAST_NAME"] = $arUser["LAST_NAME"];
			$arResult["RESULT_USER_SECOND_NAME"] = $arUser["SECOND_NAME"];
		}

		// define variables to assign
		$arResult = array_merge(
			$arResult,
			array(
				"RESULT_ID" => $arParams["RESULT_ID"],
				"WEB_FORM_ID" => $arParams["WEB_FORM_ID"],
				"RESULT_USER_AUTH" => $arResult["arResultData"]["USER_AUTH"] == "Y" ? "Y" : "N",
				"RESULT_DATE_CREATE" => $arResult["arResultData"]["DATE_CREATE"],
				"RESULT_TIMESTAMP_X" => $arResult["arResultData"]["TIMESTAMP_X"],
				"RESULT_STAT_GUEST_ID" => $arResult["arResultData"]["STAT_GUEST_ID"],
				"RESULT_STAT_SESSION_ID" => $arResult["arResultData"]["STAT_SESSION_ID"],
				"isFormNote"			=> strlen($arResult["FORM_NOTE"]) ? "Y" : "N", // flag "is there a form note"
				"isAccessFormParams"	=> $arResult["F_RIGHT"] >= 25 ? "Y" : "N", // flag "does current user have access to form params"
				"isStatisticIncluded"	=> CModule::IncludeModule('statistic') ? "Y" : "N", // flag "is statistic module included"

				"FORM_HEADER" => sprintf( // form header (<form> tag and hidden inputs)
					"<form name=\"%s\" action=\"%s\" method=\"%s\" enctype=\"multipart/form-data\">",
					$arResult["arForm"]["SID"], POST_FORM_ACTION_URI, "POST"
				),

				"FORM_TITLE"			=> trim(htmlspecialcharsbx($arResult["arForm"]["NAME"])), // form title

				"FORM_DESCRIPTION" => // form description
					$arResult["arForm"]["DESCRIPTION_TYPE"] == "html" ?
					trim($arResult["arForm"]["DESCRIPTION"]) :
					nl2br(htmlspecialcharsbx(trim($arResult["arForm"]["DESCRIPTION"]))),

				"isFormTitle"			=> strlen($arResult["arForm"]["NAME"]) > 0 ? "Y" : "N", // flag "does form have title"
				"isFormDescription"		=> strlen($arResult["arForm"]["DESCRIPTION"]) > 0 ? "Y" : "N", // flag "does form have description"
				"isFormImage"			=> intval($arResult["arForm"]["IMAGE_ID"]) > 0 ? "Y" : "N", // flag "does form have image"
				"isUseCaptcha"			=> $arResult["arForm"]["USE_CAPTCHA"] == "Y", // flag "does form use captcha"
				"DATE_FORMAT"			=> CLang::GetDateFormat("SHORT"), // current site date format
				"REQUIRED_SIGN"			=> CForm::ShowRequired("Y"), // "required" sign
				"FORM_FOOTER"			=> "</form>", // form footer (close <form> tag)
			)
		);

		// get template vars for form image
		if ($arResult["isFormImage"] == "Y")
		{
			$arResult["FORM_IMAGE"]["ID"] = $arResult["arForm"]["IMAGE_ID"];
			// assign form image url
			$arImage = CFile::GetFileArray($arResult["arForm"]["IMAGE_ID"]);
			$arResult["FORM_IMAGE"]["URL"] = $arImage["SRC"];

			// check image file existance and assign image data
			if (substr($arImage["SRC"], 0, 1) == "/")
			{
				$arSize = CFile::GetImageSize($_SERVER["DOCUMENT_ROOT"].$arImage["SRC"]);
				if (is_array($arSize))
				{
					list(
						$arResult["FORM_IMAGE"]["WIDTH"],
						$arResult["FORM_IMAGE"]["HEIGHT"],
						$arResult["FORM_IMAGE"]["TYPE"],
						$arResult["FORM_IMAGE"]["ATTR"]
					) = $arSize;
				}
			}
			else
			{
				$arResult["FORM_IMAGE"]["WIDTH"] = $arImage["WIDTH"];
				$arResult["FORM_IMAGE"]["HEIGHT"] = $arImage["HEIGHT"];
				$arResult["FORM_IMAGE"]["TYPE"] = false;
				$arResult["FORM_IMAGE"]["ATTR"] = false;
			}

			$arResult["FORM_IMAGE"]["HTML_CODE"] = CFile::ShowImage($arResult["arForm"]["IMAGE_ID"]);
		}

		$arResult["QUESTIONS"] = array();
		reset($arResult["arQuestions"]);

		// assign questions data
		foreach ($arResult["arQuestions"] as $key => $arQuestion)
		{
			$FIELD_SID = $arQuestion["SID"];
			$arResult["QUESTIONS"][$FIELD_SID] = array(
				"CAPTION" => // field caption
					$arResult["arQuestions"][$FIELD_SID]["TITLE_TYPE"] == "html" ?
					$arResult["arQuestions"][$FIELD_SID]["TITLE"] :
					nl2br(htmlspecialcharsbx($arResult["arQuestions"][$FIELD_SID]["TITLE"])),

				"IS_HTML_CAPTION"			=> $arResult["arQuestions"][$FIELD_SID]["TITLE_TYPE"] == "html" ? "Y" : "N",
				"REQUIRED"					=> $arResult["arQuestions"][$FIELD_SID]["REQUIRED"] == "Y" ? "Y" : "N",
				"IS_INPUT_CAPTION_IMAGE"	=> intval($arResult["arQuestions"][$FIELD_SID]["IMAGE_ID"]) > 0 ? "Y" : "N",
			);

			// ******************************** customize answers ***************************** //

			$arResult["QUESTIONS"][$FIELD_SID]["HTML_CODE"] = array();
			if (is_array($arResult["arQuestions"][$FIELD_SID]) && $arResult["arQuestions"][$FIELD_SID]["ADDITIONAL"] == "Y")
			{
				$res = "";
				switch ($arResult["arQuestions"][$FIELD_SID]["FIELD_TYPE"])
				{
					case "text":
						$value = CForm::GetTextAreaValue("ADDITIONAL_".$arResult["arQuestions"][$FIELD_SID]["ID"], array(), $arResult["arrVALUES"]);
						$res .= CForm::GetTextAreaField(
							"ADDITIONAL_".$arResult["arQuestions"][$FIELD_SID]["ID"],
							"60",
							"5",
							"",
							$value
							);

						$arResult["QUESTIONS"][$FIELD_SID]["HTML_CODE"][] = $res;

						break;
					case "integer":
						$value = CForm::GetTextValue("ADDITIONAL_".$arResult["arQuestions"][$FIELD_SID]["ID"], array(), $arResult["arrVALUES"]);
						$res .= CForm::GetTextField(
							"ADDITIONAL_".$arResult["arQuestions"][$FIELD_SID]["ID"],
							$value);

						$arResult["QUESTIONS"][$FIELD_SID]["HTML_CODE"][] = $res;

						break;
					case "date":
						$value = CForm::GetDateValue("ADDITIONAL_".$arResult["arQuestions"][$FIELD_SID]["ID"], array(), $arResult["arrVALUES"]);
						$res .= CForm::GetDateField(
							"ADDITIONAL_".$arResult["arQuestions"][$FIELD_SID]["ID"],
							$arResult["arForm"]["SID"],
							$value);

						$arResult["QUESTIONS"][$FIELD_SID]["HTML_CODE"][] = $res." (".CSite::GetDateFormat("SHORT").")";

						break;
				} //endswitch;
			}

			$arResult["QUESTIONS"][$FIELD_SID]["HTML_CODE"] = implode("<br />", $arResult["QUESTIONS"][$FIELD_SID]["HTML_CODE"]);

			// ******************************************************************************* //

			if ($arResult["QUESTIONS"][$FIELD_SID]["IS_INPUT_CAPTION_IMAGE"] == "Y")
			{
				$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["ID"] = $arResult["arQuestions"][$FIELD_SID]["IMAGE_ID"];
				// assign field image path
				$arImage = CFile::GetFileArray($arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["ID"]);
				$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["URL"] = $arImage["SRC"];

				// check image file existance and assign image data
				if (substr($arImage["SRC"], 0, 1) == "/")
				{
					$arSize = CFile::GetImageSize($_SERVER["DOCUMENT_ROOT"].$arImage["SRC"]);
					if (is_array($arSize))
					{
						list(
							$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["WIDTH"],
							$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["HEIGHT"],
							$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["TYPE"],
							$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["ATTR"]
						) = $arSize;
					}
				}
				else
				{
					$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["WIDTH"] = $arImage["WIDTH"];
					$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["HEIGHT"] = $arImage["HEIGHT"];
					$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["TYPE"] = false;
					$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["ATTR"] = false;
				}

				$arResult["QUESTIONS"][$FIELD_SID]["IMAGE"]["HTML_CODE"] = CFile::ShowImage($arResult["arQuestions"][$FIELD_SID]["IMAGE_ID"]);
			}

			// get answers raw structure
			$arResult["QUESTIONS"][$FIELD_SID]["STRUCTURE"] = $arResult["arAnswers"][$FIELD_SID];
			// nullify value
			$arResult["QUESTIONS"][$FIELD_SID]["VALUE"] = "";
		}

		if ($arResult["isFormErrors"] == "Y")
		{
			ob_start();
			if ($arParams['USE_EXTENDED_ERRORS'] == 'N' || !is_array($arResult['FORM_ERRORS']))
				ShowError($arResult["FORM_ERRORS"]);
			else
				ShowError(implode('<br />', $arResult["FORM_ERRORS"]));

			$arResult["FORM_ERRORS_TEXT"] = ob_get_contents();
			ob_end_clean();
		}

		$arResult["SUBMIT_BUTTON"] = "<input ".(intval($arResult["F_RIGHT"]) < 10 ? 
                           "disabled=\"disabled\"" : "")." type=\"submit\" name=\"web_form_submit\" value=\"".(strlen(trim($arResult["arForm"]["BUTTON"])) <= 0 ? 
                           GetMessage("FORM_ADD") : $arResult["arForm"]["BUTTON"])."\" />";
		$arResult["RESET_BUTTON"] = "<input type=\"reset\" value=\"".GetMessage("FORM_RESET")."\" />";
		$arResult["REQUIRED_STAR"] = $arResult["REQUIRED_SIGN"];

		// include default template
		$this->IncludeComponentTemplate();
	}
	else
	{
		echo ShowError(GetMessage($arResult["ERROR"]));
	}
}
else
{
	echo ShowError(GetMessage("FORM_MODULE_NOT_INSTALLED"));
}
?>

Теперь необходимо изменить шаблон компонента под нашу логику.

  Редактирование шаблона компонента

В форме ответа на вопрос помимо поля ввода ответа должны отображаться следующие данные: фамилия, имя, отчество пользователя, создавшего вопрос, текст вопроса, дата создания и дата ответа на вопрос. В связи заменим код шаблона компонента в файле /bitrix/components/demo/form.result.edit/templates/.default/template.php будет следующим:

Код шаблона компонента

Чтобы отобразить введенные пользователем значения вопросов Фамилия, имя, отчество и Вопрос, необходимо знать [dw]названия их html-полей[/dw][di]При выводе веб-формы все ответы на вопросы представляются в виде HTML полей, заполняя которые, пользователи отвечают на тот или иной вопрос.
Подробнее...[/di]. Например, если вопрос имеет ответ типа text, то поле формы будет иметь имя form_text_id, где id - это идентификатор значения ответа, который можно посмотреть в форме настройки вопроса:

Таким образом, поля формы Фамилия, имя, отчество и Вопрос имеют имена form_text_29 и form_textarea_30 соответственно, которые и используются в коде шаблона компонента. Найдите идентификаторы ваших вопросов и замените их в шаблоне.

Примечание: если в параметры компонента добавить настройку выбора отображаемых полей формы, то в коде не придется указывать имена полей явно (см. пример выше по добавлению параметров идентификаторов веб-формы и статуса).

В файл языковых сообщений шаблона компонента /bitrix/components/demo/form.result.edit/templates/.default/lang/ru/template.php добавим новую строку:

$MESS ['FORM_VIEW_NEW'] = "Вернуться к списку вопросов";

И внесем изменения в существующие:

$MESS ['FORM_DATE_CREATE'] = "Дата создания вопроса";
$MESS ['FORM_TIMESTAMP'] = "Дата ответа на вопрос";


В результате проделанных операций, когда модератор системы или администратор сайта со страницы со списком вопросов переходят по ссылке Ответить, открывается страница ответа на вопрос:



Проверьте себя

Ответьте на несколько вопросов по теме Веб-формы, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Модуль Веб-формы работает в двух режимах редактирования: упрощенном и расширенном.
Верно
Неверно
2 Результаты заполнения веб-формы можно передавать в качестве полей нового лида в CRM.
Верно
Неверно
3 Если для групп пользователей не настроены права доступа к результатам заполнения веб-форм, то для этих групп автоматически применится право Доступ открыт.
Верно
Неверно
4 Чтобы в расширенном режиме для группы пользователей настроить доступ к собственным результатам заполнения веб-формы, необходимо этой группе предоставить полный доступ к модулю Веб-формы.
Верно
Неверно
5 Страница с веб-формой должна обязательно содержать чекбокс подтверждения посетителем своего согласия на обработку персональных данных, если такие данные запрашиваются.
Верно
Неверно
6 С помощью почтовых шаблонов можно настроить оповещения о заполнении веб-формы.
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  • Выполните следующие настройки модуля Веб-формы:
    • Включите расширенный режим работы;
    • Установите право по умолчанию для вновь создаваемых веб-форм уровня заполнение формы;
    • Создайте новый портал Битрикс24 и настройте передачу данных о заполнении веб-форм на этот портал;

    Решение

  • Добавьте новую веб-форму Обратная связь (feedback) согласно следующим требованиям:
    • Обязательно использование CAPTCHA;
    • Для неавторизованных пользователей доступ закрыт;
    • Зарегистрированные пользователи могут работать со своим результатом в соответствии с его статусом;
    • Контент-редакторы могут работать со всеми результатами в соответствии с их статусами.

    Для этой веб-формы создайте и настройте два статуса:

    • Сообщение отправлено - статус должен присваиваться всем новым документам. Создатель результата может в данном статусе выполнять все действия с документом, а контент-редакторы могут только просматривать результат в данном статусе;
    • Сообщение принято - переводить документы в данный статус, просматривать и удалять их могут только контент-менеджеры, но они не имеют право на редактирование результата.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Документооборот

Поэтапная работа над сайтом

Модуль Документооборот используется для организации цепочки движения документа от момента создания до момента публикации.

Возможности Документооборота

Возможности Документооборота

Модуль позволяет:

  • Организовать поэтапную работу над документами с помощью статусов.
  • Вести историю изменений.
  • Сохранять копии документов на каждом из этапов.

Работа с модулем

В этой главе описана настройка модуля. Работа с модулем со стороны исполнителей описана в курсе [ds]Контент-менеджер[/ds][di]Модуль Документооборот используется для организации цепочки движения документа от момента создания до момента публикации. Этот механизм используется если документ (новость, товар, страница сайта) должен быть проверен перед выпуском редактором или кем-то ещё.

Подробнее ...[/di].

Документация по теме:


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

Настраиваем модуль

Управление настройками модуля выполняется на странице настройки модуля Документооборот (Настройки > Настройки продукта > Настройки модулей > Документооборот).

Нажмите на рисунок, чтобы увеличить

На закладке Настройки суть полей ясна из названия, в крайнем случае обратитесь к [dw]пользовательской документации[/dw][di]Пользовательская документация содержит описание компонентов системы и описание полей настроек административной части системы.
Подробнее...[/di]. Но одно поле поясним. Это поле Группа администраторов документооборота. Для нормальной работы документооборота нужно создавать, изменять статусы. Делается это, если у пользователя есть полный доступ к модулю Документооборот. Давать права полного доступа сотрудникам, работающим с документами нецелесообразно. Поэтому есть такое поле, в котором указывается какая группа пользователей будут администраторами.


На закладке Доступ настраиваются [dw]уровни прав доступа[/dw][di]Настройки модуля Документооборот[/di] к модулю для групп пользователей сайта.

Для пользователей, которые должны работать с документами, установите право - Участие в документообороте, для тех кто контролирует работу можно установить право Просмотр без права модификации.



Документооборот в структуре файлов

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

  Настройка прав модуля Документооборот

В модуле Документооборот для той группы пользователей, кто будет работать с документами установите право Участие в документообороте:

Настройка прав доступа к модулю Документооборот

Внимание для администраторов Битрикс24 в коробке! Этот пункт недоступен для пользователя корпоративного портала с правами Администрация портала, эту операцию должен выполнять пользователь с правами Администратор системы.

  Настройка прав модуля Управление структурой

В модуле Управление структурой для той группы пользователей, кто будет работать с документами установите право Редактирование файлов и папок:

Настройка прав доступа к модулю Управление структурой

  Настройки в менеджере файлов

В Менеджере файлов для папок и файлов, с которыми будет работать пользователь, для этой же группы [dw]установите право[/dw][di][/di] доступа Документооборот:

Настройка прав доступа к папкам и файлам

Пользователи группы, предназначенной для документооборота, должны иметь право доступа на чтение к папке /bitrix/admin.



Статусы, создание и настройка

Этапы работы с документом

Статус – это то, что обозначает определенный этап в работе с документом. Статусы так же ограничивают доступ к документу для пользователей.

Управление статусами выполняется на странице Контент > Документооборот > Статусы:

Нажмите на рисунок, чтобы увеличить

Примечание: Статус с ID=1 является конечным в цепочке документооборота (на рисунке это статус Опубликован). Он зарезервирован и не удаляется, но его название можно изменить. При достижении документом этого статуса все изменения, выполненные в документе, вступают в силу, документ публикуется.

Создание

Нажмите на на странице списка Статусов, откроется форма создания:

Настройка прав групп пользователей

Введите название и настройте права доступа к документам в этом статусе. Если необходимо [dw]уведомлять пользователей[/dw][di]Для уведомлений используется штатный шаблон WF_STATUS_CHANGE. При необходимости найдите этот шаблон на странице Настройки > Настройки продукта > Почтовые события > Типы почтовых событий и отредактируйте его.[/di] о достижении статуса, установите флажок в поле Оповестить всех, кто имеет право....

Количество возможных статусов не ограничено.



Документооборот при работе с инфоблоками

  Настройка документооборота для Информационных блоков

Настройка документооборота на последовательную работу над информационными блоками включает в себя шаги:

  1. Настройка прав модуля Управление структурой.
  2. Настройки разделов, участвующих в документообороте.
  3. Настройки информационных блоков, участвующих в документообороте, может выполняться Контент-менеджером, если ему даны такие права.
  4. Создание и настройка необходимых статусов для документов.

Внимание! В случае с инфоблоками нет необходимости давать права на модуль Документооборот.

Видео-пример настройки прав для документооборота в инфоблоках

  Настройка прав модуля Управление структурой

В модуле Управление структурой для той группы пользователей, которая будет работать с документами, установить право Редактирование файлов и папок:

Настройка прав доступа к модулю Управление структурой

  Настройки в менеджере файлов

В Менеджере файлов для папок и файлов, где будет размещаться информационный блок, для этой же группы [dw]установите право[/dw][di][/di] доступа Документооборот:

Настройка прав доступа к папкам и файлам

Пользователи группы, предназначенной для документооборота, должны иметь право доступа на чтение к папке /bitrix/admin.

Важно! Не забудьте [ds]настроить[/ds][di] Сначала документооборот настраивается администратором сайта. Мы считаем, что администратором:

1) Необходимые для контроля группы пользователей созданы;

2) Права доступа для групп даны;

3) Статусы настроены.

Подробнее...[/di] сам инфоблок на работу через документооборот.



Статусы для инфоблоков

Этапы работы с документом

Статус – это то, что обозначает определенный этап в работе с документом. Статусы так же ограничивают доступ к документу для пользователей.

Работа со статусами в инфоблоках аналогична созданию статусов [ds]для физических страниц[/ds][di] Нажмите на кнопку, откроется форма создания.

Подробнее...[/di] и ведётся на странице административного раздела Контент > Документооборот > Статусы:

Нажмите на рисунок, чтобы увеличить


Настройка

Вы можете использовать имеющиеся статусы, можете создать новые. Мы рассмотрим пример изменения текущих.

Откройте на изменение статус Черновик и укажите права на управление сообщениями новостного блока в данном статусе:

Такие настройки позволят всем нашим группам пользователей создавать и редактировать новости в статусе Черновик для их дальнейшей проверки корректором.


Откройте на изменение статус Готов и укажите права на управление сообщениями новостного блока в данном статусе:

Настройка прав для данного статуса позволяет корректорам и администраторам создавать и редактировать новости в этом статусе.


И права Администраторов интернет-магазина на статус Опубликован:

Такая настройка прав позволяет публиковать новости только администраторам интернет-магазина.

В результате сотрудники группы Контент-редакторы смогут только создавать или изменять новости (находящиеся в статусе черновика), но не смогут публиковать их на сайте. Корректоры смогут править документ, но не публиковать. Администраторы интернет-магазина смогут делать все, в том числе и публиковать. Готовность к публикации всегда будет подтверждаться корректором или администратором интернет-магазина.



Проверьте себя

Ответьте на несколько вопросов по теме Документооборот, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Модуль Документооборот позволяет организовать поэтапную работу над документами, а также вести историю их изменений.
Верно
Неверно
2 Для пользователей, которые должны работать с документами, необходимо установить право доступа не ниже Просмотр без права модификации.
Верно
Неверно
3 При настройке последовательной работы над страницами сайта кроме прав доступа к модулям Документооборот и Управление структурой необходимо настроить права доступа к папкам и страницам сайта.
Верно
Неверно
4 Абсолютно все статусы могут быть удалены.
Верно
Неверно
5 Количество возможных статусов не ограничено.
Верно
Неверно
6 В случае с инфоблоками нет необходимости давать права на модуль Документооборот.
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  • Для группы Контент-редакторы настройте работу с папкой /about через документооборот, настроив следующие права доступа:
    • к модулю Документооборот - участие в документообороте;
    • к модулю Управление структурой - редактирование файлов и папок;
    • к папке /bitrix/admin - чтение;
    • к папке /about - документооборот.

    Решение

  • Настройте штатные статусы Черновик и Опубликован, разрешив редактировать документы и переводить их в данные статусы только пользователям группы Контент-редакторы.

    Создайте тестового пользователя, состоящего в группе Контент-редакторы, и под его учётной записью откройте на редактирование страницу сайта О магазине (/about/index.php).

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Клиенты

Раздел Клиенты служит для интеграций сайта с разным функционалом других систем, например с порталами Битрикс24.


Документация по теме:


Коммуникации с клиентами

Модуль Коммуникации с клиентами позволяет подключить продукт «1С-Битрикс: Управление сайтом» к порталу Битрикс24, т.е подключить все цифровые каналы коммуникаций: онлайн-чат, соцсети, мессенджеры, обратный звонок, веб-формы и т.п.

При этом осуществляется:

  • подключение за 5 минут;
  • гибкая настройка сообщений онлайн-чата в зависимости от раздела сайта;
  • специальные сценарии работы с мобильных устройств;
  • идеальный инструмент для поддержки клиентов;
  • автоматическая интеграция с Битрикс24.CRM;
  • автоматизированное управление клиентским потоком от первого касания до повторных продаж;
  • единая клиентская база для работы нескольких сайтов.

Подключение привычных для клиентов коммуникаций позволяет увеличить конверсию в интернет-магазинах.



Подключение Битрикс24

Внимание! Возможно подключение только облачной версии Битрикс24. Коробочная версия по описанному сценарию не подключается.

Подключение портала Битрикс24 осуществляется на любой странице Коммуникаций с клиентами (Клиенты > Коммуникации с клиентами):

  1. Нажать на кнопку Подключить свой Битрикс24 (если уже создан портал) или Создать новый Битрикс24 (если еще нет портала):

  2. Далее нужно будет авторизоваться в окне Bitrix24.Network и выбрать из списка ваших порталов и сайтов нужный Битрикс24 для подключения:

  3. Затем в открывшемся окне запроса на портале согласиться с подключением:

    Примечание: если в окне запроса отображается [dw]неверный адрес[/dw][di] [/di] Вашего сайта, проверьте, какой адрес указан в настройках модуля [dw]Социальные сервисы[/dw][di] Настройки > Настройки продукта > Настройки модулей > Социальные сервисы

    [/di] (и актуализируйте его, нажав на кнопку Зарегистрировать сайт в Битрикс24).

  4. Подключение успешно установлено:

Примечание: Для подключения Коммуникаций с клиентами к порталу Битрикс24, вы должны быть администратором сайта и портала.

Примечание: про интеграцию магазина и портала Битрикс24 читайте в соответствующем уроке.

Документация по теме:



Каналы коммуникаций

Каналы по которым можно взаимодействовать с клиентами доступны только после подключения Битрикс24 к сайту.

Виджеты

Виджет объединяет все цифровые каналы коммуникаций с клиентами в вашем Битрикс24.

  О виджете

Внимание! Виджет работает на любом сайте, даже, если он собран не на "1С-Битрикс: Управление сайтом". Но на сайте сделанном на "1С-Битрикс: Управление сайтом" нужно быть внимательным с версией Главного модуля. Требуется не ниже 19.0.500.

Виджет устанавливается на сайт как кнопка, с помощью которой посетители сайта выбирают удобный способ связи с компанией: чат, звонок или форму. Таким образом, виджет помогает повысить конверсию сайта и увеличить продуктивность отдела продаж.

  Как настроить виджет

Настройка Виджета проста:

  1. После [dw]подключения[/dw][di]Подключение портала Битрикс24 осуществляется на любой странице Коммуникаций с клиентами (Клиенты > Коммуникации с клиентами).
    Подробнее...[/di] сайта к «Битрикс24» в разделе Виджеты (Клиенты > Коммуникации с клиентами > Виджеты) появится предустановленный Виджет:

  2. Далее необходимо перейти к редактированию Виджета на портале Битрикс24, кликнув на ссылку названия Виджета:

  3. Откроется страница настройки Виджета:

  4. На этой странице настраивается внешний вид кнопки, параметры приветствия и подключаются каналы коммуникаций:

    Примечание: подробнее о настройке Виджета на сайт можно прочитать в статье.

  5. После настройки Виджета остается его только включить в разделе Виджеты (Клиенты > Коммуникации с клиентами > Виджеты:

Далее, если обновить страницу сайта, то иконка Виджета будет в том месте сайта, где указывалось ее расположение в настройках, а при по клике по ней будут представлены настроенные ранее инструменты коммуникаций:

Примечание: В настройках коммуникаций (на странице виджеты, онлайн-чат и т.д.) Вы можете увидеть вместо формы настроек ошибку:
Ошибка получения информации подключенного портала (ACCESS_DENIED: REST is available only on commercial plans.).
Доступ к настройкам коммуникаций в 1С-Битрикс: Управление сайтом осуществляется с помощью REST API, который [dw]недоступен[/dw][di]С 1 января 2021 года использование REST API доступен только на коммерческих тарифах Битрикс24.[/di] на бесплатном тарифе Битрикс24. В таком случае настройки доступны только со стороны Битрикс24. Для перехода к настройкам воспользуйтесь соответствующей [dw]кнопкой[/dw][di]Например внизу страницы Клиенты > Коммуникации с клиентами > Виджеты
Вы увидите такую кнопку:

[/di] внизу страницы.

  Виджет на сайте

Как добавить виджет на сайт

Для добавления виджета на сайт выполните следующие действия:

  1. На стороне Битрикс24 скопируйте код виджета одним из двух способов:
    • на странице Список виджетов (CRM > Виджет на сайт) нажмите кнопку [dw]Код на сайт[/dw][di] [/di] и в открывшемся окне скопируйте код:

    • в форме редактирования конкретного виджета в разделе Код для вставки нажмите кнопку [dw]Скопировать в буфер[/dw][di] [/di].
  2. В административном разделе Вашего сайта перейдите на страницу Настройки > Настройки продукта > Сайты > Шаблоны сайтов и откройте в режиме [dw]редактирования[/dw][di] [/di] используемый на сайте шаблон;
  3. Разместите скопированный ранее код виджета перед закрывающим тегом </body>:

  4. Сохраните изменения.

Готово! Теперь виджет добавлен на сайт.

Как удалить виджет

Удалить виджет просто: удалите вставленный код.



Онлайн-чат

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

Онлайн-чат позволяет:

  • Отвечать клиенту в режиме реального времени.
  • Консультировать по делу, ведь менеджер будет знать, какие страницы посещал клиент и чем интересовался.
  • Обращаться к клиенту персонально, фиксировать общение в CRM, собирать полный портрет каждого клиента сайта.

Подключение Онлайн-чата производится с помощью клика на названии виджета и последующей настройкой на [dw]странице редактирования Виджета[/dw][di]На этой странице настраивается внешний вид кнопки, параметры приветствия и подключаются каналы коммуникаций.
Подробнее...[/di]:

и последующим включением Виджета на странице:

Примечание: В настройках коммуникаций (на странице виджеты, онлайн-чат и т.д.) Вы можете увидеть вместо формы настроек ошибку:
Ошибка получения информации подключенного портала (ACCESS_DENIED: REST is available only on commercial plans.).
Доступ к настройкам коммуникаций в 1С-Битрикс: Управление сайтом осуществляется с помощью REST API, который [dw]недоступен[/dw][di]С 1 января 2021 года использование REST API доступен только на коммерческих тарифах Битрикс24.[/di] на бесплатном тарифе Битрикс24. В таком случае настройки доступны только со стороны Битрикс24. Для перехода к настройкам воспользуйтесь соответствующей [dw]кнопкой[/dw][di]Например внизу страницы Клиенты > Коммуникации с клиентами > Виджеты
Вы увидите такую кнопку:

[/di] внизу страницы.

В работе продукта «1С-Битрикс24: Интернет-магазин+ CRM» используется многосайтовая конфигурация на одном ядре. В этом случае есть особенности настройки виджета.



Обратный звонок

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

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

Примечание: Подробнее об Обратном звонке можно прочитать в статье.


Подключение Обратного звонка производится с помощью клика на названии виджета и последующей настройкой на [dw]странице редактирования Виджета[/dw][di]На этой странице настраивается внешний вид кнопки, параметры приветствия и подключаются каналы коммуникаций.
Подробнее...[/di]:

и последующим включением Виджета на странице:

Примечание: Для работы Обратного звонка необходимо настроить [dw]Телефонию[/dw][di]Сервис Битрикс24 даёт возможность использовать телефонию для решения производственных задач. Телефония в Битрикс24 реализована с помощью технологии WebRTC позволяющей совершать/принимать звонки прямо из браузера.
Подробнее...[/di] на портале Битрикс24.

Примечание: В настройках коммуникаций (на странице виджеты, онлайн-чат и т.д.) Вы можете увидеть вместо формы настроек ошибку:
Ошибка получения информации подключенного портала (ACCESS_DENIED: REST is available only on commercial plans.).
Доступ к настройкам коммуникаций в 1С-Битрикс: Управление сайтом осуществляется с помощью REST API, который [dw]недоступен[/dw][di]С 1 января 2021 года использование REST API доступен только на коммерческих тарифах Битрикс24.[/di] на бесплатном тарифе Битрикс24. В таком случае настройки доступны только со стороны Битрикс24. Для перехода к настройкам воспользуйтесь соответствующей [dw]кнопкой[/dw][di]Например внизу страницы Клиенты > Коммуникации с клиентами > Виджеты
Вы увидите такую кнопку:

[/di] внизу страницы.



CRM-формы

CRM-формы – необходимый для бизнеса инструмент, который поможет повысить эффективность менеджеров, получить новых клиентов, дополнить информацию о текущих и записать все это в CRM.

Установив CRM-формы на свой сайт, собирайте всю информацию о клиентах в CRM.

Примечание: Подробнее о CRM-формах можно прочитать в статье.


Подключение CRM-форм производится с помощью клика на названии виджета и последующей настройкой на [dw]странице редактирования Виджета[/dw][di]На этой странице настраивается внешний вид кнопки, параметры приветствия и подключаются каналы коммуникаций.
Подробнее...[/di]:

и последующим включением Виджета на странице:

Примечание: В настройках коммуникаций (на странице виджеты, онлайн-чат и т.д.) Вы можете увидеть вместо формы настроек ошибку:
Ошибка получения информации подключенного портала (ACCESS_DENIED: REST is available only on commercial plans.).
Доступ к настройкам коммуникаций в 1С-Битрикс: Управление сайтом осуществляется с помощью REST API, который [dw]недоступен[/dw][di]С 1 января 2021 года использование REST API доступен только на коммерческих тарифах Битрикс24.[/di] на бесплатном тарифе Битрикс24. В таком случае настройки доступны только со стороны Битрикс24. Для перехода к настройкам воспользуйтесь соответствующей [dw]кнопкой[/dw][di]Например внизу страницы Клиенты > Коммуникации с клиентами > Виджеты
Вы увидите такую кнопку:

[/di] внизу страницы.

  Что делать с CRM-формами при переходе с облачного портала на Битрикс24 в коробке

CRM-формы потребуется переопубликовать для привязки к новому домену и новому лицензионному ключу. В облачной версии нужно переопубликовать сайт на другом домене (поддомене Битрикс), после чего можно будет в коробочной версии публиковать CRM-форму на освободившемся домене. Больше информации в системе помощи Битрикс24:





Открытые линии

Люди привыкли общаться через цифровые каналы: социальные сети и мессенджеры, потому что это быстро, доступно и удобно. Такой сценарий стал ожидаем и от компании, клиент хочет получить консультацию быстро, персонально и по конкретному вопросу.

Открытые линии Битрикс24 объединяют множество цифровых каналов: Facebook*, Vkontakte, Telegram, Viber и другие.

Обращения клиентов собираются в один чат и автоматически распределяются по ответственным менеджерам.

Клиент обращается через удобный для него канал, а ваши менеджеры получают все сообщения в одном рабочем чате, могут маршрутизировать обращение между собой или привлекать в обсуждение коллег.

Примечание: Подробнее об Открытых линиях можно прочитать в статье.


Подключение Открытых линий производится с помощью клика на названии виджета и последующей настройкой на [dw]странице редактирования Виджета[/dw][di]На этой странице настраивается внешний вид кнопки, параметры приветствия и подключаются каналы коммуникаций.
Подробнее...[/di]:

и последующим включением Виджета на странице:

Примечание: В настройках коммуникаций (на странице виджеты, онлайн-чат и т.д.) Вы можете увидеть вместо формы настроек ошибку:
Ошибка получения информации подключенного портала (ACCESS_DENIED: REST is available only on commercial plans.).
Доступ к настройкам коммуникаций в 1С-Битрикс: Управление сайтом осуществляется с помощью REST API, который [dw]недоступен[/dw][di]С 1 января 2021 года использование REST API доступен только на коммерческих тарифах Битрикс24.[/di] на бесплатном тарифе Битрикс24. В таком случае настройки доступны только со стороны Битрикс24. Для перехода к настройкам воспользуйтесь соответствующей [dw]кнопкой[/dw][di]Например внизу страницы Клиенты > Коммуникации с клиентами > Виджеты
Вы увидите такую кнопку:

[/di] внизу страницы.

* Социальная сеть признана экстремистской и запрещена на территории Российской Федерации.



Телефония

Подключение Телефонии Битрикс24 к сайту позволяет звонить клиентам без дополнительных затрат на гарнитуру, настройки и обслуживание.

Все звонки будут автоматически зафиксированы в Битрикс24.CRM:

  • Исходящий звонок выполняется в один клик прямо из карточки заказа.
  • Входящий звонок от клиента сразу попадает на своего менеджера, не дожидаясь несколько минут, пока его переключат.
  • Менеджер не переспрашивает клиента, кто он и что заказывал – вся информация уже есть на экране.
  • Все пропущенные звонки фиксируются в CRM и становятся вашей «зацепкой», потенциальным покупателем.
  • Руководитель получает отчеты по звонкам и видит, как работает каждый менеджер и весь отдел продаж в целом.
  • Запись звонков помогает выяснить, как менеджеры общаются с клиентами, и определить лучшие сценарии продажи.

Примечание: Подробнее о Телефонии Битрикс24 можно прочитать в статье.





Проверьте себя

Ответьте на несколько вопросов по теме Клиенты, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Для работы модуля Коммуникации с клиентами нужно подключить продукт «1С-Битрикс: Управление сайтом» к порталу Битрикс24.
Верно
Неверно
2 Подключение Коммуникаций с клиентами к порталу Битрикс24 может выполнить пользователь портала с любыми правами доступа.
Верно
Неверно
3 Для подключения доступны только два виджета: чат и звонок.
Верно
Неверно
4 Настройки виджетов выполняются на портале Битрикс24.
Верно
Неверно
5 При подключенной к сайту Телефонии Битрикс24 фиксируются все звонки, кроме пропущенных.
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. Создайте новый портал Битрикс24 и подключите его к интернет-магазину.

    Решение

  2. Подключите к интернет-магазину следующие виджеты:
    • Открытые линии (онлайн-чат)
    • CRM-формы

    В CRM-форме (форме обратной связи) измените описание и удалите одно из полей формы.

    [dw]*[/dw][di] Дополнительное (необязательное) задание. [/di]   Настройте автоматическое приветствие:

    • Замените имя и фото в окне приветствия
    • Установите задержку показа окна приветствия 3 секунды

    Примечание: подробнее о настройке Виджета на сайт можно прочитать в статье.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.


Конверсия

Конверсия - это процентное отношение числа посетителей сайта, выполнивших на нём какие-либо целевые действия, к общему числу посетителей сайта. Соответственно, конверсия - ключевой показатель эффективности работы сайта.

Что влияет на конверсию

Целевые действия зависят от типа сайта: для интернет-магазина это заказы, для новостных и информационных изданий - количество регистраций или кликов на баннер.

Узнайте, что влияет на конверсию Вашего сайта:

  • Сколько пользователей пришло на сайт и с каких устройств (смартфоны / десктоп / планшеты);
  • Сколько из пришедших на сайт совершили целевые действия (например, сколько заказов оформлено / оплачено / добавлено в корзину);
  • С каких браузеров заходят посетители чаще всего;
  • Какие источники приводят наибольшее количество клиентов (почтовые рассылки / контекстная реклама и т.д.);
  • Создайте собственные атрибуты и счетчики для решения новых задач.

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

Форма настроек

Модуль Конверсия настраивается на странице Настройки > Настройки продукта > Настройки модулей > Конверсия. Форма содержит следующие закладки:

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

Нажмите на рисунок, чтобы увеличить

Внимание! Данный модуль пока не является автоустанавливаемым, поэтому его требуется установить самостоятельно из страницы Настройки > Настройки продукта > Модули в административной части сайта.

Примечание: Подробнее о работе с Конверсией читайте в курсе Продвижение сайта и Маркетинг.


Создание собственных счетчиков и атрибутов

[dw]Внимание![/dw][di]Этот урок предполагает наличие у администратора навыков по работе с кодом и минимальных знаний PHP. Если у вас возникают трудности по реализации описанного в уроке алгоритма, обратитесь к разработчикам вашего сайта.[/di]

Для правильной работы примеров необходима версия модуля Конверсия не ниже 15.5.6.

  Счетчики

Для подсчета числа посетителей в день модуль Конверсия поступает следующим образом:

$context = Bitrix\Conversion\DayContext::getInstance(); // контекст текущего дня и текущего пользователя
$context->addDayCounter('conversion_visit_day', 1);     // прибавить 1 к счетчику 'conversion_visit_day' в этом контексте

Для примера рассмотрим задачу подсчета количества посещений корневой '/' страницы сайта. Код необходимо поместить в bitrix/php_interface/init.php.

Внимание! Ошибка в файле [dw]init.php[/dw][di]init.php - необязательный файл в рамках структуры файлов Bitrix Framework. Он автоматически подключается в прологе.
Подробнее...[/di] приводит к полной потере работоспособности сайта, поэтому внесение изменений в него стоит предоставить разработчику.

class MyConversionHandlers
{
	// накрутка наших счетчиков
	static function addCounters()
	{
		if ($_SERVER['REQUEST_URI'] == '/' && Bitrix\Main\Loader::includeModule('conversion'))
		{
			$context = Bitrix\Conversion\DayContext::getInstance();
			$context->addDayCounter('my_page_day', 1); // прибавить 1 к счетчику my_page_day один раз в день
			$context->addCounter   ('my_page_all', 1); // прибавить 1 к счетчику my_page_all
		}
	}

	// информация о наших счетчиках для модуля Конверсия
	static function getCounterTypes()
	{
		return array(
			'my_page_day' => array('MODULE' => 'my', 'NAME' => 'Количество посещений в день', 'GROUP' => 'day'), // дневная группа информирует о счетчике действий
			'my_page_all' => array('MODULE' => 'my', 'NAME' => 'Общее количество посещений'),
		);
	}
}

// регистрируем обработчики в системе
$eventManager = \Bitrix\Main\EventManager::getInstance();
$eventManager->addEventHandler('main'      , 'OnProlog'         , array('MyConversionHandlers', 'addCounters'    ));
$eventManager->addEventHandler('conversion', 'OnGetCounterTypes', array('MyConversionHandlers', 'getCounterTypes'));

Метод addDayCounter добавляет один счетчик для пользователя один раз в день, вне зависимости от того сколько раз он будет вызван. Он и используется для вычисления конверсии.

Метод addCounter увеличивает счетчики столько раз, сколько он будет вызван. Его целесообразно использовать для накопления информационных данных.

Теперь нужно перейти в настройки модуля Конверсия и убедиться, что для модуля [dw]'my'[/dw][di]Вместо 'my' укажите нужный вам модуль, работу с которым поддерживает модуль Конверсия. См. урок Настройки модуля[/di] стоит галочка учета конверсии. Это все что нужно, для того чтобы начать подсчет посещений корневой страницы нашего сайта. Чтобы посчитать и вывести конверсию по этим счетчикам, нужно добавить еще один метод в наш класс:

 // информация для вычисления конверсии
	static function getRateTypes()
	{
		return array(
			'my_page' => array(
				'NAME'      => 'Посещения главной',
				'MODULE'    => 'my',
				'SORT'      => 100, // порядок отображения конверсии
				'SCALE'     => array(0.5, 1, 1.5, 2, 5), // шкала: Плохо 0% - Отлично 5%
            
				// счетчики которые будут переданы в функцию вычисления конверсии
				'COUNTERS'  => array('conversion_visit_day', 'my_page_day', 'my_page_all'),
            
				// функция вычисления конверсии
				'CALCULATE' => function (array $counters)
				{
					$denominator = $counters['conversion_visit_day'] ?: 0; // знаменатель
					$numerator   = $counters['my_page_day'         ] ?: 0; // числитель
					$quantity    = $counters['my_page_all'         ] ?: 0;
               
					return array(
						'DENOMINATOR' => $denominator,
						'NUMERATOR'   => $numerator,
						'QUANTITY'    => $quantity,
						'RATE'        => $denominator ? $numerator / $denominator : 0, // формула конверсии
					);
				},
			),
		);
	}

Зарегистрируем новый обработчик:

$eventManager->addEventHandler('conversion', 'OnGetRateTypes'   , array('MyConversionHandlers', 'getRateTypes'   ));

Теперь конверсия по счетчикам будет посчитана и отображена на странице Пульс конверсии.

  Контекст

Контекст - это уникальный набор атрибутов.

Эти атрибуты, которые фиксируются счетчиками, задаются для каждого пользователя и действуют в течение дня. Например модуль Конверсия устанавливает атрибуты контекста таким образом:

$context = Bitrix\Conversion\DayContext::getInstance();
$сontext->setAttribute('conversion_site', $siteId); // задает атрибуту 'conversion_site' значение переменной $siteId

Благодаря атрибуту 'conversion_site' можно будет отфильтровать все счетчики только по определенному сайту.

Допустим, стоит задача определить настроение и пол человека зашедшего на сайт. Для примера сгенерируем эти данные случайным образом. Добавим два новых метода в класс MyConversionHandlers:

// установка наших атрибутов контекста
	static function setDayContextAttributes(Bitrix\Conversion\DayContext $context)
	{
		// установить атрибут 'my_mood' со значением от 1 до 3
		$context->setAttribute('my_mood', rand(1, 3));

		// установить атрибут 'my_male_gender' или 'my_female_gender' без значений
		$context->setAttribute('my_'.(rand(0, 1) ? '' : 'fe').'male_gender');
	}

	// информация о наших атрибутах для модуля Конверсия
	static function getAttributeTypes()
	{
		return array(
		'my_mood' => array(
			'NAME'   => 'Настроение',
			'MODULE' => 'my',
			'SORT'   => 100, // порядок установки атрибутов
			'GET_VALUES' => function (array $ids) // информация по значениям атрибута
			{
				$values = array();

				$moods = array(
					1 => array('NAME' => 'Плохое'    ),
					2 => array('NAME' => 'Нормальное'),
					3 => array('NAME' => 'Хорошее'   ),
				);

			foreach ($ids as $id)
				if (isset($moods[$id]))
					$values[$id] = $moods[$id];

			return $values;
			},
		),
		'my_male_gender' => array(
			'NAME'     => 'Мужчины',
			'MODULE'   => 'my',
			'SORT'     => 200,
			'GROUP'    => 'gender',  // группировка атрибутов
			'BG_COLOR' => '#be6ac4', // цвет шапки атрибута на странице Пульса конверсии
			'SPLIT_BY' => 'my_mood', // вывод в разрезе настроения на детальной странице
		),
		'my_female_gender' => array(
				'NAME'     => 'Женщины',
				'MODULE'   => 'my',
				'SORT'     => 300,
				'GROUP'    => 'gender',
				'BG_COLOR' => '#4bbedb',
				'SPLIT_BY' => 'my_mood',
			),
	);
	}

Обработчики необходимо зарегистрировать:

$eventManager->addEventHandler('conversion', 'OnSetDayContextAttributes', array('MyConversionHandlers', 'setDayContextAttributes'));
$eventManager->addEventHandler('conversion', 'OnGetAttributeTypes'      , array('MyConversionHandlers', 'getAttributeTypes'      ));

Теперь атрибуты контекста будут устанавливаться для каждого пользователя каждый день.

Если пользователь в определенный день уже заходил на наш сайт до того, как были добавлены новые атрибуты, то контекст для него уже установлен без этих атрибутов. Чтобы переопределить контекст, не дожидаясь следующего дня, нужно очистить [ds]куки[/ds][di] Cookie - это текстовая строка информации, которую веб-сервер передает в браузер посетителя сайта и которая сохраняется в файле на устройстве посетителя сайта. Как правило, используется для определения уникальности посетителя, времени его последнего визита, личных настроек, уникального идентификатора корзины покупок и т.д.

Подробнее...[/di] PHPSESSID и BITRIX_CONVERSION_CONTEXT для сайта в браузере.

Если зайти на страницу [dw]Пульс конверсии[/dw][di]Маркетинг > Пульс конверсии[/di], то в выпадающем меню со списком групп атрибутов добавится новый пункт 'gender'. Чтобы задать более понятное название созданной группе, нужно добавить еще один метод:

// информация о группах для модуля Конверсия
	static function getAttributeGroupTypes()
	{
		return array(
			'gender' => array('NAME' => 'Пол', 'SORT' => 300),
		);
	}

И зарегистрировать его в системе:

$eventManager->addEventHandler('conversion', 'OnGetAttributeGroupTypes' , array('MyConversionHandlers', 'getAttributeGroupTypes' ));

Как можно заметить, атрибуты могут иметь, а могут и не иметь значений. Все зависит от того, как решено организовать и выводить данные.

Например, можно было бы не вводить два атрибута без значений: 'my_male_gender' и 'my_female_gender', а обойтись одним: 'my_gender', со значениями: 'male' и 'female'. Но в этом случае существует ряд ограничений. Так, если создатель другого модуля решит, что ему нужен еще один вариант атрибута в группе 'gender', то он не сможет попросту добавить еще один атрибут 'his_neuter_gender' в своем модуле, ему придется править всю реализацию.

Также на странице Пульс конверсии можно делать срез только по самим атрибутам, имеющим общую группу, а не по их значениям. Но это вовсе не означает, что атрибуты с группой не должны иметь значений. Например, модуль Конверсия определяет атрибут 'Органический трафик' в группе 'Источники с которых заходили', со значениями в виде поисковых систем. Несколько других модулей добавляют свои атрибуты в эту группу таким же образом. А как раз на детальной странице делается срез по значениям этих атрибутов.

  Еще раз подчеркнем главное


  • Атрибуты имеющие GROUP будут доступны на странице Пульса конверсии.
  • На детальной странице в данный момент реализована выборка по атрибуту имеющему значения, указанному в поле SPLIT_BY, но в будущем будет добавлена возможность строить сложные фильтры с различными вариантами атрибутов и значений.
  • Если несколько атрибутов имеющих одну группу будут установлены, то будет использован тот атрибут, у которого поле SORT будет наименьшим.


Проверьте себя

Ответьте на несколько вопросов по теме Конверсия, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Целевым действием на сайте является покупка товара.
Верно
Неверно
2 В настройках модуля Конверсия указывается базовая валюта для товаров интернет-магазина.
Верно
Неверно
3 Конверсия по счетчикам отображается на странице Пульс конверсии.
Верно
Неверно
4 Контекст - это уникальный набор атрибутов, которые фиксируются счетчиками, задаются для каждого пользователя и действуют в течение дня.
Верно
Неверно
5 В настройках Конверсии можно выбрать модули, для которых нужно рассчитывать конверсию.
Верно
Неверно


Контроллер сайтов

Контроллер - модуль, который предназначен для группового централизованного администрирования, обновления, мониторинга большого количества сайтов, расположенных как на этом же сервере, так и на удаленных серверах доступных через Интернет. Контролируемых сайтов может быть любое количество и они должны быть разработаны на базе продукта «1С-Битрикс: Управление сайтом» (любой редакции).

Возможности и функционал Контроллера сайтов

  Возможности модуля

  1. Управление множеством независимых веб-сайтов.

    Контроллер позволит вам централизованно управлять веб-сайтами, даже если они:

    • физически размещены на различных хостинг-площадках;
    • каждый из них полностью независим и администрируется отдельной группой сотрудников;
    • разработаны на различных редакциях «1С-Битрикс: Управление сайтом» и обладают различным функционалом.

  2. Администрирование подчиненных сайтов без необходимости знать параметры учетных записей на каждом из них.

    Администратор контроллера может зайти на любой подчиненный сайт и выполнить необходимые действия. При этом неважно, какие права установят локальные администраторы. Кроме этого, администратор контроллера может централизованно запустить любую операцию, которая будет выполнена на подчиненных проектах: изменение прав, обновление ядра и т.п.

  3. Централизованная раздача (трансляция) контента.

    С помощью контроллера можно транслировать на подчиненные сайты:

    • единый каталог товаров, который подготовлен и оформлен в головном офисе;
    • единый шаблон дизайна веб-ресурса, выполненный в соответствии с фирменным стилем компании;
    • единую ленту новостей/событий/мероприятий;
    • общую функциональность (конфигуратор, система расчета, калькулятор);
    • и многое другое.

  4. Единая система авторизации и разграничения доступа.

    Контроллер позволяет объединить списки групп пользователей между всеми подчиненными веб-сайтами и обеспечить работу с ними в режиме единой авторизации (Single Sign On). Если все сайты – независимые интернет-магазины, сообщества, социальные сети или любые другие веб-ресурсы, то посетителям достаточно знать только один логин и пароль для работы с ними.

  Инструменты контроллера

Функционал по работе с модулем Контроллер сайтов расположен в секции Сервисы административного раздела.

Доступны следующие инструменты:

Сайты – функционал по работе с сайтами, добавленными в контроллер: включение, исключение, управление активностью и другими настройками.

Группы – операции по управлению групповыми настройками сайтов, подключенных к контроллеру. Ограничение функционала и настройка модулей подчиненных сайтов. Ограничение прав локальных администраторов.

Задачи – планировщик задач. Содержит список задач, выполненных или ожидающих исполнения в ближайшее время на подчиненных контроллеру сайтах.

Журнал – полный отчет по действиям администратора контроллера над подчиненными сайтами.

Удаленное выполнение команд – функционал по выполнению произвольного PHP кода на заданном множестве подчиненных сайтов.

Передача файла – передачи файлов на подчиненные сайты.

Счётчики – инструмент для выполнения на удалённых сайтах определённого php-кода в заданный период времени.

Авторизация – настройка авторизации пользователей на подчинённых сайтах.

  Документация по теме


  • Контроллер (описание модуля в пользовательской документации)


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

Глобальные параметры модуля определяются на странице Настройки > Настройки продукта > Настройки модулей > Контроллер.

Настройки

На закладке Настройки указываются общие параметры модуля:

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

  • Опция Интервал для автоматической установки групповых настроек на клиентские сайты, по умолчанию, минут позволяет задать интервал времени в минутах для автоматической установки групповых настроек на клиентские сайты по умолчанию. Если указано 0, то настройки клиентов не будут обновляться автоматически.
  • Если имеются клиенты, использующие общее с контроллером ядро (например, редакция Платформа аренды приложений продукта или Бизнес веб-кластер), то дополнительно будет доступна опция Путь к папке с общим ядром (относительно корня сайта-контроллера).

    Примечание: Подробнее про общее ядро можно посмотреть в статье Установка платформы аренды приложений, раздел 5.6 Выделяем из нашей установки общее ядро.

  • Включить показ дополнительного поля "Имя хоста" - при включении опции в форме создания/редактирования сайта будет доступно поле для задания альтернативного имени подключенного сайта;
  • Сколько дней хранить журнал авторизаций - указание срока хранения записей в журнале авторизаций;
  • Количество повторных попыток выполнения задач - указывается число попыток. А в следующей [dw]опции[/dw][di]Интервал между повторными попытками выполнения задач (сек.)[/di] задается интервал в секундах между этими повторными попытками.

Доступ

на закладке Доступ можно настроить права на доступ к модулю для всех имеющихся в системе групп пользователей.

Документация по теме:


Сайты

  Список подчиненных сайтов

На странице Сервисы > Контроллер > Сайты администратору контроллера отображается список всех сайтов, подчиненных контроллеру.

Сайт может присутствовать в списке, но быть отключенным от контроллера, если это потребовалось администратору.

Администратор может деактивировать сайт вручную или задать период его активности, когда контроллер автоматически будет сверять период с текущей датой и временем на сервере.

Поддерживается неограниченное количество подчиненных сайтов.

Внимание! Если подчиненный сайт подключен к контроллеру и неактивен, значит, он недоступен для любых посетителей.

  Меню действий

Основные операции с подчиненными сайтами выполняются через меню действий.

Примечание: Некоторые пункты меню доступны только для подключенного сайта.

  • Редактировать – переход к форме редактирования параметров сайта;

    Примечание: Для изменения параметров уже подключенного сайта используется форма схожая с формой [dw]Регистрация нового клиента[/dw][di]Регистрация нового клиента[/di], но в ней будет доступна дополнительная вкладка Счетчики.

  • Войти как Администратор – переход в публичный раздел сайта-клиента в качестве администратора.
  • Обновить сайт – установка обновлений на сайт клиента. При использовании этой функции автоматически создастся задача на обновление. Запуск процесса обновления производится со страницы Задачи. Результат обновления виден в Журнале.
  • Обновить настройки – выполнение установки [dw]настроек[/dw][di]Многие настройки группы подразумевают соответствующее изменение настроек на удаленном сайте.
    Подробнее...[/di] на сайт клиента.
  • Обновить счётчики – обновление счётчиков, [dw]заданных для группы сайтов[/dw][di]Для облегчения управления множествами подчиненных сайтов администратору контроллера предлагается возможность их размещения в группах, для каждой из которых можно установить требуемую групповую политику.
    Подробнее...[/di], к которой относится выбранный клиент.
  • Выполнить PHP – переход на страницу удаленного выполнения команды для данного сайта.
  • Лог операций – переход на страницу [dw]журнала[/dw][di]Функционал Журнал предназначен для отладки работы. В нём фиксируются результаты выполнения всех операций над сайтами, включенными в контроллер, в том числе: журналирование примечаний при смене группы и обновление счетчиков при занесении заметки в журнал.
    Подробнее...[/di] работы контроллера с установленным фильтром на данном клиенте.
  • Отсоединить – отключение клиента от контроллера. (Отсоединение так же возможно и в форме редактирования клиента с помощью кнопки Отсоединить на контекстной панели.)
  • Удалить – удаление записи данного клиента.

    Примечание:

    Если при удалении клиент не был отсоединен, то запись об этом клиенте из контроллера будет удалена, а сам сайт будет работать с теми настройками, которые были установлены контроллером.

    Если же перед удалением клиент был отсоединен, то на сайте будут возвращены настройки, установленные до подключения к контроллеру.

  Подключение подчиненного сайта к контроллеру

Для подключения сайта к контроллеру необходимо выполнить следующее:

  • Нажать кнопку Добавить на контекстной панели страницы Сайты
  • Заполнить поля формы Регистрация нового клиента

    Регистрация нового клиента

    • URL-адрес сайта и его название

      Именно по URL-адресу контроллер впоследствии обращается к удаленному сайту и выполняет все настройки, ограничения и команды. Название и описание помогают ориентироваться в общем списке сайтов.

    • Логин и пароль администратора

      Знание параметров учетной записи администратора – это первичное условие для подключения самостоятельного сайта к контроллеру. Иными словами, владельцы удаленного сайта, предоставляя административные права администратору контроллера, фактически дают свое согласие на удаленный режим управления их веб-проектом. Тем не менее, рекомендуется дополнительно оформлять данное соглашение юридически.

    • Группа

      Привязка сайта к определенной группе означает автоматическое применение к нему всех групповых настроек и политик безопасности, которыми эта группа обладает.

      По умолчанию привязка осуществляется к группе, указанной в настройках модуля.

      Примечание: Если сайт привязывается к новой группе, то соответствующая ей политика безопасности будет применена к сайту на основании настроек заданной группы.
    • Активность

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

    • Чтобы сайт-клиент был открыт для доступа посетителям, необходимо отметить опцию Активен (открыт для доступа посетителям).
    • С помощью опции Период активности можно задать период, в течение которого подключаемый сайт будет активен.
  • Нажать кнопку Сохранить. В случае удачного подключения к сайту он будет отображен в общем списке.
Примечание: При редактировании параметров сайта будет доступна еще одна закладка – Счетчики, на которой отображается следующая информация о подчиненном сайте:

Закладка Счетчики

Обновление данных происходит как вручную (с помощью ссылки [обновить]), так и автоматически, но при условии, что в настройках группы (Сервисы > Контроллер > Группы) на закладке Счетчики отмечены опции для получения соответствующей информации.


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

Также возможен вариант подключения сайта к контроллеру непосредственно из административной части подчиненного сайта (если на нем не установлен модуль Контроллер).

Для этого:
  • Перейдите на страницу настроек Главного модуля подчиненного сайта, секция Служебные процедуры, закладка Контроллер:

    Cекция Служебные процедуры

  • Примечание: Закладка отображается только в случае, если в системе не установлен модуль Контроллер.

  • Укажите параметры подключения к сайту-контроллеру: URL контроллера, Логин администратора контроллера и Пароль администратора контроллера;
  • Укажите параметры: Название текущего сайта и URL сайта;
  • Задайте Настройки прокси (если требуется) и нажмите кнопку Сохранить настройку прокси;
  • Нажмите кнопку Добавить этот сайт к контроллеру.

Если неверно или не полностью заполнены данные, будет выведено соответствующее уведомление.

Важно! Если на управляющем сайте включена [ds]Защита административной части[/ds][di] Защита административной части осуществляется с помощью ограничения доступа со всех, кроме указанных в настройках IP-адресов. Включение или отключение защиты выполняется на странице Защита административного раздела (Настройки > Проактивная защита > Защита административного раздела) с помощью кнопки Включить защиту (или Выключить защиту).

Подробнее...[/di], то не забудьте внести IP подчиненного сайта в список разрешенных, иначе при работе с подчиненным сайтом через контроллер может возникнуть ошибка Ответ контроллера подписан некорректно.

  Документация по теме




Группы

  Список групп и меню действий

Для облегчения управления множествами подчиненных сайтов администратору контроллера предлагается возможность их размещения в группах, для каждой из которых можно установить требуемую групповую политику.

На странице Группы (Сервисы > Контроллер > Группы) находится список всех групп, присутствующих в контроллере.

Меню действий

Для каждой группы в меню действий доступны следующие пункты:

  • Редактировать - переход к форме редактирования параметров группы сайтов;
  • Копировать - копирование группы сайтов;
  • Удалить - удаление группы.

    Примечание: Удаление группы, к которой относится хотя бы один сайт, а также группы, используемой по умолчанию, невозможно.

  Создание группы

Для создания новой группы необходимо нажать кнопку Добавить на контекстной панели страницы Группы и заполнить поля формы:

  • Закладка Параметры

    Закладка Параметры

    На вкладке Параметры, помимо названия и описания группы, доступна группа параметров Обновление настроек у сайтов данной группы.

    Дело в том, что многие настройки группы подразумевают соответствующее изменение настроек на удаленном сайте. Например, права доступа локальных групп пользователей или список активных модулей. В этой связи изменение настроек группы заставляет модуль Контроллер сайтов обратиться к каждому из удаленных веб-проектов, авторизоваться, установить сеанс удаленного управления и выполнить необходимые команды. Поэтому если к группе привязано большое количество веб-проектов, то изменение ее настроек может инициировать очень ресурсоемкий процесс, сопряженный с большой нагрузкой на сам контроллер.

    Для решения этой проблемы был предусмотрен механизм отложенного применения групповых настроек. При сохранении группы с новыми настройками, задачи перенастройки параметров каждого сайта помещаются в планировщик задач и исполняются с равномерной нагрузкой на сервер в течение указанного в параметре Период автоматического обновления установок на клиенте, минут значения.

  • Закладка Модули

    Закладка Модули

    В данном диалоге можно управлять списком модулей, которые будут активны на подчиненных сайтах текущей группы.

    Термин Неактивный модуль означает, что данный модуль на удаленном сайте исключен из функциональности. Это не означает его деинсталляцию в продукте, включая удаление связанных с ним данных. Модуль просто исключается из визуализации в административной панели и прекращает свою работу (не отвечает на запросы ядра).

    Зачастую не все модули приобретенной редакции используются в интернет-проекте и в этом случае исключение этих модулей из административной части избавляет техническую поддержку от массы лишних вопросов, а веб-проект - от непреднамеренного внесения ошибок.

  • Закладка Настройки модулей

    Данная закладка позволяет задать некоторые параметры настройки Главного модуля и настройки модуля Управление структурой на подчиненном веб-проекте:

    • Автокеширование компонентов - не позволяет локальному администратору переключать настройку автокеширования в компонентах, тем самым влияя на производительность и визуализацию динамического контента.
    • Режим вывода ошибок - настройка визуализации ошибок на удаленном сайте. Поставив Ошибки и предупреждения, локальный администратор может инициировать вызов служебных сообщений PHP в публичной части сайта, что нецелесообразно. Данная настройка может этому воспрепятствовать. Возможны и другие примеры использования этой настройки.
    • E-mail адреса для дублирования исходящих писем - используется при необходимости администратору контроллера получать на заданный e-mail все почтовые сообщения, генерируемые веб-проектами, отнесенными к данной группе.
    • Дисковая квота - максимальный размер дискового пространства, занимаемый веб-сайтами, отнесенными к данной группе. В рассмотрение включается и размер публичных файлов, включая содержимое папок /bitrix/ и /upload/, и размер базы данных веб-проекта. При превышении дисковой квоты удаленный веб-сайт будет генерировать сообщения об ошибках при операциях добавления новых данных.
    • Настройки регистрации новых пользователей в удаленных проектах позволяют администратору контроллера разрешить или запретить самостоятельную регистрацию новых пользователей на удаленном сайте, разрешить/запретить запоминание авторизации, принудительно включить CAPTCHA для защиты от автоматических регистраций и др. настройки.
    • Настройки системы обновлений позволяют указать настройки обращения к серверу обновлений для сайтов, отнесенных к данной группе. Это может быть стандартный сервер обновлений компании «1С-Битрикс» либо произвольный сервер (например, сам контроллер), с которого локальные веб-сайты будут скачивать обновления ядра и модулей продукта.
    • Список Доступные компоненты в визуальном редакторе дает возможность администратору контроллера указать список компонентов, которыми могут оперировать пользователи подчиненного сайта. Минимально необходимый список компонентов исключит возможность ошибок и некорректного отображения страниц удаленного веб-сайта.

    Внимание! Перечисленные настройки контроллера имеют приоритет над локальными настройками сайтов, подключенных к контроллеру. Пока сайт подключён к контроллеру, будут действовать настройки контроллера. При отключении сайта от контроллера вступят в силу локальные настройки.

    Примечание: Недостающие настройки можно реализовать с помощью PHP-скриптов инсталляции/деинсталляции групповой политики на закладке Дополнительно.

  • Закладка Права доступа.

    На данной закладке администратору контроллера предоставляется возможность внести изменения в стандартную систему разграничения прав доступа на сайте, включенном в контроллер.

    Все эти настройки помогают исключить возможность внесения нежелательных изменений локальными пользователями при управлении сайтом.

    При установленном флаге Отнимать полный доступ у администраторов можно задать для администраторов локальных сайтов иные права на модули, чем предусмотрено локальными настройками сайтов.

    Аналогичным образом администратор контроллера может переопределить права и для других групп на подчиненном сайте.

  • Закладка Счетчики

    На данной закладке можно выбрать счетчики и указать период их автоматического обновления.

    Примечание: Кроме периодического обновления счётчики могут обновляться вручную, а также при смене группы.

    Информация по ним будет доступна в режиме редактирования сайта (Сервисы > Контроллер > Сайты) на закладке Счетчики.

  • Закладка Дополнительно

    На данной вкладке предоставляется возможность указать PHP-скрипты, которые будут выполнены на подчиненных сайтах при установке или отмене данной групповой политики.

    Данная закладка - это расширение настроек групповой политики, которые были перечислены выше. Технический специалист, используя документацию к продукту, может самостоятельно разработать любой функционал, который будет выполнен на удаленном сайте при установке или отмене этой групповой политики.

  • Закладка Доп. поля.

    На закладке создаются [dw]пользовательские поля[/dw][di]Пользовательское поле - инструмент, позволяющий добавлять к объектам системы поля, не предусмотренные штатным функционалом.
    Подробнее...[/di] для группы сайтов. При копировании группы пользовательские поля так же копируются.



Задачи

Какие задачи могут быть запланированы и выполнены?

Планировщик задач - это специализированный инструмент, который накапливает задания, формируемые остальным функционалом контроллера, и выполняет их в ручном или автоматическом режиме.

Могут быть выполнены следующие задачи:
  • установка групповых настроек;
  • обновление сайта;
  • обновление счетчика;
  • выполнение команды;
  • закрытие/открытие клиентов.

Планировщик задач

В случае если к моменту обращения к данной странице в планировщике есть невыполненные задачи, они немедленно будут запущены на выполнение на удаленных сайтах.

Также возможно использование [dw]агентов[/dw][di]Агенты - это технология , позволяющая запускать произвольные PHP функции (агенты) с заданной периодичностью. В самом начале загрузки каждой страницы система автоматически проверяет, есть ли агент, который нуждается в запуске и в случае необходимости - исполняет его.
Подробнее...[/di] (или cron), которые будут исполнять задачи на основании заданного расписания (например, в ночное время, при минимальной нагрузке на подчиненные веб-проекты).

Документация по теме:


Журнал и история сайта

Функционал Журнал (Сервисы > Контроллер > Журнал) предназначен для отладки работы.

В нём фиксируются результаты выполнения всех операций над сайтами, включенными в контроллер, в том числе: журналирование примечаний при смене группы и обновление счетчиков при занесении заметки в журнал.

История

Для просмотра изменений по конкретному сайту воспользуйтесь функционалом История сайта. Для этого нажмите кнопку История на контекстной панели в форме редактирования сайта (Сервисы > Контроллер > Сайты, форма редактирования выбранного сайта):

По этой команде откроется страница со списком операций, совершённых над сайтом:

Доступна история событий по изменению:

  • Активности сайта (доступа для посетителей);
  • Группы сайта;
  • Наименования сайта (NAME);
  • Активности управления сайтом (ACTIVE). С версии модуля 20.100.0.

С помощью кнопки Сайт осуществляется возврат к форме редактирования.

Документация по теме:


Удаленное выполнение команд

Интерфейс удаленного выполнения произвольных команд на удаленных сайтах (Сервисы > Контроллер > Удаленное выполнение команд) представлен в виде следующей формы:

Администратор контроллера может указать произвольный PHP скрипт, который должен быть исполнен на удаленном проекте (в фильтре предоставляется возможность указать группу сайтов или конкретный сайт).

Операции, выполняемые скриптом, могут быть совершенно произвольными. Все то, что возможно выполнить с помощью API, доступно для выполнения на удаленном проекте:

  • изменение параметров сайта;
  • изменение структуры сайта;
  • добавление произвольного контента: разделы и страницы, новости, каталог и другая динамическая информация;
  • и т.п.

Опция Выполнить команду через планировщик задач дает возможность исполнения скрипта не непосредственно после нажатия кнопки Выполнить, а посредством планировщика задач. Общая задача будет разбита на множество задач для каждого сайта и выполнена последовательно на каждом удаленном веб-проекте.

Выполнение команд для числа сайтов более 50 требует подтверждения. Возможно изменение числа сайтов, подачу команд для которых надо подтверждать:

Option::SetOptionString("controller", "safe_count", 9999999);

Документация по теме:


Передача файла

Страница Сервисы > Контроллер > Передача файла служит для отправки файлов на сайты-клиенты контроллера. Файл можно передать на какой-то конкретный сайт, на сайты определенной группы или же на все подчиненные сайты сразу.

  • Выберите в фильтре подчиненный сайт, на который необходимо передать файл;

    Примечание: В расширенном фильтре можно также выбрать и группу сайтов, на которые будет происходить передача файлов.

  • В поле Откуда укажите путь к файлу, расположенному на контроллере;
  • В поле Куда укажите путь на подчиненном сайте, куда будет скопирован файл;
  • Примечание: Если на подчиненных сайтах нет указанного каталога, то он будет создан автоматически.

  • Нажмите кнопу Передать.

После операции передачи файла под таблицей будет отображено название сайта, для которого она выполнялась или же, в случае неудачной передачи, текст ошибки.

Документация по теме:


Счётчики

Модуль Контроллер позволяет создавать и применять на сайтах счётчики.

  Счётчики

Счётчик - инструмент для выполнения на удалённых сайтах определённого php-кода в заданный период времени.

В системе созданы и могут быть применены к группам сайтов 4 штатных счётчика:

  • Размер свободного дискового пространства
  • Количество сайтов
  • Количество пользователей
  • Дата последней авторизации

На странице Сервисы > Контроллер > Счётчики можно создать и отредактировать собственные счётчики.

Параметры счётчика настраиваются на странице редактирования конкретного счётчика, параметры запуска - на странице редактирования группы сайтов.

  Создание и настройка запуска

Открыв форму создания счётчика, заполните его поля:

Для настройки запуска счётчика откройте форму редактирования группы сайтов (Сервисы > Контроллер > Группы) на закладке Счётчики:

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

  История изменений

Каждый счётчик ведёт свою историю изменений. Для её просмотра воспользуйтесь кнопкой [dw]История[/dw][di][/di] в форме редактирования Счётчика. Откроется история изменений счётчиков, которая кроме просмотра истории позволяет восстановить любую команду.

  Примеры кодов счётчиков

Пользователи [dw]экстранета[/dw][di]Экстранет - расширение корпоративного портала, которое позволяет компании осуществлять конфиденциальную связь с поставщиками, дистрибьюторами и другими внешними пользователями без доступа их к внутрикорпоративной информации.
Подробнее...[/di]

$counter = 0;
$rsUsers = CUser::GetList($o="ID", $b="asc", array("ACTIVE"=>"Y","=UF_DEPARTMENT"=>false), array("SELECT"=>array("ID")));
while($arUser = $rsUsers->Fetch())
  if($arUser["EXTERNAL_AUTH_ID"] !== "__controller")
    $counter++;
return $counter;

Выставление лимита в 5GB (Тип - Число, формат - как размер файла)

$max_size = 5*1024*1024*1024;
COption::SetOptionString("main_size", "~max_size", $max_size);
return $max_size;

Объем файлов в облаке (Тип - Число, формат - как размер файла)

$file_size = 0.0;
if(CModule::IncludeModule('clouds'))
{
  $rsBuckets = CCloudStorageBucket::GetList();
  while($arBucket = $rsBuckets->Fetch())
    $file_size += $arBucket["FILE_SIZE"];
}

COption::SetOptionString("main_size", "~cloud", $file_size);
$params = array("status" => "d", "time" => time());
COption::SetOptionString("main_size", "~cloud_params", serialize($params));

return $file_size;

  Документация по теме




Авторизация

Страница Авторизация (Сервисы > Контроллер > Авторизация) позволяет настроить авторизацию пользователей на подчинённых сайтах, между подчинёнными сайтами и на контроллере.

Для задания параметров авторизации необходимо выбрать нужный вид авторизации, установить флажок, разрешающий авторизацию и задать соответствие групп между сайтами с помощью Символьных идентификаторов. Символьный идентификатор группы задаётся в настройках группы, в одноимённом поле.

Примечание: даже если Символьные идентификаторы не заданы, то группу Администраторы и Все пользователи (в том числе не авторизованные) всегда можно задать, используя коды administrators и everyone соответственно.

Кроме того, необходимо выполнить настройки [ds]Главного модуля[/ds][di] Главный модуль задаёт параметры работы системы в целом. Форма настройки находится на странице Настройки > Настройки продукта > Настройки модулей > Главный модуль.

Подробнее...[/di] на подчиненных сайтах. На закладке Журнал событий доступны следующие параметры:

  • Префикс для авторизации на контроллере – указывается префикс, который будет использоваться для авторизации пользователей контроллера;
  • Авторизовывать на этом сайте пользователей других сайтов контроллера – при отмеченной опции пользователи других сайтов контроллера смогут авторизовываться на этом сайте, причем обязательно должна быть разрешена авторизация между подчиненными сайтами на контроллере и настроено соответствие групп (см. выше).

Если разрешена авторизация пользователей контроллера на подчиненных сайтах, задано соответствие групп пользователей и указан префикс для авторизации на контроллере, например controller, то при заходе на подчиненный сайт пользователь должен указать в качестве логина controller\логин_на_контроллере и в качестве пароля пароль_на_контроллере. Пользователь авторизуется, причем на подчиненном сайте будет создан локальный пользователь с соответствующими именем и правами.

Если разрешена авторизация пользователей подчиненных сайтов на контроллере и задано соответствие групп пользователей, то при заходе на контроллер пользователь должен указать в качестве логина доменное_имя_подчиненного_сайта\логин_на_сайте и в качестве пароля пароль_на_сайте. На контроллере будет создан локальный пользователь с соответствующими именем и правами.

Пример

Пользователь принадлежит группе Сотрудники техподдержки на контроллере. На странице Авторизация контроллера на закладке На подчинённых сайтах задано, что группа Сотрудники ТП соответствует группе Администраторы магазина на подчинённом сайте.

В результате пользователь, авторизуясь на подчинённом сайте под логином контроллера (даже если он и не имеет аккаунта на этом сайте), приобретает права группы Администраторы магазина, даже если он и не входит в эту группу.

Примечание: Администраторы контроллера всегда могут авторизовываться на подчиненных сайтах с наивысшими правами. При подключении сайта к контроллеру на подключенном сайте создается локальный пользователь-администратор, пароль от которого в зашифрованном виде хранится на контроллере.

Документация по теме:


Публикация новостей с контроллера на подключенных сайтах

Идея публикации новостей заключается в формировании на контроллере xml файла, передаче его на подключенные к контроллеру сайты и импорте метаданных инфоблока и значений полей/свойств элемента.

Внимание! Есть вероятность того, что большие по объему новости не будут опубликованы на подчиненном сайте. Это зависит от настроек сайта и хостинга, так как вся новость передается в большом POST запросе.

Внимание! Действие по публикации новостей требует на клиенте версию главного модуля не ниже 11.0.9.

Для публикации новостей с контроллера на подключенных сайтах выполните следующее:

  • Подключите к контроллеру сайт, на который будут транслироваться новости
  • На контроллере и на подключенных сайтах в настройках модуля инфоблоков (по крайней мере, на время) отметьте опцию Показывать код загрузки из внешних источников

    Показывать код загрузки из внешних источников

  • Настройте инфоблок на контроллере:

    Укажите Символьный код - именно по нему будет выполняться синхронизация элементов;

    В поле Участвует в документообороте или бизнес процессах выберите опцию Бизнес процессы;

    Настройка инфоблока на контроллере

    Затем нажмите кнопку Применить.

    На появившейся вкладке Шаблоны бизнес-процессов для бизнес-процесса Публикация на подключенных сайтах отметьте опции Создание и Изменение и сохраните изменения настроек инфоблока.

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

    Создайте страницу, если необходимо, и разместите на ней компонент Новости, в настройках которого укажите созданный инфоблок.

  • На сайте контроллера добавьте новость

  • После чего на подключенном сайте появится новость

Частые вопросы

Компании необходимо несколько интернет-проектов по различным тематикам. Необходимо использовать "контроллер сайтов" или воспользоваться "многосайтовостью" стандартных редакций?

Если управление всеми интернет-проектами будет сосредоточено в "одних руках" и все проекты могут быть размещены на единой хостинг-площадке, то выгоднее использовать "Многосайтовость".

Если каждым веб-проектом управляют отдельные структуры, и требуется полная независимость одного сайта от другого, но при этом существует необходимость глобального централизованного управления ими, то единственным решением будет использование "контроллера сайтов". Кроме того, контроллер необходим, если проекты физически размещаются на различных хостинг-площадках (например, региональные веб-ресурсы, которые работают с локальным трафиком).

Если сайт, на котором размещен "контроллер", прекратит свою работу, скажется ли это на подчиненных ему проектах? И наоборот?

Нет, все сайты независимы друг от друга. Если выйдет из строя контроллер, сайты продолжат работу в обычном режиме с теми настройками, которые были установлены администратором контроллера. Если выйдет из строя подчиненный сайт, то на работе контроллера это также не скажется.

Есть два инфоблока на контроллере: первый с элементами, которые нужно будет реплицировать на подчиненный сайт, и второй - с разделами, к которым привязаны эти же элементы первого инфоблока (свойство привязки к разделам инфоблока). Возможно ли сделать так, чтобы элементы первого инфоблока не теряли привязки к разделам второго инфоблока на подчиненном сайте?

Для этого достаточно совпадения внешних кодов (xml_id) разделов второго инфоблока на контроллере и подчиненном сайте. Необходимо выполнить xml экспорт разделов второго инфоблока на контроллере и импортировать этот файл на подчиненный сайт.

Если на контроллере добавляется новое свойство инфоблока, то будет ли оно при обмене автоматически создано на подчиненном сайте?

Да, будет.



Проверьте себя

Ответьте на несколько вопросов по теме Контроллер сайтов, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Администратор контроллера может зайти на любой подчиненный сайт и выполнить необходимые действия. При этом неважно, какие права на веб-сайт установят локальные администраторы.
Верно
Неверно
2 Контроллер позволяет объединить списки групп пользователей между всеми подчиненными веб-сайтами, однако на каждом сайте пользователям нужно авторизовываться отдельно.
Верно
Неверно
3 Если в настройках опции Интервал для автоматической установки групповых настроек на клиентские сайты, по умолчанию, минут установлено значение 0, то настройки клиентов будут обновляться автоматически и одновременно.
Верно
Неверно
4 Если подчиненный сайт подключен к контроллеру и неактивен, значит, он недоступен для любых посетителей.
Верно
Неверно
5 Подключение сайта к контроллеру возможно непосредственно из административной части подчиненного сайта, если на нём не установлен модуль Контроллер.
Верно
Неверно
6 Удаление группы сайтов, к которой относится хотя бы один сайт, а также группы, используемой по умолчанию, невозможно.
Верно
Неверно
7 Все то, что возможно выполнить с помощью API, доступно для выполнения на удаленном проекте.
Верно
Неверно
8 В системе созданы и могут быть применены к группам сайтов 4 штатных счётчика, создание собственных счётчиков недопустимо.
Верно
Неверно
9 Администраторы контроллера при авторизации на подчиненных сайтах имеют тот уровень прав, который задал им администратор подчиненного сайта.
Верно
Неверно
10 Если сайт, на котором размещен контроллер, прекратит свою работу, подчиненные сайты продолжат работу в обычном режиме с теми настройками, которые были установлены администратором контроллера.
Верно
Неверно


Маркетинг

В этой главе описаны инструменты для быстрой и эффективной работы с рекламой и рассылками.

Документация по теме:


E-mail маркетинг

Модуль Email-маркетинг предназначен для организации работы рассылок.

Чем же отличается этот модуль от модуля Рассылки?

По сути, их главный функционал одинаков - в обоих случаях мы имеем возможность отправлять рассылки подписчикам.

Модуль Email-маркетинг - обновленный полезный инструмент (доступен c версии 15.0.1), принципиально отличающийся от модуля Рассылки автоматикой обновления адресов подписчиков, принципами отправки и отслеживания, а также шаблонизатором и возможностью постоянных отправок с актуальной информацией на основе компонентов для писем.

Модуль Рассылки остается для тех, кто его уже применяет (у кого он входил в редакцию на момент покупки).


Возможности E-mail маркетинга

Основные возможности модуля:

  • Создание рассылок;
  • Возможность подписываться к рассылкам или отписываться в один клик;
  • Формирование рассылок по шаблонам;
  • Отправка писем как вручную, так и с определенной периодичностью;
  • Импорт адресов;
  • Отправка писем как через Агент (на хитах), так и через Сron - поддержка в BitrixVM\BitrixEnv v7.2 (достаточно включить соответствующую опцию в меню);
  • Поддержка вложений в письмах;
  • Поддержка компонентов для почтовых шаблонов.

Общая схема работы модуля Email-маркетинг

  • В основе рассылки лежит шаблон, который желательно подготовить заранее.
  • Рассылка отправляется определенному набору адресатов - сегменту. Его тоже предпочтительней настроить заранее.
  • Рассылку можно сделать периодической, установив в поле [dw]Отправить рассылку[/dw][di] [/di] значение Каждый день.

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

Если выпуск отправляется разово и в определенное время, то список получателей также обновится перед отправкой.

Процесс создание сегментов, шаблонов и рассылок описан в курсе [ds]Продвижение сайта и Маркетинг[/ds][di]Поисковая оптимизация подразумевает постоянную работу, а не разовые акции по продвижению информационных ресурсов. На оценку поисковой системы влияют десятки различных факторов, начиная с имени домена и заканчивая качеством каналов связи.

Подробнее ...[/di].

Работа с модулем

Администратор производит только настройку модуля и кастомизацию. Всю остальную работу, как правило, выполняет контент-менеджер, причем выполняет её в [dwi include_admin_area]административной части[/dwi] сайта.

Документация по теме:

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

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

Управление основными настройками модуля выполняется на странице настройки модуля E-mail-маркетинг (Настройки > Настройки продукта > Настройки модулей > E-mail-маркетинг).

Нажмите на рисунок, чтобы увеличить

На закладке Настройки задаются глобальные настройки параметров модуля, которые определяют:

  • интервалы пошаговой рассылки;
  • методы автоматической отправки ([dw]Агенты[/dw][di] Агент - автоматическая генерация выпусков осуществляется внутренними средствами системы.

    Подробнее об агентах в курсе "Разработчик Bitrix Framework"... [/di] или [dw]Крон[/dw][di] Крон - используется при установке системы на сервер под управлением ОС Unix (предусматривает использование компьютерной программы cron ОС Unix).

    Подробнее о cron... [/di]);
  • количество потоков при [dw]сборке сегмента рассылки[/dw][di]Большие сегменты могут собираться достаточно долго, т.к. чем больше сущностей в CRM, тем дольше происходит фильтрация нужных адресов. Для оптимизации процесса сборка сегментов осуществляется пошагово. А для ускорения организована многопоточность при сборке.
    Подробнее о сегментах.[/di] и при отправке (если используется отправка на Агентах, то лучше использовать 1 поток, так как отправка в 10 потоков рекомендуется только для запуска через Крон);
  • указание url пользовательских страниц подписки и отписки;
  • адреса автора рассылки и адреса для проверки рассылки.

Примечание: подробное описание каждого параметра приведено в [comp include_settings_email_marketing]пользовательской документации[/comp] по модулю E-mail маркетинг.


На закладке [dw]Доступ[/dw][di][/di] настраиваются уровни прав доступа к модулю для групп пользователей сайта. С помощью ссылки Добавить право доступа создаются дополнительные уровни доступа к модулю для конкретных групп.

Важно! [ds]добавлять компоненты[/ds][di] Чаще всего (если не всегда) периодическая рассылка должна каждый раз содержать уникальный контент.

Для этого в системе есть компоненты, которые могут отправлять периодически новый контент в письмах. Соответственно, клиенты всегда будут получать, например, свежие новости, новинки товаров и т.п.

Подробнее...[/di] в рассылку могут только те группы пользователей, у которых в [ds]уровне доступа[/ds][di] Уровни доступа — определенный комплекс операций в системе, доступный для выполнения пользователем. Они предназначены для создания системы управления пользователями. Уровни доступа определяются администратором и могут быть как изменены, так и созданы. Обладают свойством "наследования", то есть если для текущего раздела/страницы явно не задан уровень прав, тогда устанавливается то право, которое задано для вышележащего раздела.

Подробнее...[/di] к Главному модулю отмечена операция [dw]Ограниченная модификация шаблонов.[/dw][di] [/di]



Текстовая версия письма

Начиная с версии 17.5.12 появилась возможность автоматически создавать текстовую версию письма. Для этого надо использовать опцию Генерировать текстовую версию для html-писем, расположеную во вкладке Настройка параметров email и СМС в настройках Главного модуля.

Текстовая версия – вариант вашего письма, который показывается подписчику, если HTML-версию отобразить невозможно. В ней отсутствуют изображения, шрифты, стили и любое другое форматирование. Единственное общее у этих версий – они содержат кликабельные ссылки.

Пользователь может сознательно использовать только текстовый вид получаемой корреспонденции, либо использовать текстовые почтовые клиенты. Подсчитать процент таких пользователей невозможно, так как в текстовой версии отсутствует основной инструмент определения открытий - пикселя (пиксель — это служебная картинка размером 1х1, незаметная для читателя, по количеству обращений к которой определяется показатель открытий сообщения).

Вид письма в HTML и текстовой версии

Однако пренебрегать такими пользователями не стоит. Тем более что с использованием опции главного модуля Генерировать текстовую версию для html-писем формирование текстовой версии происходит автоматически, без дополнительных усилий со стороны маркетолога или верстальщика.

Создание двух вариантов писем позволит не терять таких получателей и повысить число реально дошедших до пользователей писем, так как некоторые спам-фильтры негативно реагируют на письма только с одной, HTML, версией.

Функционал текстовой версии позволяет использовать:

  • ссылки, отслеживая показатель кликов;
  • теги персонализации, подставляя в письмо имя, город подписчика или дату отправки;
  • условия динамического контента, показывая различные части текста для пользователей, удовлетворяющих определенным критериям;
  • данные из таблиц, информируя покупателей о составе и сумме заказа;
  • даже программирование в письмах, к примеру, подсчитывая «на лету» сумму бонусов.

Триггерные рассылки

Триггерная рассылка - это последовательность писем, которые отправляются сайтом автоматически в ответ на действие пользователя или после наступления некоторого события, связанного с пользователем. Инструмент используется для возвратов покупателей в магазин и повторных покупок.

Триггерные рассылки относятся к модулю Email-маркетинг (sender).

Задачи, которые решают триггерные рассылки:

  • Повышение конверсии магазина;
  • Удержание существующей клиентской базы;
  • Увеличение среднего чека;
  • Экономия ресурсов;
  • Эмоциональные коммуникации с клиентами.

Пример триггерной рассылки

Покупатель отложил товар в корзину и не сделал заказ. Товар пролежал в корзине более указанного в настройках рассылки Брошенная корзина [dw]срока[/dw][di][/di] и тут сработает триггер и владельцу корзины уйдёт заданная [dw]последовательность писем[/dw][di][/di] с заданным интервалом.

Примечание: Работу с триггерными рассылками выполняет контент-менеджер, описание работ дано в курсе [dw]Продвижение сайта и Маркетинг[/dw][di]Список рассылок в административном разделе размещён по пути Маркетинг > Триггерные рассылки.
Подробнее...[/di]. .



Баннерная реклама

Система Битрикс позволяет организовать показ баннеров на сайте, подключив код внешней баннерной системы, либо за счет внутренней ротации баннеров в пределах сайта.

Типовой порядок работ

Общий порядок работ по включению показа и ротации баннеров следующий:
  • Настройка модуля Реклама, баннеры;
  • Задание прав доступа для администратора рекламы, менеджера баннеров и рекламодателя;
  • Размещение и настройка компонента Баннер (bitrix:advertising.banner) в шаблоне дизайна или непосредственно на странице сайта;
  • Создание контракта и настройка его параметров;
  • Создание типа баннера;
  • Создание баннера и настройка параметров его таргетинга.

При запуске баннера в ротацию нет необходимости выполнять все указанные действия. Например, если нет необходимости в отчете за показ баннеров перед рекламодателем, можно не создавать контракт, а организовать показ в рамках встроенного контракта по умолчанию.

Примечание: Все работы по управлению контрактами и баннерами производятся только в административном разделе системы. Описание этих работ представлено в курсе Продвижение сайта и Маркетинг.

Документация по теме:



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

Настройка модуля производится на странице Настройки > Настройки продукта > Настройки модулей > Реклама, баннеры:

Нажмите на рисунок, чтобы увеличить

Основные настройки модуля

На первой закладке часть полей предназначена для задания параметров отображения графиков показа. Значение этих полей ясно из названия. Разберем остальные поля:

  • Не использовать ограничения контрактов при показе баннера – флажок, установленный в этом поле, позволяет показывать баннеры с учетом только ограничений самого баннера. Этот способ рекомендуется для несложных проектов, когда баннеры – не средство зарабатывания денег на показе чужих баннеров.
  • Не фиксировать показы всех баннеров – система не будет вести статистику показа вообще.
  • Сколько дней хранить динамику по баннерам? – указание числа дней, в течение которых статистика показа баннеров будет храниться в системе.
  • На сколько дней запоминать, что посетитель посмотрел тот или иной баннер – система будет запоминать, посмотрел пользователь указанный баннер или нет. Опция нужна для настройки ограничений показа баннера одному посетителю.

Значение параметра Подкаталог для хранения загруженных баннеров лучше не менять без особой и осознанной необходимости.

Настройка доступа

Предоставление прав доступа к модулю выполняется соответственно на закладке [dw]Доступ[/dw][di][/di]. Для работы с рекламой на сайте предусмотрены специальные неизменяемые уровни доступа:

  • Рекламодатель имеет доступ к меню и административным файлам. Он управляет только теми контрактами и принадлежащим им баннерами (создает, редактирует, удаляет), на которые у него есть соответствующие права. Также Рекламодатель сможет видеть статистику контракта/баннеров. Этот уровень прав используется для групп рекламодателей, размещающих свои баннеры на вашем сайте.
  • Менеджер баннеров – доступ к управлению всеми баннерами системы (вне зависимости от контракта).
  • Демо-доступ – ознакомительный доступ. Пользователь видит все контракты, типы баннеров, баннеры, может строить любые графики, но без права модификации чего-либо. Предназначается для ознакомления потенциальных рекламодателей с системой контроля за показом баннеров.
  • Администраторы рекламы – полный доступ, без каких-либо ограничений.

Назначайте необходимые права доступа группам пользователей и разделяйте обязанности и права сотрудников проекта и рекламодателей.

Документация по теме:



Размещение компонента

Создаём рекламную область

Согласитесь, что рекламные баннеры должны как можно гармоничнее вписываться в дизайн сайта. Тщательно продумайте место их размещения еще на этапе работы над дизайном. Чаще всего для баннеров выделяется специальная рекламная область непосредственно в шаблоне сайта. Но все же в некоторых ситуациях рекламный баннер размещается непосредственно на странице:

Рекламная область - область на сайте, в которой выполняется показ баннеров.

Число рекламных областей ничем не ограничено. В одной из них поочередно может отображаться неограниченное количество баннеров, в зависимости от настроек Контракта или Баннера.

Как создать рекламную область на сайте?

Рекламная область создается с помощью компонента Баннер (bitrix:advertising.banner). Компонент расположен в разделе Сервисы > Реклама панели Компоненты визуального редактора. Так, если баннер должен показываться только на отдельной странице, то компонент разместите непосредственно на этой странице. В случае создания общей рекламной области компонент разместите в шаблоне дизайна сайта.

Настройки компонента производятся после создания Типа баннера и самих Баннеров в системе.

Документация по теме:



Ключевые слова: настройка свойств страницы

В уроке мы поговорим с вами о настройке [ds]ключевых слов для рекламы[/ds][di]Одна из форм таргетинга рекламы на сайте – это управление показом баннеров с помощью ключевых слов. Особенность данного метода заключается в том, что он позволяет организовать рекламную кампанию, направленную на четко определенную целевую группу пользователей сайта.

Подробнее в курсе Продвижение сайта и маркетинг.[/di]. Задание ключевых слов возможно для любой страницы сайта, главное – это предусмотреть место для ввода этих слов.

  Настройка ключевых слов

Для управления показом баннеров необходимо провести некоторые дополнительные настройки системы. Для показа в Рекламной области конкретный Баннер может выбираться из общего списка по ключевым словам: желательным или обязательным. Задание таких ключевых слов возможно для любой страницы сайта.

В коде системы предусмотрено одно специальное свойство страницы: adv_desired_target_keywords. Оно отвечает за желаемые ключевые слова.

А также есть два метода добавления ключевых слов:

  • SetDesiredKeywords – для добавления желательных ключевых свойств;
  • SetRequiredKeywords – для добавления обязательных ключевых слов.

Свойство станет доступно в форме настройки свойств страницы, если заранее выполнить небольшие настройки модуля Управление структурой (это рекомендуемый способ). А с помощью методов для страницы получится задать, как желаемые, так и обязательные ключевые слова, модифицируя код конкретной страницы (этот способ для разработчиков).

Важно знать! Если желательные и обязательные слова не реализованы ни одним из перечисленных способов, то показ баннеров может быть осуществлен по стандартному свойству страницы Ключевые слова. Слова, перечисленные в этом свойстве, будут считаться желательными.

  Видеоурок

  Способ №1 (рекомендуется)

Первый способ реализуется настройками в Административной части сайта. Но даёт возможность ввода только желательных слов.

Для создания поля в окне настройки страницы:

  • Перейдите на страницу Настройки > Настройки продукта > Настройки модулей > Управление структурой;
  • В группе параметров Настройки для сайтов в полях Типы свойств впишите тип свойства adv_desired_target_keywords и дайте ему понятное название. Например, «Желательные ключевые слова для рекламы»:

  • Сохраните внесенные данные и перейдите в публичный раздел;
  • Откройте форму редактирования свойств страницы. Там вы должны увидеть добавленное поле для ввода ключевых слов:

Теперь любой пользователь, у которого есть доступ к редактированию страницы, сможет указать для неё желательные ключевые слова. Например, это актуально для Контент-менеджеров.

  Способ №2 (для разработчиков)

Методы добавления ключевых слов достаточно добавить в код страницы с перечислением ключевых слов. Для этого откройте страницу на редактирование в режиме PHP кода. Примеры кода:

  • Для желательных ключевых слов:
    CAdvBanner::SetDesiredKeywords (array("partners", "cooperation", "Contacts"), "RIGHT");
  • Для обязательных ключевых слов:
    CAdvBanner::SetRequiredKeywords (array("partners", "cooperation"));

Методы содержат следующие параметры:

  • keywords – одно или несколько ключевых слов страницы. Перечисляются в кавычках и через запятую;
  • TYPE_SID – тип баннера, для которого будут заданы ключевые слова. Если данный параметр оставить пустым, то ключевые слова будут заданы для всех типов баннеров.

Примечание. Следует отметить, что параметр keywords может включать в себя и более сложные конструкции. Подробнее об этом описано в документации по методам SetDesiredKeywords и SetRequiredKeywords.

  Заключение

Итак, вы узнали о способах задания ключевых слов для показа рекламы. Проще и удобнее использовать первый способ с готовым свойством. Но если на сайте потребуется использование обязательных ключевых слов – воспользуйтесь вторым способом.



Вывод нескольких тизеров в верхней части сайта

Немного теории

Тизер (от англ. teaser – дразнилка) – разновидность баннера, определённым образом настроенная под дизайн сайта. Например, на сайте СМИ тизером может быть «горячая новость» – баннер с вызывающим заголовком. Обычно он используется как инструмент для рекламы собственных материалов, разделов и сервисов веб-проекта.

«Ушки» – тизеры, которые располагаются в ряд в верхней части страницы. Чаще всего они применяются на новостных сайтах и содержат анонсы свежих статей или горячие новости.

Пример вывода

Для вывода навигационных «ушек» в верхней части сайта, при условии, что на странице не должно быть двух одинаковых «ушек», следует выполнить последовательный вызов рекламы одного типа, при котором возвращаются еще не показанные баннеры, например:

$aEarsAdv = array();
if(CModule::IncludeModule("advertising"))
{
   for($i=0; $i<3; $i++)
   {
      $sAdv = CAdvertising::GetAdv("EARS");
      if(!empty($sAdv))
         $aEarsAdv[] = $sAdv;
      else
         break;
   }
} 

После чего следует осуществить вывод «ушек» из массива.



Проверьте себя

Ответьте на несколько вопросов по теме Маркетинг, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Количество писем для рассылки за один запуск при отправке с помощью Агента или Крона задается в настройках модуля E-mail маркетинг
Верно
Неверно
2 Для отправки письма в ответ на какое-либо действие пользователя используется триггерная рассылка.
Верно
Неверно
3 Для создания на сайте рекламной области компонент Баннер необходимо разместить в шаблоне сайта.
Верно
Неверно
4 Для показа в Рекламной области конкретный Баннер выбирается из общего списка по ключевым словам.
Верно
Неверно
5 Чтобы использовать свойство adv_desired_target_keywords, нужно добавить его в типы свойств в настройках модуля «Управление структурой».
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. Выберите поисковые системы Yahoo и Yandex для анализа:

    Решение

  2. Задайте Количество писем для рассылки кроном за один запуск 300

    Решение

  3. Задайте адрес для подписки - podpiska и для отписки - otpiska.

    Решение

  4. Разместите компонент Баннер на главной странице сайта.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Менеджер идей

Менеджер идей (второе название Есть идея!) — это сервис, позволяющий предложить свою идею для развития бизнеса компании, оценить идеи своих коллег. Каждая идея имеет свой рейтинг, который строится на основе мнения сотрудников компании.
Для удобства поиска в Менеджере идей все идеи сортируются по категориям и статусам.

Работа с модулем в публичной части описана в курсе Контент-менеджер.

Возможности Менеджера идей

Возможности модуля Менеджер идей

Модуль позволяет:

  • Добавлять [dw]новые идеи[/dw][di] [/di] и прикреплять файлы.
  • Располагать на сайте [dw]всплывающую форму добавления идеи[/dw][di][/di]. Требуется установка [dwi include_component]компонента[/dwi] Форма добавления идеи (popup).
  • Добавлять категории для удобной сортировки идей.
  • Просматривать предложенные идеи в зависимости от интересующей категории и комментировать их.
  • Голосовать за понравившуюся идею и выводить рейтинги.

Документация по теме:


Создание сервиса

Менеджер идей настраивается и работает через [dwi include_component]компонент[/dwi]

Сами идеи, как и комментарии к ним, функционируют на основе [dwi include_blog]блогов,[/dwi] а категории идей являются разделами соответствующего [dwi include_iblock]инфоблока [/dwi]. Поэтому необходимо сначала создать соответствующий блог, а далее создать инфоблок и подключить в публичной части компонент.

Настройки Блога, выполняемые Администратором сайта.

  • Если комментирование будущих Идей разрешается, то:
    • на закладке [dw]Параметры блога[/dw][di] [/di] отметьте опцию Разрешить комментарии в блоге
    • на закладке [dw]Права на доступ[/dw][di]В нашем примере все посетители сайта могут читать идеи и оставлять комментарии, однако новые идеи
      могут предлагать только авторизованные посетители:

      [/di] настройте права доступа к блогу, чтобы пользователи могли создавать идеи и комментировать их.

  • По умолчанию модерировать сервис Менеджер идей (Есть идея!) могут только пользователи группы Администраторы. Чтобы разрешить другим группам пользователей модерировать сервис, необходимо в настройках прав доступа к блогу идей задать уровень Администрирование к сообщениям и комментариям для авторизованных посетителей.

    Конкретную же группу лиц, имеющих право модерировать сервис, указывает Контент-менеджер в настройках комплексного компонента идей (bitrix:idea) в параметре [dw]Группы пользователей, которые могут добавлять специальный ответ[/dw][di] [/di]

  • Чтобы пользователи смогли голосовать за идеи, необходимо в административной части (Сервисы > Рейтинги > Список рейтингов, Рейтинг) во вкладке Блог отметить [dw]пункты[/dw][di] [/di]:
    • Голосование за сообщения пользователя в блогах
    • Голосование за комментарии пользователя в блогах

    Подробнее с настройками рейтинга можно ознакомиться в уроке Рейтинги (курс Администратор. Базовый)

Подробнее о создании и управлении Менеджером идей можно ознакомиться в уроке Менеджер идей (курс Контент-менеджер)


Создание и редактирование статусов

Создание и редактирование статусов

Каждой предложенной идее присваивается свой статус. Статус - характеристика объекта, отражающая его состояние в настоящий момент. В модуле Менеджер идей статус служит идентификатором этапа, на котором сейчас находится идея. По умолчанию задано [dw]три типа статусов[/dw][di] [/di]:

  • новые
  • в работе
  • внедрено
Эти статусы при желании можно легко отредактировать, либо не менее легко создать новые (это делает Администратор сайта).
Давайте добавим новый статус:

  1. Перейдите на страницу Пользовательские поля (Настройки > Настройки продукта > Пользовательские поля)

  2. В закладке Список откройте форму редактирования пользовательского поля UF_STATUS. С помощью кнопки Еще добавьте новую строку и заполните строки Значение и XML_ID:

  3. Сохраните внесенные изменения.
  4. И в заключении для вступления настроек в силу перейдите в публичную часть сайта на страницу со списком идей и [dw]сбросьте кеш.[/dw][di] [/di]

Проверьте себя

Ответьте на несколько вопросов по теме Менеджер идей, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Для функционирования менеджера идей понадобится создать блог и инфоблок.
Верно
Неверно
2 Модерация сервиса Менеджер идей доступна только Администраторам.
Верно
Неверно
3 В модуле Менеджер идей есть три типа статусов. Изменить их или создавать новые нельзя.
Верно
Неверно
4 Функционал категорий предназначен для удобной сортировки идей.
Верно
Неверно
5 Голосование доступно как за сообщения пользователей, так и за комментарии к ним.
Верно
Неверно



Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. Создайте и настройте блог для менеджера идей c возможностью комментирования. Включите CAPTCHA. Установите права доступа:
    • Права на сообщения: чтение для всех посетителей и запись для авторизованных пользователей;
    • Права на комментарии: запись с премодерацией для всех посетителей и запись для авторизованных пользователей;

    Решение

  2. Настройте возможность голосования за сообщения и комментарии.

    Решение

  3. Добавьте новый статус "Обсуждается" (DISCUSSED) и установите его вторым в списке.

    Решение

По желанию, можете выполнить дополнительное задание для проверки результатов настроек (понадобятся знания из курса Контент-менеджер):

  • Добавьте категории для идей и разместите компонент Идеи в публичном разделе, указав блог и инфоблок. Теперь проверьте работу настроек из предыдущих заданий.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Обучение

Модуль Обучение позволяет организовать систему дистанционного обучения. Курс, который вы прямо сейчас видите - тоже результат работы этого модуля.

Создавать обучающие курсы можно как в [dwi include_public_area]публичном[/dwi] разделе, так и в [dwi include_admin_area]административном.[/dwi] В данном курсе вы узнаете о том, какие действия можно выполнить из административного раздела. Выполнение операций из публичного раздела описано в курсе Контент-менеджер.

Основные понятия

Возможности модуля Обучение

Администратор в модуле Обучение может выполнять следующие задачи:

  • Создавать и редактировать курсы *;
  • Создавать и редактировать главы и уроки *;
  • Привязывать главы и уроки (и даже целые курсы) к разным курсам *;
  • Составлять вопросы к тестам для самопроверки *;
  • Создавать итоговые тесты *;
  • Настраивать модуль;
  • Экспортировать/импортировать курсы;
  • Контролировать прохождение итоговых тестов;
  • Создавать учебные группы для отдельного обучения.

* - данные функции также может выполнять [ds]Контент-менеджер[/ds][di] В главе описан функционал, который может выполнять контент-менеджер из публичного раздела сайта.

Подробнее...[/di] из публичного раздела.

Основные понятия

Курс - организованная и логически завершенная последовательность страниц, содержащих информацию о некоторой предметной области.

Чаще всего по итогам курса проводится тестирование, призванное проверить уровень знаний обучающихся (пользователей, прошедших курс).

Стандартный курс включает следующие элементы:

  1. Главы – тематические (смысловые) разделы и подразделы курса. Каждая глава может включать неограниченное количество дочерних элементов (подразделов и уроков), а также относиться к нескольким родителям (главам или курсам).
  2. Уроки – информационное наполнение курса. Урок может входить в состав одной или нескольких глав или курсов (без привязки к главам). Каждый урок представляет собой отдельную страницу.
  3. Вопросы – вопросы для проверки пройденного материала, создаются как отдельные объекты. Созданные вопросы можно использовать для двух типов проверочных тестов:
    • тесты для самопроверки;
    • итоговые тесты.

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

Данные о результатах тестирования пользователей хранятся в журнале Результаты обучения. Результат – это запись с количеством баллов, набранных пользователем при прохождении теста. Результат определяется по итогам самой успешной из предпринятых пользователем попыток прохождения теста.

Если результаты тестирования определяются автоматически, то для каждого результата выводится сообщение, сигнализирующее, является ли тест пройденным или нет.

Курсы, созданные с использованием модуля Обучение, могут быть экспортированы во внешний файл для последующей загрузки на другие проекты, работающие на базе системы Bitrix Framework. Операции экспорта и импорта выполняются с помощью специальных механизмов модуля.

Документация по теме:



Настройки модуля Обучение

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

Модуль Обучение настраивается в Административной части на странице Настройки > Настройки продукта > Настройки модулей > Обучение

Нажмите на рисунок, чтобы увеличить

Значение полей формы настройки понятны из названий. Дадим некоторые пояснения:

  • Использовать визуальный редактор - включается возможность использовать [ds]визуальный редактор[/ds][di] В любой работе важен хороший инструмент. "1С-Битрикс: Управление сайтом"
    обладает мощным встроенным WYSIWYG редактором для работы со страницами сайта.
    С его помощью мы способны редактировать любую информацию на сайте.

    Визуальный редактор позволяет работать с:
    - текстом;
    - графикой и видео;
    - компонентами и сниппетами.

    Подробнее...[/di] при создании/редактировании глав и уроков.
  • Количество курсов, выводимых в меню, устанавливается любое, но учтите, что длинный список в административном меню не удобен для поиска. Если курсов много, то рекомендуем с помощью значений полей Сортировка вывести на верх списка самые используемые, а само число отображаемых в меню курсов сделать не более 20.
  • Если публичные компоненты курсов на проекте расположены не в стандартном разделе /learning/, то перенастройте пути к нужному разделу. Это делается в полях Шаблоны путей к публичной части курсов. Настройка задаётся для каждого сайта по отдельности.
    Кроме переназначения путей скопируйте файл search.php из папки /bitrix/modules/learning/install/public/site/ru модуля в директорию, где размещена публичная часть модуля.

  Права на доступ

На вкладке Права на доступ задаются уровни прав для всех групп пользователей, которые должны работать с учебным курсом или иметь возможность его просмотреть:

Примечание: Для посетителей сайта проверяются только права на курс (если курс доступен посетителю на просмотр, то ему будут также доступны все главы и уроки этого курса, независимо от установленных на них прав).

Документация по теме:


Экспорт\импорт курсов

Используя средства системы, можно выполнить экспорт и/или импорт учебного курса в формате .tar.gz. Причем, если для курса созданы вопросы и итоговые тесты, то они также экспортируются (импортируются). Это очень удобно при перемещении курсов с сайта на сайт (например, со старого сайта нужно перенести обучающий курс на новый сайт).

  Экспорт курса

Экспорт курса выполняется с помощью специальной формы, расположенной на странице Выгрузка курса (Сервисы > Обучение > Экспорт).


С помощью выпадающего списка выберите учебный курс, который необходимо выгрузить, и нажмите кнопку Далее. Откроется следующий шаг процедуры экспорта.

Укажите [dw]имя файла[/dw][di] [/di] данных курса и нажмите кнопку Начать выгрузку.

Система выполнит выгрузку курса и выведет [dw]сообщение о завершении экспорта.[/dw][di] [/di]

Теперь вы можете, например, загрузить курс с локальной установки продукта на ваш Bitrix Framework.

Примечание: При экспорте курса происходит изменение имен файлов картинок, загруженных в систему, в папку /upload. К существующим именам и в названии самой картинки, и в уроке (в коде вызова этой картинки) добавляется префикс из пяти случайных знаков и разделитель. Пример измененного имени файла: 6or1P.bitrix_blog.png. Это не влияет на правильность отображения картинки в уроке.

  Импорт курса

Процедура импорта курса также выполняется в несколько шагов с помощью формы, расположенной на странице Загрузка курса (Сервисы > Обучение > Импорт).


С помощью кнопки Открыть укажите имя и путь к [ds]загружаемому файлу[/ds][di]Файл с архивом может быть загружен на сайт заранее, а может быть загружен в процессе импорта учебного курса.

Подробнее ...[/di] данных. В поле Сайты отметьте те сайты, к которым должен быть привязан загружаемый курс. Если импортируется курс в формате [ds]SCORM[/ds][di] SCORM (англ. Sharable Content Object Reference Model, «образцовая модель объекта
содержимого для совместного использования») — сборник спецификаций и стандартов, разработанный
для систем дистанционного обучения. Содержит требования к организации учебного материала и всей
системе дистанционного обучения.

SCORM позволяет обеспечить совместимость компонентов и возможность их многократного
использования: учебный материал представлен отдельными небольшими блоками, которые могут
включаться в разные учебные курсы и использоваться системой дистанционного обучения независимо
от того, кем, где и с помощью каких средств они были созданы. SCORM основан на стандарте XML.

Подробнее...[/di], установите флажок в соответствующем поле. Нажмите кнопку Загрузить данные. Система выполнит загрузку курса и выведет [dw]соответствующее сообщение.[/dw][di] [/di]

Примечание: На данный момент поддержка формата SCORM реализована не полностью. В текущей версии после импорта работает только просмотр курсов с публичной части. Мы планируем дальнейшую реализацию формата, но полноценной работы с курсами в формате SCORM как с курсами, созданными вручную, не будет, это связано с особенностями формата.

  Документация по теме




Результаты обучения

Результаты обучения можно оценить с помощью соответствующих страниц в разделе Обучение (Сервисы > Обучение) Административного раздела сайта:

  Попытки прохождения тестов

По итогам курса пользователям можно предложить пройти один или несколько тестов для проверки полученных знаний. Попытки прохождения тестов фиксируются на странице Попытки (Сервисы > Обучение > Попытки):


  Результат прохождения теста

Результат прохождения теста (по итогам наиболее результативной попытки) отражается на странице Журнал (Сервисы > Обучение > Журнал):

Если тест проверяется не автоматически, то в журнале выводится только количество набранных баллов.

Если включен Контроль неправильных ответов, то прохождение теста завершится при первом же неверном ответе.

В параметрах теста можно задать число попыток прохождения. С помощью поля Дополнительные попытки добавляются попытки конкретному пользователю в конкретном тесте:

  1. С помощью фильтра найдите нужного учащегося и тест;
  2. Поставьте флажок в первой колонке и в панели действий выберите команду Редактировать. Все поля, в которых допустимо редактирование данных, станут активными.
  3. Добавьте нужное число попыток в поле Дополнительные попытки и сохраните изменения.

  Сертификация

На странице Сертификация (Сервисы > Обучение > Сертификация) размещается список обучаемых, успешно сдавших все итоговые тесты учебного курса, а также общая статистика сдачи тестов:

С сертификатами можно выполнить следующие [dw]действия:[/dw][di] [/di]

  • активировать/деактивировать
  • изменить данные
  • удалить

Примечание: [dw]Список[/dw][di] [/di] пройденных и непройденных курсов текущего пользователя можно вывести в публичном разделе сайта с помощью компонента [comp include_63245]Отчет по курсам[/comp].

Штатно в модуле Обучение не предусмотрен механизм генерации файлов цифровых сертификатов о прохождении учебного курса.

  Пример работы со статистикой

Допустим, мы хотим понять, какой материал хуже всего усвоен тем или иным учащимся.

Выполним следующие несложные действия:

  1. На странице Список попыток с помощью фильтра находим результаты нужного пользователя и нужного теста:

  2. В отдельных вкладках браузера открываем результаты прохождения каждого теста. Результаты открываются по клику на ссылку в колонке Вопросов.
  3. В каждой открывшейся вкладке сортируем вопросы кликом по колонке Верно отвечен, таким образом, чтобы наверху оказались неверно отвеченные вопросы.
  4. Сравниваем результаты и ищем закономерности:

  5. Важно! Если курс был деактивирован, то результаты тестов и сертификаты по этому курсу будут недоступны пользователям. Если курс был удален, то результаты тестов и сертификаты этого курса будут также удалены.



Учебные группы

Начиная с версии 14.0.0 модуля Обучение доступен функционал учебных групп, позволяющий контролировать процесс обучения. Теперь в системе не нужно создавать группы пользователей, которые имели бы доступ к тем курсам, по которым проводится отдельное обучение. Для таких курсов создается учебная группа, в которой указываются время ее работы, доступность материалов в процессе изучения курса и список обучающихся пользователей.

Важно! Если участник учебной группы входит в некоторую группу пользователей, которая обладает правом на курс не ниже Просмотр, то ему всегда будет доступен весь этот курс независимо от настроек учебной группы.

Создание учебной группы

Допустим, что курс, по которому будет проводиться отдельное обучение, уже создан и недоступен для обычных пользователей (иначе весь смысл учебной группы теряется). Теперь можно приступить к созданию и настройке учебной группы.

Перейдите на страницу Список учебных групп (Сервисы > Обучение > Учебные группы) и нажмите кнопку Добавить. Откроется форма следующего вида:

  • Обязательно в соответствующих полях укажите название учебной группы и выберите учебный курс, по которому будет проходить обучение.
  • В поле Период активности задайте временной интервал, в течение которого будет доступен курс для изучения, а также отметьте опцию Запись активна, чтобы обучение могло осуществляться.
  • В поле Состав учебной группы укажите пользователей, которые будут проходить обучение в рамках данной группы.

На закладке Доп. поля можно заполнить имеющиеся пользовательские поля для рабочих групп или перейти к добавлению новых.

Примечание: подробное описание каждого поля представлено в документации по продукту.

Нажмите кнопку Применить, чтобы получить доступ к настройкам графика открытия разделов курса и продолжить редактирование учебной группы. Если вам не требуется настройка графика или вы хотите сделать это позднее, то нажмите Сохранить.

Настройка графика открытия разделов курса выполняется для всех глав/уроков верхнего уровня:

Для каждой главы (урока) указывается, через сколько дней после начала обучения она станет доступной. После того, как график составлен, не забудьте сохранить настройки учебной группы.

В результате до наступления начала обучения курс будет недоступен для пользователей, а затем [dw]откроется в соответствии с настройками графика.[/dw][di] [/di]



Создание и редактирование курса

Все операции по созданию и редактированию курсов можно выполнять как из [dwi include_public_area]публичного[/dwi] раздела при включенном режиме Правка, так и из [dwi include_admin_area]административного[/dwi] раздела.

Формы создания курсов, уроков, тестов и вопросов идентичны для публичной и административной частей. В данной главе будет рассмотрена работа с курсом из административной части. Выполнение операций из публичного раздела описано в курсе Контент-менеджер.

Курсы

Создание курса

Управление учебными курсами в Административном разделе осуществляется на странице Сервисы > Обучение > Курсы:

Для добавления нового курса служит кнопка Добавить курс, расположенная на контекстной панели. Переход к редактированию существующей записи осуществляется с помощью меню действий (пункт Изменить).

Форма создания/редактирования состоит из нескольких закладок:

  1. На закладке Курс задаются основные параметры.


    А также можно настроить рейтинг на страницах курса (опции Включить рейтинг и Вид кнопок рейтинга).

    Важно! Если курс был деактивирован, то результаты тестов и сертификаты по нему будут недоступны пользователям. Если курс был удален, то результаты тестов и сертификаты по нему будут также удалены.

  2. На закладке Анонс задается описание для анонса, которое отображается на странице со списком курсов.
  3. Подробное описание, которое отображается на странице детального просмотра курса, задается на закладке Подробно.
  4. На закладке Права доступа выполняется настройка прав доступа пользователей и групп пользователей к курсу (подробную информацию об уровнях прав доступа смотрите в документации по продукту).


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

    Настройка прав доступа некоторым другим пользователям и группам пользователей выполняется с помощью ссылки Добавить. По ее нажатию открывается [dw]окно выбора пользователей и групп.[/dw][di] [/di]

    Выберите пользователей или группы, для которых настраиваются права доступа, и задайте для них нужный уровень прав.

    Примечание: Обычно при создании курса доступ к нему предоставляется только для тех групп, пользователи которых осуществляют создание. После того, как курс готов, его делают доступным для всех необходимых групп пользователей.
  5. На закладке Доп. поля можно задать иконку для курса, добавить файлы к материалам, указать, за сколько дней предупреждать о закрытии курса и прекращать тестирование и т.д.
  6. В форме редактирования доступна еще одна закладка - Связи:

    На данной закладке указываются все взаимосвязи: какие главы, уроки или, может быть, целый курс содержится в текущем курсе (т.е. выбираются дочерние элементы), а также включен ли этот курс в какой-нибудь другой курс/главу (т.е. выбираются родительские элементы). Привязка осуществляется с помощью ссылки Добавить элемент.

    Примечание: Курсы, главы и уроки могут быть как родительскими, так и дочерними элементами по отношению друг к другу.

Документация по теме:



Главы и уроки

Начиная с 12-ой версии продукта, курсы, главы и уроки могут быть как родительскими, так и дочерними элементами по отношению друг к другу, т.е. доступна возможность привязки к любым уже имеющимся в системе главам и курсам.

При этом один и тот же урок может быть привязан к нескольким главам разных курсов. Это очень удобно, когда у вас есть несколько курсов на схожие тематики. Можно создать один урок с общей для всех курсов информацией и привязать его сразу ко всем этим курсам. Как пример – урок [dw]"Как отформатирован текст в курсе",[/dw][di] [/di] который прикреплен ко всем обучающим курсам «1С-Битрикс». И когда вы правите этот урок в одном из курсов, то текст правится сразу во всех курсах, к которым он прикреплен.

Когда создается новая глава, она считается просто уроком. И только тогда, когда в нее будет добавлен хотя бы один урок, она становится полноценной главой. Аналогично, если некоторый урок А сделать вложенным в урок Б, то урок Б становится главой. Если же из главы удалить единственный урок, то она превращается в урок.

Процесс создания

Прежде чем приступить к созданию главы (урока), необходимо перейти в тот раздел курса, где она (он) должна находиться:

  • если в верхнем уровне курса, то перейдите на страницу Сервис > Обучение > Курсы;
  • если в некоторой главе курса, то перейдите на страницу Сервис > Обучение > Курсы > название_главы.

Примечание: В продукте доступна возможность создания свободных, ни к чему не привязанных глав и уроков. Это можно выполнить со страницы Список всех уроков (Сервис > Обучение > Список всех уроков) с помощью кнопки Добавить главу/урок. Привязка к курсу или главе может быть выполнена позже с помощью настройки связей.

Перейти к созданию главы или урока курса можно с помощью кнопки Добавить главу/урок, расположенной на контекстной панели, либо с помощью ссылки [+], расположенной в столбце Всего глав (или Всего уроков):

Примечание: Ссылка [+] встречается не только в списке глав/уроков. Она встречается и в других списках системы. Означает она то, что с её помощью можно создать ещё один элемент той или иной сущности.

В форме создания главы/урока указываются:

  • основные параметры, среди которых обязательно задается название (как оно будет отображаться в меню курса в административном и публичном разделах);
  • краткое описание и детальное содержание на закладках Анонс и Содержание соответственно;
  • дополнительные поля на закладке Доп. поля.
Внимание! При установке галочки "Не публиковать" данная глава/урок не будет отображаться в списке уроков курса при настройке тестов и к ней невозможно будет привязать тест. Нужно сначала задать такую привязку и лишь затем снимать отметку "Не публиковать".

Примечание: Полное описание формы создания и редактирования представлено в документации по продукту.

После сохранения урок (или будущая глава) будет добавлен в [dw]общий список[/dw][di] [/di] соответствующего уровня.

Процесс создания урока на этом полностью завершен. Для создания полноценной главы необходимо повторить описанный выше процесс по созданию урока внутри создаваемой главы (либо в форме редактирования главы добавить ей дочерние элементы).

Переход к редактированию осуществляется с помощью меню действий (пункт Изменить). В форме редактирования дополнительно доступны две закладки: Связи и Права доступа. Сначала рассмотрим подробно закладку Связи:

В списке родительских элементов указываются курсы/главы, к которым принадлежит редактируемая глава/урок, а в списке дочерних – главы и уроки, включенные в текущую главу (урок).

Чтобы привязать редактируемую главу/урок к другим курсам/главам или, наоборот, включить в неё имеющиеся в системе элементы, выполните следующие действия:

  1. Нажмите на соответствующую ссылку Добавить элемент. Откроется окно со списком всех имеющихся в системе курсов, глав и уроков.
  2. Выберите необходимый элемент с помощью меню действий (пункт Выбрать) или двойного клика по соответствующей записи.

Созданная связь отобразится в форме редактирования.

Статус "Не публиковать" устанавливается для каждого родительского курса отдельно.

Внимание! Один и тот же урок нельзя сделать дочерним несколько раз в рамках одного курса.

Чтобы отвязать главу/урок от какого-нибудь родителя или открепить некоторые вложенные элементы, удалите соответственно запись о родительском или дочернем элементе по кнопке x, расположенной рядом с названием элемента.

На закладке Права доступа для главы или урока можно выполнить отдельную настройку прав доступа пользователей и групп пользователей.

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

Кроме того, права на курс (главу) перекрывают права на вложенные элементы. Например, если пользователям и группам заданы некоторые права на курс (главу), а на вложенные главы и/или уроки установлены меньшие права, то этим пользователям и группам вложенные главы и уроки будут доступны в соответствии с правами на курс (вышележащую главу). Если же на некоторые главы (уроки) заданы большие права, чем на курс (главу), то конечные права на главы (уроки) суммируются.

Настройка прав доступа дополнительным пользователям и группам пользователей выполняется с помощью ссылки Добавить. По ее нажатию открывается окно, в котором выбираются необходимые пользователи и/или группы, а затем для них указываются нужные права доступа.

Документация по теме:



Вопросы

  Процесс создания

В обучающем курсе есть возможность создать вопросы для двух типов тестов:

  • тест для самопроверки
  • итоговый тест

Вопросы можно включать в тот или иной тест.

Вопросы по материалам курса могут быть привязаны непосредственно к курсу (т.е. созданы в самом верхнем уровне), к главам или урокам курса. Вопросы для самопроверки логичнее создавать для урока, чтобы сперва изучить материал, а затем пройти тест для самопроверки.

Перейти к созданию вопроса можно следующими способами:

  • с помощью ссылки "+", расположенной в столбце Вопросов на странице со списком уроков/глав/курсов (Сервисы > Обучение > Курсы> Название курса):

  • с помощью кнопки Добавить вопрос, расположенной на странице со списком всех вопросов определенного урока/главы/курса (Сервисы > Обучение > Курсы> Название курса > Вопросы):

Если вы осуществляете переход с помощью кнопки Добавить вопрос, то следует сразу выбрать тип вопроса:

  • одиночный выбор – в списке предложенных вариантов ответов может быть выбран [dw]только один ответ[/dw][di][/di];
  • множественный выбор – в списке предложенных вариантов ответов может быть выбрано [dw]несколько ответов[/dw][di][/di].
  • сортировка – в списке предложенных вариантов ответов необходимо расставить ответы [dw]в нужном порядке[/dw][di][/di];
  • текстовый ответ – выводится [dw]текстовое поле для самостоятельного ответа[/dw][di][/di] обучаемым.

    Примечание: Для вопросов данного типа доступна возможность отправки письма с ответом преподавателю (т.е. автору) урока. Причем вы можете внести изменения в почтовый шаблон и добавить получателей, которым будет отправляться данное письмо. Оно отправляется по событию NEW_LEARNING_TEXT_ANSWER (Настройки > Настройки продукта > Почтовые события > Типы почтовых событий).

В остальных случаях необходимый тип вопроса указывается в момент создания вопроса с помощью специальной формы создания (редактирования). На закладке Вопрос данной формы указывается текст самого вопроса:

Если вам требуется изменить привязку вопроса к уроку, то в поле Урок нажмите ссылку сменить. Откроется окно выбора главы/урока, к которому вопрос должен быть привязан.

Для включения вопроса в тест для самопроверки (данный тест будет доступен пользователям после изучения материалов урока, указанного в поле Урок) отметьте поле Для самопроверки. В тестах для самопроверки при неправильном ответе можно выводить сообщение, которое указывается в поле Сообщение при неправильном ответе. В итоговых тестах эта опция не работает.

Если на вопрос обязательно нужен правильный ответ, то выберите соответствующую опцию Обязателен правильный ответ. Тогда, если на этот вопрос не был дан правильный ответ, тест считается не пройденным (независимо от количества набранных баллов).
Внимание! В результатах теста не выводится сообщение о том, что не был правильно отвечен вопрос с опцией Обязателен правильный ответ. Поэтому, для удобства пользователей, при создании вопроса рекомендуется в закладке Описание указать, что включена опция необходимости правильного ответа.

К вопросу можно добавить изображение с помощью кнопки Добавить файл.

Закладка Ответы, Описание и Доп. поля

На закладке Ответы указываются варианты ответов:

Примечание: Если необходимо добавить больше четырех ответов, то следует нажать кнопку Добавить ответ для добавления поля ответа.

В поле Сорт. указываются порядок отображения ответов (сортировка будет учитываться, если в тесте, в котором содержится данный вопрос, отключена опция Случайный порядок ответов).

Важно! Не забудьте отметить правильный вариант (варианты) ответа.

Для удаления ответа необходимо нажать кнопку рядом с соответствующей записью.

На закладке Описание можно более подробно описать вопрос, а на закладке Доп. поля заполнить имеющиеся пользовательские поля для вопросов или перейти к добавлению новых полей.

После сохранения вопрос будет добавлен в общий список вопросов урока/главы/курса.


Тесты

Тесты для оценки знаний пользователей создаются на основе вопросов, задаваемых к урокам курса. Главное отличие итоговых тестов от тестов для самопроверки в том, что вся информация об их прохождении строго фиксируется (количество попыток, число набранных баллов и т.д.).

  Тест для самопроверки

Тест для самопроверки служит (как это уже понятно из названия) для проверки обучающимся того, как он усвоил материал. Это не итоговая проверка знаний, а промежуточная, без сбора информации о прохождении конкретных пользователей.

Тест для самопроверки генерируется автоматически из созданных вопросов, если у них при создании было отмечено поле Для самопроверки.

По этой ссылке откроется вопрос для самопроверки:

Важно! Тест для самопроверки будет удален тогда, когда не останется ни одного вопроса с пометкой Для самопроверки.

  Итоговый тест

Управление итоговыми тестами курса осуществляется на странице Тесты (Сервисы > Обучение > Курсы > название_курса > Тесты):

Для создания нового теста служит кнопка Добавить тест, расположенная на контекстной панели. В открывшейся форме необходимо задать параметры теста. Параметры сгруппированы по назначению:

  1. Добавление вопросов в тест выполняется на основе параметров, указанных в поле В тесте участвуют. Уроки и подуроки могут быть выбраны из списка, только если они активны и в их параметрах не отмечена опция "Не публиковать".
  2. По умолчанию вопросы, участвующие в тесте для самопроверки, не включаются в проверочный тест. Чтобы включить данные вопросы в тест, нужно отметить соответствующую опцию.
  3. Настройки теста позволяют определить порядок вывода вопросов и ответов на них.
  4. Возможно ограничение количества попыток и времени, предоставляемых пользователю на одну попытку и между попытками.
  5. Чтобы проверка результатов теста выполнялась автоматически (т.е. для того чтобы в журнале выводилось сообщение, является ли тест пройденным или нет), нужно отметить соответствующую опцию и ввести процент вопросов, на которые необходимо ответить правильно для успешного прохождения теста. Проценты вводятся в целых числах.
  6. Настройки прохождения теста задаются в поле Тип прохождения теста.
  7. Дополнительные условия теста могут задать порядок прохождения теста в группе тестов учебного курса и другие условия.

Тесты в публичной части отобразятся автоматически при использовании комплексного компонента [comp include_learning_course]Учебный курс[/comp].

Примечание: Если для публикации курса используется комплексный компонент [comp include_learning_course]Учебный курс[/comp] со стандартным [dw]шаблоном[/dw][di]shablon.png[/di], то страница со списком итоговых тестов будет расположена [dw]в конце основного курса[/dw][di]tests_in_end.png[/di]. Если же понадобится расположить её в другом месте (например, в конце главы или дочернего курса), то следует использовать простые компоненты раздела [comp include_learning_test_list]Обучение[/comp], либо создавать собственный шаблон.

Примечание: подробное описание формы создания и редактирования теста представлено в документации по продукту.

  Документация по теме




Публикация курса

Публикация списка курсов

Страница со списком курсов создается с помощью компонента [comp include_63243]Список курсов[/comp] (learning.course.list), который [ds]размещается[/ds][di] Мы полагаем что вы уже изучили начальный курс Контент-менеджера и знаете как правильно разместить компонент на странице и как настроить его. Если вы, всё же, этого не знаете, то почитайте об этом здесь[/di] на [ds]уже созданной странице[/ds][di]Мы полагаем что вы уже изучили начальный курс Контент-менеджера и знаете как создавать страницы. Если вы, всё же, этого не знаете, то почитайте о том как создавать страницы здесь.[/di] в структуре вашего сайта.

Важно! В настройках компонента указывается адрес страницы для детального просмотра курса. Если страница с указанным именем не существует, то ее необходимо создать.

Публикация курса

Публичный интерфейс для детального просмотра курса создается с помощью комплексного компонента [comp include_63239]Учебный курс[/comp] (learning.course). С помощью данного комплексного компонента осуществляется показ не только глав и уроков курса, но и созданных к курсу итоговых тестов.

Примечание: размещение компонента выполняется на странице с именем, указанным в настройках компонента Список курсов.

Обратите внимание, если в настройках компонента отмечена опция Включить поддержку ЧПУ, то необходимо указать адреса всех страниц курса. В противном случае следует задать переменные, которым будут передаваться идентификаторы страниц. Без особой необходимости не рекомендуется менять используемые по умолчанию значения переменных.

В обучающем разделе вашего Bitrix Framework вы можете опубликовать дополнительную информацию для пользователей, используя такие компоненты как [comp include_63245]Отчет по курсам[/comp] (learning.student.certificates), [comp include_63244]Журнал студента[/comp] (learning.student.gradebook) и др.

Важно! Показ детального описания, разделов, страниц и тестов курса выполняется на основе отдельного шаблона дизайна. Условия применения шаблона дизайна, используемого для просмотра курсов, задаются также как и для других шаблонов. Т.е. [dw]на странице настроек Bitrix Framework[/dw][di] [/di] следует указать, к каким страницам или страницам какого раздела будет применяться шаблон.



Проверьте себя

Ответьте на несколько вопросов по теме Обучение, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Создавать обучающие курсы можно только в административном разделе.
Верно
Неверно
2 Учебный курс можно экспортировать вместе с созданными вопросами и итоговыми тестами.
Верно
Неверно
3 Если курс был удален, то результаты тестов и сертификаты этого курса будут доступны на странице Сервисы > Обучение.
Верно
Неверно
4 При создании учебной группы можно настроить график открытия разделов.
Верно
Неверно
5 Курсы, главы и уроки могут быть как родительскими, так и дочерними элементами по отношению друг к другу.
Верно
Неверно
6 Главы и уроки при их создании обязательно должны быть привязаны к одному из учебных курсов.
Верно
Неверно
7 Форма создания вопросов итогового теста и вопросов для самопроверки одинакова.
Верно
Неверно
8 Тест для самопроверки генерируется автоматически из созданных вопросов, если у них при создании было отмечено поле Для самопроверки.
Верно
Неверно
9 В публичной части сайта можно вывести обучающие курсы и тесты к ним, но нельзя вывести информацию об итогах прохождения курсов.
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. Создайте учебный курс "Как привлечь клиента":
    • Период активности – 2 месяца;
    • Рейтинг должен быть включен;
    • Вид кнопок рейтинга – Мне нравится (текстовый)

    Решение

  2. Создайте две главы:
    • "Email-маркетинг"
    • "Товарный маркетинг"

    В каждой главе создайте по 2 любых урока.

    Решение

  3. Создайте новую страницу и опубликуйте на ней созданный ранее учебный курс с помощью комплексного компонента Учебный курс.

    Решение

  4. Создайте вопрос для итогового теста:
    • Тип вопроса – Одиночный выбор
    • Текст вопроса: Осуществлять рассылку писем о новинках интернет-магазина можно с помощью:
    • Варианты ответа на вопрос:
      • email-маркетинга (правильный)
      • товарного маркетинга

    Создайте итоговый тест к учебному курсу. Ограничьте количество попыток для сдачи теста (всего 5 попыток).

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.


Подписка, рассылки

Традиционно о событиях на сайте (информация о достижениях компании, новых направлениях в ее деятельности, предоставляемых услугах, планируемых акциях и так далее) пользователей уведомляют почтовыми рассылками. Возможности модуля Подписка, рассылки "1С-Битрикс: Управление сайтом" позволяют решать любые задачи, связанные с ними. Посетители сайта могут самостоятельно подписаться на интересующие их рубрики. При этом подписка на различные тематические рассылки доступна как зарегистрированным, так и анонимным (незарегистрированным) пользователям сайта.

Возможности модуля


Возможности модуля Подписка, рассылки

Модуль Подписка, рассылки:

  • создаёт автоматические или ручные рассылки почтовых сообщений (например: новости компании, анонсы публикаций и так далее),
  • импортирует имеющиеся списки получателей,
  • ведёт статистику рассылок,
  • использует самые разные шаблоны для рассылок с возможностью их создания и редактирования.

Работа с модулем

Администратор производит только [ds]настройку модуля[/ds][di] Модуль Подписка и Рассылки настраивается в Административной части на странице Настройки > Настройки продукта > Настройки модулей > Подписка и рассылки.

Подробнее...[/di] и создание и редактирование [ds]шаблонов рассылки.[/ds][di] В каждом дистрибутиве продукта есть образец шаблона рассылки. Как любая универсальная вещь, он нуждается в адаптации шаблона под конкретный сайт. Администратор может отредактировать шаблон по умолчанию или создать свой шаблон.

Подробнее...[/di] Всю остальную работу, как правило, выполняет контент-менеджер и выполняет её в [dwi include_admin_area]административной части[/dwi] сайта.

Дополнительная информация:


Настройки модуля Подписка и Рассылки

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

Модуль Подписка и Рассылки настраивается в Административной части на странице Настройки > Настройки продукта > Настройки модулей > Подписка, рассылки.

Нажмите на рисунок, чтобы увеличить

Отметим некоторые особенности этой формы:

  • Флаг в поле Разрешить анонимную подписку разрешает подписку на рассылки без регистрации на сайте;
  • Флаг в поле Показывать ссылки на авторизацию при анонимной подписке отображает ссылки на авторизацию и регистрацию;
  • В поле Публичный раздел, где находится страница редактирования подписки задаётся путь в публичном разделе к [dw]папке со страницей[/dw][di]Например #SITE_DIR#/subscribe/edit.php[/di] редактирования подписки, относительно корня сайта (в данном поле можно использовать макрос #SITE_DIR#);
  • Интервал в секундах для пошаговой рассылки в режиме "Персонально подписчику" – указывается интервал отправки писем подписчикам (в секундах). Значение зависит от параметров вашего сервера. Режим Персонально подписчику - это отправка индивидуальных сообщений каждому подписчику с адресом подписчика в поле Кому каждого такого письма. Если в поле указать 0, то отправка писем будет осуществляться за один шаг.
  • Максимальное количество адресов в поле BCC не в режиме "Персонально подписчику" – ограничьте количество адресов, выводимое в поле [ds]BCC[/ds][di]Режим Скрытая копия

    Подробнее...[/di], если не используется режим Персонально подписчику. Если указать 0, то одно письмо будет отправляться всем подписчикам.
  • Поля Адрес отправителя по умолчанию и Адрес получателя по умолчанию - указанные в этих полях адреса будут использоваться в сообщениях если они не переназначены в каждом сообщении отдельно.
  • В полях Кодировки сообщения в рассылку укажите кодировки для создания сообщений. По умолчанию установлен необходимый минимум;
  • Если установлен флаг Разрешить 8-битные символы в заголовке письма, то в заголовке письма используются символы расширенного [ds]ASCII (0-255)[/ds][di]ASCII (англ. American standard code for information interchange) - название таблицы (кодировки, набора), в которой некоторым распространённым печатным и непечатным символам сопоставлены числовые коды.

    Подробнее ...[/di] . В противном случае такие символы (обычно национальные, например, символы русского алфавита) выводятся в кодировке Base-64.
  • В полях Метод автоматической рассылки и Метод автоматической генерации выпусков можно выбрать один из двух методов:
    • Агент - автоматическая рассылка и автоматическая генерация выпусков осуществляются [ds]средствами сайта[/ds][di]Агенты - технология, позволяющая запускать произвольные PHP функции (агенты) с заданной периодичностью.

      Подробнее ...[/di]. Чтобы выполнение агента произошло в установленное время, на сайте кто-то должен быть. Если ваш проект редко посещаемый, то агент может и не выполнится вовремя.
    • Крон - этот метод рекомендуется если сайт установлен на сервер под управлением ОС Unix, так как для выполнения задач в этом случае не требуется чтобы на сайте обязательно был посетитель, действие будет выполнено на сервере автоматически [ds]по установленному расписанию[/ds][di]Всецело можно сказать одно: если агенты занимают несколько десятых долей секунды, то уже стоит задуматься о переносе агентов на cron. "Тяжелым" считается агент, который выполняется более 10 секунд.

      Подробнее ...[/di].
  • В поле Интервал проверки необходимости генерации выпусков в секундах указывается интервал времени в секундах, по истечении которого будет проверяться необходимость генерации выпусков.
  • Поле Максимальный размер вложений в мегабайтах (0 - без ограничений) ограничивает размер вложения в письмо рассылки. Если 0 - то без ограничений.

На закладке Доступ распределяются права доступа к модулю для групп пользователей.


Документация по теме:


Шаблон рассылки

В каждом дистрибутиве продукта есть образец шаблона рассылки. Как любая универсальная вещь, он нуждается в адаптации под конкретный сайт. Администратор может отредактировать шаблон по умолчанию или создать новый.

  Редактирование шаблона

  1. Из формы создания рассылки перейдите по ссылке с названием [dw]доступного шаблона[/dw][di][/di].

    Примечание: Если у Вас не отображаются доступные шаблоны, то в списке модулей (Настройки > Настройки продукта > Модули) удалите и вновь установите модуль Подписка, рассылки, отметив опцию [dw]Добавить шаблоны автоматической генерации выпусков.[/dw][di] [/di]

  2. Затем на открывшейся странице Менеджера файлов перейдите к [dw]редактированию файла шаблона[/dw][di][/di].
  3. Шаблон редактируется так же как и обычная страница сайта. В нём может быть размещена как статическая информация (например, приветствие), так и программный скрипт или визуальные компоненты, использованием которых будет выполняться выборка информации.

    Нажмите на рисунок, чтобы увеличить

  Создание шаблона

Создание нового шаблона заключается в копировании папки с текущим шаблоном (в дистрибутиве он называется news и расположен по пути: /bitrix/php_interface/subscribe/templates/ и редактированием его под свои потребности.

Внимание! По умолчанию шаблоны для автоматической генерации выпусков лежат в директории /bitrix/php_interface/subscribe/templates. Для поддержки версионности при разработке сайта в ядре 14.0.1 была введена поддержка папки /local, что облегчает совместную разработку сайта. А с версии 16.5 модуля Подписка, Рассылки шаблоны для автоматической генерации выпусков можно хранить в папке /local/php_interface/subscribe/templates.

Приоритет всегда у папки /local перед /bitrix, т.е если в /local/php_interface/subscribe/templates и в /bitrix/php_interface/subscribe/templates будут находиться шаблоны с одинаковым названием, то шаблон будет выбираться из папки /local.



Проверьте себя

Ответьте на несколько вопросов по теме Подписка, рассылки, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Подписка на рассылку невозможна без регистрации на сайте.
Верно
Неверно
2 Максимальный размер вложения в письмо рассылки - 255 Мб.
Верно
Неверно
3 Шаблон рассылки может быть адаптирован под конкретный сайт.
Верно
Неверно
4 В шаблоне сообщения можно задать только собственное приветствие и подпись.
Верно
Неверно
5 Адрес отправителя по умолчанию - это адрес администратора сайта.
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. Выполните настройки модуля Подписка и рассылки:
    • Разрешите анонимную подписку;
    • Задайте отправку писем подписчикам за один шаг;
    • Задайте адрес отправителя по умолчанию info@mysite.com;
    • Ограничьте максимальный размер вложений в 100 Мб;
    • Назначьте права на доступ Просмотр всех данных модуля для Контент-редакторов.

    Решение

  2. Отредактируйте шаблон рассылки с использованием визуального редактора.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.


Почта

Модуль Почта предназначен для получения и обработки почтовых сообщений. При этом применение почтового модуля дает такие преимущества в управлении почтовыми сообщениями, как:
  • централизованное хранение почтовых сообщений, относящихся к функционированию сайта;
  • неограниченное количество определяемых почтовых ящиков (учетных записей);
  • создание и применение правил к входящим сообщениям в автоматическом и ручном режиме;
  • самообучающаяся система фильтрации спама;
  • возможность доставки сообщений без удаления их с почтового сервера и т.д.

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

Настройка модуля производится на странице Настройки > Настройки продукта > Настройки модулей > Почта. Настройка не сложна и в большинстве своем значения полей ясны из их названия.

Если не используется Виртуальная машина [ds]VMBitrix[/ds][di] «1C-Битрикс: Виртуальная машина» - бесплатный программный продукт, готовый к немедленному использованию виртуальный сервер, полностью настроенный, протестированный и адаптированный для оптимальной работы как с продуктами «1С-Битрикс», так и с любыми PHP-приложениями.

Подробнее...[/di], то в настройках модуля почты необходимо указать командную строку запуска php-скрипта.

Есть системные ограничения:

  • На сервере не должно быть приложений, "слушающих" этот же адрес и порт.
  • В Linux "слушать" 25 [ds]порт[/ds][di] Порт (англ. port) — натуральное число, записываемое в заголовках протоколов транспортного уровня модели OSI (TCP, UDP, SCTP, DCCP). Используется для определения процесса-получателя пакета в пределах одного хоста.

    Подробнее...[/di] (вернее 1-1024) могут только приложения, запущенные от пользователя root, что не всегда возможно. Поэтому приходится обходить это ограничение при помощи настройки, например, authbind, при этом командная строка будет выглядеть примерно так: authbind php -c /etc/php.ini. Иногда удобнее настроить переадресацию на [ds]файрволе[/ds][di] Файрвол, межсетевой экран (брандмауэр) — технологический барьер, предназначенный для предотвращения несанкционированного или нежелательного сообщения между компьютерными сетями или хостами:

    Подробнее...[/di], то есть запустить сервер на порту, например, 20225, а перенаправление сделать с внешнего 25 на внутренний 20225.
  • Чтобы внешние почтовые серверы могли достучаться до вашего, необходимо открыть этот порт в файрволе.
  • Домены, выбранные в настройках почтового ящика, должны иметь DNS запись [ds]"MX"[/ds][di] За́пись MX (от англ. mail exchanger) — тип DNS-записи, предназначенный для маршрутизации электронной почты с использованием протокола SMTP.

    Подробнее...[/di] (или "A") на IP-адрес, на котором "слушает" [ds]SMTP[/ds][di] SMTP (англ. Simple Mail Transfer Protocol — простой протокол передачи почты) — это широко используемый сетевой протокол, предназначенный для передачи электронной почты в сетях TCP/IP.

    Подробнее...[/di]-сервер. Обычно сервер, который отвечает по заданному домену по протоколу http, содержит включенный на этом же адресе SMTP. Поэтому в большинстве случаев ничего настраивать не придется.

Если платформа и окружение настроены верно, то при нажатии на Запустить SMTP-сервер будет запущен php-скрипт, который будет слушать заданный порт на указанных хостах. И в случае входящих соединений он будет принимать входящие сообщения при помощи правил фильтрации модуля почты, а также будет сортировать и обрабатывать их.

Примечание: некоторые проблемы в работе почтовой системы (почта отправляется медленно; функция mail подвисает при отправке на некорректные адреса) решаются вынесением почты на [ds]cron.[/ds][di] cron — классический демон (компьютерная программа в системах класса UNIX), использующийся для периодического выполнения заданий в определённое время. Регулярные действия описываются инструкциями, помещенными в файлы crontab и в специальные каталоги.

Подробнее...[/di]

Документация по теме:



Письма

Читаем письма

Список всех полученных почтовых сообщений хранится на странице Письма (Сервисы > Почта > Письма).

Для получения сообщений в ручном режиме служит поле [dw]Получить почту,[/dw][di] [/di] расположенное на контекстной панели. Выберите почтовый ящик, письма которого хотите получить, и нажмите кнопку OK. Отобразится информация о доставке почты.

С помощью кнопок, расположенных на контекстной панели, вы можете перейти к просмотру списка полученных сообщений либо записей журнала работы. В списке сообщений иконки сообщений так же говорят о [dw]состоянии писем.[/dw][di] [/di]

Просмотр письма осуществляется в такой форме:

С помощью полей формы вы можете:

  • обучить систему фильтрации спама (поле Обучить);
  • применить к письму созданное ранее правило (поле Применить ручные правила);
  • пометить прочитанное сообщение на удаление.

Примечание: аналогичные действия могут быть выполнены для каждого сообщения с помощью его [dw]меню действий[/dw][di][/di] на странице Письма.

Документация по теме:



Журнал работы

Где фиксируется работа с почтой

Журнал обработки почты (Сервисы > Почта > Журнал работы) отображает все события, связанные с функционированием модуля почты и получением сообщений:

  • запросы системы к почтовому серверу;
  • ответы почтового сервера;
  • применение правил и действий.

В записях журнала цветом выделены записи о следующих событиях:

  • зеленым цветом - запросы к серверу;
  • синим цветом - ответы от сервера;
  • красным цветом - описание возникших ошибок.

Документация по теме:



Правила

  Добавление правила

Управление правилами обработки почтовых сообщений осуществляется на странице Правила обработки почты (Сервисы > Почта > Правила). Правило можно добавить только для системных ящиков.

Для создания нового правила служит кнопка контекстной панели Добавить правило, в выпадающем меню которой необходимо выбрать тип создаваемого правила:

  • ручная настройка – все параметры правила доступны для изменения и настройки;
  • добавление сообщений в форумы соцсети – правило создается на основе специального шаблона (шаблон предназначен для облегчения создания правил фильтрации сообщений, адресованных в форумы соцсети);
  • добавление сообщения в техподдержку – правило создается на основе специального шаблона (шаблон предназначен для облегчения создания правил фильтрации сообщений, адресованных в службу технической поддержки);
  • Для коробочной версии Битрикс24 есть дополнительный тип правила

Форма создания (редактирования) правила обработки почты разбита на три закладки.

  Закладка "Параметры"

На закладке Параметры указываются основные параметры:

Большая часть полей ясна из названия, поясним только одно поле. Применять при событиях – выберите события, при которых следует применять это правило:

  • При получении почты – правило будет применяться автоматически при получении почты;
  • При принудительном вызове правила – правило будет применяться при его вызове (например, может быть применено вручную при просмотре почтового сообщения).

  Закладка "Условия"

На закладке Условия задаются условия, при выполнении которых данное правило будет применено к сообщению.

При создании правила с шаблоном Добавление сообщения в техподдержку на данной закладке отображается [dw]дополнительная группа настроек.[/dw][di] [/di]

  • Определять по E-Mail ранее зарегистрированного пользователя – если это условие установлено в да, пытаться привязать обращение к пользователю, то при получении нового сообщения правило будет предпринимать попытки найти зарегистрированного пользователя с таким адресом в базе данных и привязать сообщение к нему. В противном случае, при получении писем с любых адресов сообщения в модуле техподдержки будут создаваться как анонимные.
  • Добавлять новое сообщение в уже открытое обращение – условие определяет, сообщения с какого адреса могут быть добавлены в открытое обращение в техподдержку. При установке флага как скрытое сообщение будет доступно только сотрудникам техподдержки.
  • Шаблоны темы для определения ответа на обращение – регулярные выражения, применяемые для сортировки входящих сообщений. Поле предназначено для разработчиков; не рекомендуется изменять его значение без надобности.
  • Привязывать новое обращение к сайту – указание на сайт, к которому будет привязано вновь создаваемое обращение.
  • Привязывать новое обращение к категории – указание на тематическую категорию, к которой будет привязано вновь создаваемое обращение.
  • Назначить новому обращению критичность – позволяет указать критичность вновь создаваемого обращения.

  Закладка "Действия"

Если параметры сообщения удовлетворяют условиям правила, то к сообщению будут применены действия, заданные на закладке Действия.

  • Установить статус прочтенности – позволяет отметить все сообщения, к которым будет применяться это правило, как прочитанные.
  • Установить пометку спам – позволяет отметить все сообщения, к которым будет применяться это правило, как сообщения массовой рассылки.
  • Действие на PHP-скрипте – опциональный PHP-скрипт, который исполняется во время применения правила к сообщению.
  • Удалить сообщение – удаляет сообщения, к которым применяется правило.
  • Не обрабатывать другими правилами – указывает, что после применения данного правила к конкретному сообщению остальные правила не будут применены к нему, даже если сообщение удовлетворяет условиям этих правил.

  Документация по теме




Почтовые ящики

   Типы почтовых ящиков

Управление учетными записями электронной почты осуществляется на странице Почтовые ящики (Сервисы > Почта > Почтовые ящики). Отметим, что система Bitrix Framework позволяет создавать неограниченное число учетных записей электронной почты.

Для добавления новой учетной записи нажмите на контекстной панели кнопку Добавить и выберите тип создаваемого почтового ящика: пользовательский или системный:

  • Системный почтовый ящик создается в административной части сайта и используется для служебных задач (например, создание тикета).
  • Пользовательские почтовые ящики могут быть созданы как самими пользователями в публичном интерфейсе, так и администратором сайта через административный раздел.

Переход к редактированию существующей записи осуществляется с помощью меню действий (пункт Изменить) либо с помощью двойного клика по соответствующей записи.

  Системный ящик

Форма создания/редактирования системного почтового ящика:

Вкладка Почтовый ящик

Подробно со значением каждого поля можно ознакомиться в документации. Приведём пояснения к некоторым полям:

  • Тип - выбирается тип почтового сервера, на котором размещен почтовый ящик. При выборе типа Внутренний SMTP сервер сменится ряд полей и станут неактивными часть прежних.

    Внимание! При настройке параметров запуска при выборе Внутренний сервер желательно заполнить поле Доменные имена, обслуживаемые сервером. Если их не ограничить и сервер находится в интернете, то можно запросто попасть в спам-лист (хотя реально рассылаться ничего не будет).

  • Почтовый сервер (POP3) / порт - указывается имя почтового сервера, на котором размещен почтовый ящик, и номер порта, через который пересылаются данные.

Чтобы получать сообщения автоматически, в форме редактирования учетной записи в поле Проверять с периодом нужно указать период времени (в минутах), по истечении которого будет выполняться проверка наличия новых сообщений на сервере. Если почтовые сообщения будут получаться вручную, то данное поле следует оставить пустым или указать значение 0.

Дополнительно при создании новой учетной записи вы можете сразу перейти к созданию почтовых правил для данного ящика. Созданные правила будут применяться к почтовым сообщениям, получаемым на данный ящик (например, для определения СПАМ-коэффициента, уровня важности сообщения, удаления ненужных сообщений и т.п.).

Правила дают возможность сортировать сообщения в обсуждениях соцсетей. При отправке сообщения на заданный EMail сообщение автоматически будет публиковаться на форуме. При этом все подписавшиеся на этот форум будут получать сообщения, на которые можно будет просто отвечать в почтовом клиенте. Это похоже на листы рассылок google или yahoo groups, когда все обсуждения можно вести по почте, а история будет сохраняться в форумах (с возможностью общения и непосредственно на самом форуме через веб).

Вкладка Дополнительные настройки

Здесь указываются дополнительные параметры получения сообщений (например, максимальное количество сообщений, принимаемое за одно соединение, или максимальный размер сообщения).

   Пользовательский ящик

Форма создания/редактирования пользовательского почтового ящика:

Подробно со значением каждого поля можно ознакомиться в документации. Приведём пояснения к некоторым полям:

  • Почтовый сервис - выбирается один из созданных ранее [ds]почтовых сервисов[/ds][di] Управление списком сервисов электронной почты, доступных на странице портала в блоке "Почтовые сервисы", осуществляется на административной странице Сервисы > Почта > Почтовые сервисы. Пользователи могут подключать почтовые ящики только в сервисах из этого списка. Администратор портала может настраивать этот список, и, тем самым, запрещать или разрешать пользоваться почтой на портале в определенных сервисах.

    Подробнее...[/di];
  • Почтовый сервер (IMAP) / порт - указывается имя почтового сервера, на котором размещен почтовый ящик, и номер порта (обычно 993), через который пересылаются данные;
  • Владелец - выбирается один из пользователей сайта, к которому будет привязан данный почтовый ящик.


Почтовые сервисы

Управление списком сервисов электронной почты, доступных на странице портала [dw]/company/personal/mail/?page=home[/dw][di] [/di] в блоке "Почтовые сервисы", осуществляется на административной странице Сервисы > Почта > Почтовые сервисы. Пользователи могут подключать почтовые ящики только в сервисах из этого списка. Администратор портала может настраивать этот список, и, тем самым, запрещать или разрешать пользоваться почтой на портале в определенных сервисах.

Примечание: количество доступных почтовых сервисов не ограничено.

Для добавления нового сервиса служит кнопка Добавить, расположенная на контекстной панели. Переход к редактированию существующего сервиса осуществляется с помощью меню действий (пункт Изменить) либо с помощью двойного клика по соответствующей записи.


Работа с параметрами открывающейся формы добавления/изменения аналогична работе в других формах модуля Почта.

Если при добавлении нового сервиса выбран тип почтового сервера domain

Документация по теме:



Типы событий

Что такое типы событий

Тип событий - сущность, предназначенная для выбора почтового или смс шаблона для отправки сообщений пользователям при наступлении определённых условий. Большая часть типов событий - системная, но есть возможность создания собственных шаблонов.

Если говорить более простым языком, то Типы событий - это сущность, соединяющая зоны ответственности программиста (события) и администратора (Шаблоны почты).

События в коде продукта - это способ изменить работу API продукта без изменения собственно кода "1С-Битрикс: Управление сайтом". Детально с функционалом событий можно познакомится в курсе [ds]Разработчик Bitrix Framework[/ds][di]Иногда бывает необходимо повлиять на ход выполнения какой-нибудь API функции. Но если ее изменить, то эти изменения будут утеряны при очередном обновлении. Для таких случаев и разработана система событий.

Подробнее ...[/di].

В общем плане механизм событий используется в разных целях, в частном случае - Почта и СМС - типы событий используются для автоматической отправки сообщений при наступлении того или иного события в системе. Например: при обнаружении вируса на сайте, при добавлении нового друга в блог пользователя, запросе кода авторизации, изменения статуса баннера и других случаях.

Для большинства типовых ситуаций использования "1С-Битрикс: Управление сайтом" создания новых типов событий не требуется, достаточно того что есть в продукте "из коробки". Но в некоторых случаях создание новых типов событий бывает полезным или необходимым. Например: Менеджеру магазина необходимо получать информацию об изменении статуса заказа. По умолчанию в системе есть типы событий для изменений штатных статусов. А если вы создали свой, нужный именно вам статус? Уведомления о переходе заказа в этот статус просто так не придёт. Вот в этом случае и есть необходимость создания нового типа события.

Создать новый тип события можно как через API, так и через Административный раздел сайта.

Создание в административном разделе

Типы почтовых событий описаны на странице Настройки > Настройки продукта > Почтовые и СМС события > Типы событий:

Для редактирования типа почтовых и СМС событий выберите пункт Изменить в меню действий. Чтобы добавить новый тип, нажмите кнопку Добавить тип на контекстной панели, откроется форма создания:

Заполните поле Тип события. Для того чтобы потом не запутаться в списке типов событий и легко найти нужное, рекомендуется в качестве первого слова использовать название модуля, в котором будет использоваться создаваемый тип. В нашем случае, это будет модуль "Интернет-магазин". Значит название будет начинаться с SALE. Далее, через подчёркивание даём уникальное название. Например: SALE_MY_STATUS_CHANGE.

Выберите вид события: почтовое или СМС, то есть это указание системе каким способом отправить уведомление. Напомним, что для почтового события должны быть настроены Почтовые сервисы, а для СМС сообщений должна быть настроена Служба сообщений.

Поставьте галочки напротив заголовков тех языковых описаний, на которых хотите представить свой новый тип, и заполните поля Сортировка, Название и Описание. В поле Описание введите доступные поля (макросы вида #SOMETHING#), которые можно будет использовать при написании тела сообщения почтового или СМС шаблона, который будет принадлежать создаваемому вами типу.

Нажмите Сохранить, после чего новый тип добавится в общий список и его можно будет указывать при создании почтовых шаблонов или шаблонов СМС (в зависимости от указанного вида событий).

Примечание: подробнее о почтовых шаблонах смотрите в уроке [ds]Работа с почтовыми шаблонами[/ds][di] Почтовые шаблоны расположены на странице Настройки > Настройки продукта > Почтовые события > Почтовые шаблоны. Чтобы редактировать почтовый шаблон, выберите пункт Изменить в меню действий нужного шаблона.

Подробнее...[/di].

При редактировании типа почтовых и СМС событий появится закладка Шаблоны, на которой видны шаблоны событий, привязанные к данному типу. Для только что созданного нами типа данная вкладка будет пустой.

Однако созданный тип события не заработает сразу после создания. Необходимо ещё в нужных местах API осуществить вызов события этого типа. Это делается программистом. Администратор, создавший новый тип события должен передать ему [dw]название типа[/dw][di]В нашем случае: SALE_MY_STATUS_CHANGE[/di], список значений, которые должны быть доступны в шаблонах этого события в виде макросов и условия при которых это событие должно быть [dw]вызвано[/dw][di]В нашем случае - при смене статуса заказа на наш статус.[/di].

Работа через API

Текст ниже требует определённых навыков работы с кодом. Если вы не уверены в том, что владеете этими навыками в достаточной мере, то лучше обратиться к разработчикам.

Тип события создаётся либо с Административной части (см. описание выше), либо через API с помощью метода CEventType::Add. Вызов события осуществляется методом CEvent::Send. Примеры работы с этими методами есть в документации. Детально как работать с событиями описано в курсе Разработчик Bitrix Framework.

Макросы

Макросы, которые можно использовать в шаблонах сообщений данного типа событий берутся из описания типа и плюс системные макросы.

Системные макросы - это значения, устанавливаемые в настройках Главного модуля. Всего системных маркеров 4:

  1. #DEFAULT_EMAIL_FROM# - поле Email администратора сайта (отправитель по умолчанию),
  2. #DEFAULT_SENDER# - поле Номер отправителя по умолчанию,
  3. #SITE_NAME# - поле Название сайта,
  4. #SERVER_NAME# - поле URL сайта.

При вызове события значения для системных макросов передавать не нужно, они будут подставлены по умолчанию. Если же программист передаст своё значение для системного макроса, то он подменит системное значение на своё.

Макросы из описания берутся из массива объявленного методом CEventType::Add.

Сами макросы заменяются на вывод значения из массива по ключу названия макроса. Допустим, добавлено событие с массивом полей:

array(
	'ORDER_ID' => 123, 
	'ORDER_PAID' => 'Y', 
	'BUYER_NAME' => 'Андрей'
)

В почтовом шаблоне можно будет использовать эти поля, указывая макросы:

#ORDER_ID#
#ORDER_PAID#
#BUYER_NAME#

Начиная с версии главного модуля 15.0.7, где разрешается использование PHP в почтовых шаблонах, то же самое можно указать и так:

<=$arParams['ORDER_ID']>
<$arParams['ORDER_PAID']>
<=$arParams['BUYER_NAME']>

Таким образом, в теле почтового шаблона массив переданных полей доступен через переменную $arParams.

Особенности использования тега xml

Документация по теме:



Работа с почтовыми шаблонами

Почтовые шаблоны расположены на странице Настройки > Настройки продукта > Почтовые и СМС события > Почтовые шаблоны.

  Форма редактирования

Чтобы отредактировать почтовый шаблон, выберите пункт Изменить в меню действий нужного шаблона:

Откроется [dw]форма редактирования[/dw][di] [/di] почтового шаблона. Суть большинства параметров ясна из названия, опишем только некоторые:

  • От кого - указывается адрес отправителя почтового сообщения. Для шаблонов, связанных с работой интернет-магазина, по умолчанию установлен макрос #SALE_EMAIL# (это [dw]E-Mail отдела продаж[/dw][di] Настройки > Настройки продукта > Настройки модулей > Интернет-магазин (вкладка Настройки):

    [/di], указанный в настройках модуля Интернет-магазин). Вместо данного макроса можно указать прямой адрес отправителя.
  • Кому - указываются [dw]адреса[/dw][di]Адреса перечисляются через запятую.
    [/di] тех, кому будут отправлены письма.

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

  • Скрытая копия - о факте отправки письма на электронные адреса, указанные в данном поле, не будут знать ни главный адресат, ни получатели, указанные в поле Копия. Кроме того, адресаты, указанные в поле Скрытая копия, также не будут видеть друг друга в получателях письма.
  • Важность - нажмите на стрелочку и укажите степень важности отсылаемого уведомления: высокая, нормальная или низкая.
  • Тема - укажите тему письма. Удобно использовать для рассылок определённой тематики. Тема должна быть предварительно создана.

В блоке Сообщение составьте уведомление, которое Вы хотите разослать пользователям. При редактировании сообщения можно выбрать более удобный для Вас в данной форме формат представления сообщения: Текст, HTML или Визуальный редактор.

В конце каждого почтового шаблона указаны [dw]макросы[/dw][di] Макрос - специальный код, вместо которого подставляется уникальное значение определённого параметра. [/di], доступные именно для этого шаблона. Такие макросы Вы можете вставлять в [dw]поля письма[/dw][di] [/di] или в само сообщение:

Примечание: Если в описании макроса указано, что параметр устанавливается в настройках, то зачастую имеются в виду настройки Главного модуля.

Кроме макросов, в почтовых шаблонах можно указать php-код (с версии главного модуля 15.0.7). К примеру:

Добрый день!
Ваш логин: #LOGIN#
Текущая дата: <?=date('d.m.Y')?>

  Добавление шаблона

Нажав кнопку Добавить шаблон на контекстной панели, Вы откроете форму добавления. Она фактически идентична форме редактирования шаблона, за исключением того, что Вам нужно выбрать тип ранее созданного [ds]почтового события[/ds][di] Введите название создаваемого типа. Поставьте галочки напротив заголовков тех языковых описаний, на которых хотите представить свой новый тип, и заполните поля Сортировка, Название и Описание. В поле Описание введите доступные поля (макросы вида #SOMETHING#,), которые должны использоваться при написании тела сообщения почтового шаблона, который будет принадлежать создаваемому вами типу.

Подробнее...[/di], к которому будет привязан шаблон:

Чтобы увидеть все поля формы, нажмите показать дополнительные заголовки....

Примечание: Оценить внешний вид созданного письма можно только отправив это письмо. Соответственно, нужно выполнить условия срабатывания [ds]почтового события[/ds][di] Типы почтовых событий описаны на странице Настройки > Настройки продукта > Почтовые события > Типы почтовых событий.

Подробнее...[/di], по которому запустится процесс отправки писем по шаблону.
Поэтому для тестирования почтового шаблона удобнее сначала в поле Кому указать собственный адрес, затем выполнить отправку письма и оценить его внешний вид. А уже после тестирования заполнить поля Кому, Копия и Скрытая копия.

  Визуальный редактор

С версии Главного модуля 15.0.7 в теле сообщения появилась возможность размещать компоненты. Список компонентов, которые [ds]можно использовать[/ds][di] В визуальном редакторе при редактировании почтового шаблона отображаются только те компоненты, у которых в файле описания (.description.php) указан тип "TYPE" => "mail".

Подробнее...[/di] в почтовых шаблонах, отображается в [ds]визуальном редакторе[/ds][di] Компоненты отображаются на специальной панели в визуальном редакторе. Компоненты разделены на группы (например - контент, общение, магазин). Строка поиска чуть ниже поможет вам найти компонент по названию.

Подробнее... [/di]. С помощью компонентов можно указать дополнительную информацию (например, подробную информацию о заказе):

Нажмите на рисунок, чтобы увеличить

В форме редактирования нужного почтового шаблона выберите режим визуального редактора, найдите справа в списке компонентов подходящий вам компонент и перетяните его влево в рабочую область, а затем [ds]настройте[/ds][di] О том, как настраивать компонент, читайте в соответствующем уроке учебного курса "Контент-менеджер".

Описания полей всех компонентов приведены в пользовательской документации. [/di] компонент.

Ограничения при размещении компонентов

Внимание! При отправке письма по шаблону будет выполнен код компонента. Языковые файлы в компоненте будут подключены для того языка, который указан в настройках сайта, привязанного к почтовому событию. Для письма используется та кодировка, которая указана в настройках сайта, код которого передан в событии.

Таким образом, если на сайте используется [ds]многосайтовость с разными языками,[/ds][di] Многосайтовость и языковые версии сайта – это разные понятия, хотя иногда взаимосвязанные. При необходимости языковые версии можно реализовать и как отдельные языковые папки (разделы) в составе одного сайта, и как отдельные сайты.

В данном случае следует предварительно проанализировать, какая именно информация должна быть представлена на различных языках и какие действия с объектами сайта предполагается производить.

Подробнее...[/di] то на хите по русскоязычному сайту может быть отправлено письмо для другого языка.

  Темы оформления

Тема оформления - это шаблон оформления сообщения. Создаётся из списка тем со страницы Настройки > Настройки продукта > Почтовые и СМС события > Темы оформления. Технология создания темы аналогична созданию [ds]шаблона сайта[/ds][di] Шаблон дизайна - это внешний вид сайта, в котором определяется расположение различных элементов на сайте, художественный стиль и способ отображения страниц. Включает в себя программный html- и php-код, графические элементы, таблицы стилей, дополнительные файлы для отображения контента. Может так же включать в себя шаблоны компонентов, шаблоны готовых страниц и сниппеты.

Подробнее...[/di] и имеет аналогичную форму. Технически тема оформления - это шаблон сайта в папке /bitrix/templates. При создании именно темы для почтовых сообщений нужно выбрать значение Шаблон для почтовых писем в поле Тип. В этом случае в файле описания (.description.php) будет указан тип "TYPE" => "mail":

<?$arTemplate = array(
	"NAME" => "Тестовая тема оформления",
	"DESCRIPTION" => "Тестовая тема оформления",
	"SORT" => "",
	"TYPE" => "mail",
);
?>

Стили, указанные в файлах стилей, будут вставлены в письмо (inline) в том месте, где будет вызов <?=$this->showStyles()?>

Темы оформления, так же как и шаблоны сайта, могут содержать php-код.

Поиск шаблона почтового компонента выполняется по стандартному алгоритму. Если у почтового шаблона, где подключается компонент, проставлена тема оформления, то папка темы оформления используется в качестве текущего шаблона сайта при поиске шаблона компонента.



Настройка почты

Работа через Bitrix Framework требует настройки отправки и приема электронной почты. Возможны три варианта отправки:
  • через локальный [ds]sendmail[/ds][di] Sendmail — один из старейших агентов передачи почты (MTA — mail transfer agent). Распространяется бесплатно вместе с исходными кодами. Существуют версии программы для практически всех операционных систем и аппаратных платформ.

    Подробнее...[/di] или [ds]postfix[/ds][di] Postfix — агент передачи почты (MTA — mail transfer agent). Postfix является свободным программным обеспечением, создавался как альтернатива Sendmail.

    Подробнее...[/di] (если сайт на Linux);
  • через внешний SMTP-сервер без авторизации (если на Windows);
  • через внешний сервер с авторизацией путем замены функции отправки почты.

Самый простой способ - отправка без авторизации. Если Ваш сайт установлен на Windows, настройте PHP (в конфигурационном файле) адрес smtp-сервера, а в MS Exchange настройте прием почты с ip сайта без авторизации.

Если же сайт на Linux, то либо настройте [ds]msmtp[/ds][di] Информация данного урока пригодится для ручной настройки и диагностики ошибок с почтой в Виртуальная машина BitrixVM/BitrixEnv v.5.x.

Для Виртуальная машины BitrixVM/BitrixEnv v7.x никакой ручной настройки, как правило, не требуется. Нужно только создать пул и настроить почту с помощью мастера настройки почты в меню виртуальной машины.[/di] (идет в комплекте с виртуальной машиной), либо почтовый сервер. Больше всего сложностей возникает при настройке сервера при использовании виртуальной машины и при установке продуктов Bitrix Framework на Linux.

Настройка почты на Linux

Рассмотрим вариант настройки почты на примере CentOS 5 (для других ОС команды и пути могут отличаться).

  1. Удалите sendmail:
    # rpm -e --nodeps sendmail
  2. Установите postfix:
    # yum install postfix
    # /etc/postfix/post-install upgrade-package
  3. Перекомпилируйте базу алиасов:
    # cd /etc
    # newaliases
  4. Измените sendmail_path в /etc/php.ini:
    sendmail_path = /usr/sbin/sendmail -t -i
  5. Запустите postfix:
    # service postfix restart
  6. Перезапустите apache:
    # service zend-server restart
  7. Проверьте наличие postfix в автозагрузке
    # chkconfig --list|grep postfix

    (по умолчанию есть):

    postfix         0:off   1:off   2:on    3:on    4:on    5:on    6:off

    если нет:

    # chkconfig postfix on
  8. Проверьте работу:
    <?
    if (mail("moe_mylo@gmail.com","test subject", "test body","From: otpravitel@bitrix.ru"))
    echo "Сообщение передано функции mail, проверьте почту в ящике.";
    else
    echo "Функция mail не работает, свяжитесь с администрацией хостинга.";
    ?>

Материалы по теме:



Настройка почты на VMBitrix

Запустите виртуальную машину.

В первом окне нажмите Login, войдите под root (это обязательно). Войдите в пункт меню: 6. Управление сайтами (6. Configure pool sites). В этом пункте, в свою очередь, выберите пункт 4. Настройка почтового сервера (4. Change a site's e-mail settings).

Для настройки интегрированного почтового сервера выполните следующее:

  1. Перейти в главном меню в 6. Configure pool sites > 4. Change a site's e-mail settings и ввести имя хоста, для которого нужно настроить отправку почты:

  2. Далее ввести необходимые данные для почтового сервера:

    • from address - адрес отправителя, от которого будет осуществляться пересылка писем.
    • server address or DNS - ip-адрес или доменное имя почтового сервера. Если нажать Enter, то будет использован адрес по умолчанию (127.0.0.1)
    • server port - порт сервера. Порт зависит от типа соединения, 25 - для обычного и 465 - для зашифрованного (с использованием SSL). Если нажать Enter, то будет использован порт по умолчанию (25).
    • Если необходима SMTP-авторизация, то в строке SMTP authentication наберите y и введите логин и пароль для доступа к SMTP-серверу, в противном случае - n. Для большинства почтовых серверов SMTP-авторизация обязательна.
    • Если выбрана опция SMTP-авторизации, то понадобится ввести тип авторизации type of authentication method: auto, plain, scram-sha-1, cram-md5, gssapi, external, digest-md5, login, ntlm (например для yandex.ru достаточно auto, а для mail.ru - plain).
    • Если необходим TLS-протокол защищенной передачи данных, то в строке TLS enabled наберите y, в противном случае - n.

    Примечание: При настройке укажите данные своего или публичного почтового сервиса.


  3. Дождаться пока задача по настройке почтового сервера будет закончена.
  4. Убедиться в правильности введенных данных настройки почтового сервера можно снова в 6. Manage sites in the pool > 4. Change e-mail settings on site:

Внимание! Задачи могут выполняться довольно длительное время (до 2-3 часов и более) в зависимости от сложности задачи, объема данных, используемых в этих задачах, мощности и загруженности сервера. Проверить текущие выполняемые задачи можно с помощью меню 5. Background tasks in the pool > 1. View running tasks. Если по каким-либо причинам нужно посмотреть лог-файлы выполнения задач, то они находятся в директории /opt/webdir/temp.


Внимание! С 01.12.2020 Яндекс включил строгий контроль адреса отправителя. Это значит, что вы больше не сможете через SMTP-клиент отправить письмо, если отправитель в поле From («От кого») отличается от авторизованного пользователя. Указать несколько отправителей в поле From также не получится .



Частые проблемы

Частой причиной сообщения Есть ошибки при отправке системных почтовых сообщений на странице Настройки > Инструменты > Проверка сайта является указание отправки почты через cron.

Для исправления этой ошибки отключите отправку через cron в файле /bitrix/php_interface/dbconn.php. Установите:
define("BX_CRONTAB_SUPPORT", false).

Внимание! С 01.12.2020 Яндекс включил строгий контроль адреса отправителя. Это значит, что вы больше не сможете через SMTP-клиент отправить письмо, если отправитель в поле From («От кого») отличается от авторизованного пользователя. Указать несколько отправителей в поле From также не получится .

Проверьте себя

Ответьте на несколько вопросов по теме Почта, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 В форме просмотра сообщения можно обучить систему фильтрации спама, применить к письму созданное ранее правило и пометить прочитанное сообщение на удаление.
Верно
Неверно
2 В Журнале обработки почты запросы к серверу выделены синим цветом, а ответы от сервера - зелёным.
Верно
Неверно
3 Правила обработки почты могут применяться только при их принудительном вызове.
Верно
Неверно
4 Система Bitrix Framework позволяет создавать неограниченное число учетных записей электронной почты.
Верно
Неверно
5 Пользователи могут подключать почтовые ящики только в сервисах из списка Почтовых сервисов, который настраивается в административном разделе сайта.
Верно
Неверно
6 Получателей письма, указанных в поле Скрытая копия, не видят главные адресаты, однако видят получатели, указанные в поле Копия.
Верно
Неверно
7 При создании почтовых шаблонов в визуальном редакторе недопустимо использование компонентов.
Верно
Неверно
8 У каждого почтового события можно посмотреть шаблоны, которые к нему привязаны.
Верно
Неверно
9 Работа через Bitrix Framework требует настройки отправки и приема электронной почты.
Верно
Неверно


Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. В списке всех типов почтовых событий найдите тип Зарегистрировался новый пользователь. Отредактируйте почтовый шаблон этого типа согласно условиям:
    • В поле Кому должен подставляться email пользователя, зарегистрировавшегося на сайте;
    • Нужно отправлять скрытую копию письма на email администратора сайта, указанный в настройках Главного модуля;
    • В тему письма должно подставляться название сайта и текст "Поздравляем с успешной регистрацией!";
    • В тексте письма нужно сообщить пользователю его логин на сайте.

    Решение

  2. Добавьте новый пользовательский почтовый ящик и в качестве владельца укажите себя:
    • Почтовый сервис: yandex
    • Почтовый адрес (имя входа): example@yandex.ru

    Решение

  3. Для созданного ранее почтового ящика добавьте правило обработки почты, при котором будут удаляться все сообщения, удовлетворяющие следующим условиям:
    • Вероятность что сообщение спам: больше 30%
    • Размер сообщения: больше 2 мегабайт

    Правило должно срабатывать сразу же при получении почты.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Сайты24

Сайты 24 - встроенный в CMS "1С-Битрикс: Управление сайтом" конструктор сайтов, позволяющий создавать веб-страницы без программирования.

Как использовать модуль, подробно рассказано в курсе Контент-менеджер в главе [ds]Сайты24.[/ds][di] Сайты24 — встроенный в CMS "1С-Битрикс: Управление сайтом" конструктор сайтов, позволяющий создавать веб-страницы без программирования. Сайты 24 идеально подходит для создания неограниченного числа страниц, лендингов и полноценных сайтов и взаимодействия с вашим интернет магазином.

Подробнее...[/di]

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

Внимание! Если используется собственное веб-окружение, а не штатная виртуальная машина BitrixVM, то нужно учесть, что модуль Сайты24 по нестандартным портам работать не будет. Корректная работа в коробке Битрикс24 возможна только при работе портала по стандартным портам (443). Для работы созданного модулем сайта на контроллере прописывается редирект на портал, где нет возможности указать нестандартный порт.

Для настройки модуля Сайты 24 перейдите на страницу Настройки > Настройка Продукта > Настройки модулей > Сайты 24:

sites24.png

На закладке Настройки указываются код шаблона лендинга и индивидуальные шаблоны для сайтов.

Здесь же указываются пути к лендингам относительно вашего домена, т.е. сайта главного модуля. Именно по такому адресу созданная страница будет доступна после публикации.

nastr_sites2.png

В Прочих настройках можно указать [dw]Ключ API для Google Images[/dw][di]Ключ API потребуется для корректной работы с сервисами Google. Общая Инструкция получения ключа API Google приведена в документации.

Для использования в карточках Сайтов24 коллекции картинок Google Images нужно подключить сервис Custom Search API.



После подключения можно будет выбирать в карточках картинки из коллекции Google:

site24_1.png [/di], Сколько дней хранить удаленные элементы и Инфоблоки для источников

На закладке Доступ настраиваются права работы групп пользователей с модулем Сайты 24.

Работа в данной вкладке аналогична таковой для модуля [ds]Веб-формы.[/ds][di] На вкладке Доступ указывается уровень доступа к настройкам форм и результатам заполнения.

Чтобы добавить право доступа для какой-либо группы пользователей, нажмите ссылку Добавить право доступа. В противном случае ко всем группам пользователей, кроме администраторов, будет применено право доступа По умолчанию.

Подробнее...[/di]

Примечание: подробное описание полей формы приведено в Пользовательской документации к продукту.

Как использовать модуль, подробно рассказано в курсе Контент-менеджер в главе [ds]Сайты24.[/ds][di] Сайты24 — встроенный в CMS "1С-Битрикс: Управление сайтом" конструктор сайтов, позволяющий создавать веб-страницы без программирования. Сайты 24 идеально подходит для создания неограниченного числа страниц, лендингов и полноценных сайтов и взаимодействия с вашим интернет магазином.

Подробнее...[/di]


Материалы по теме:



Сайты 24 на собственном домене

У пользователей довольно часто встречается такая потребность – публиковать сайты и лендинги с привязкой к отдельному домену. Например, чтобы не дезориентировать посетителей или не загромождать интернет-магазин лишними страницами. Тем более, в случае, если создается сайт для какого-то конкретного случая – акции, распродажи, праздника, открытия сезона. То есть существование сайта или лендинга будет ограничено по времени.

В видео-ролике приведен рекомендуемый порядок действий:

Текстовое описание:

  1. [dw]Создать отдельный домен[/dw][di]О создании, настройке и конфигурировании дополнительных сайтов подробно рассказано в специальном уроке в курсе Многосайтовость. [/di] для публикации лендингов.
  2. В Настройки > Настройки продукта > Сайты > Список сайтов добавить сайт. Прописать для него:
    • ID
    • Название
    • Доменное имя
    • Папку сайта (можно оставить по умолчанию)
    • Путь к корневой папке веб-сервера для этого сайта (рекомендуется нажать ссылку вставить текущий)
    • Название веб-сайта
    • URL сервера
    • E-Mail адрес по умолчанию
    • Выбрать язык и региональные настройки
  3. При создании сайта в Шаблоне сайта выбрать шаблон Landing 24.
  4. В настройках модуля Сайты 24 напротив нужного сайта указать корневой путь, то есть просто /.
  5. В папке того сайта, на котором будут публиковаться лендинги, не должно быть индексной страницы. Так как модуль проверяет её наличие при создании лендингов, и если она уже есть, ничего не создает в этой папке. В таком случае в административной части, в Контент > Файлы и папки > папка созданного домена нужно удалить файл index.php. Это единственное действие, выполняемое в "ручном" режиме, не автоматически.
  6. Опубликовать любую страницу на вашем домене. То есть в административной части перейти в меню Сайты 24, далее в папку нужного домена, и именно из нее создать лендинг. Можно выбрать любой шаблон, он автоматически привяжется к домену.

Таким образом создаваемые сайты будут привязаны к домену.


Материалы по теме:



Блок с компонентом внутри

В презентации 1С-Битрикс: Управление Сайтом 18.0 было объявлено, что в модуль Сайты24 можно добавлять стандартные или собственные компоненты. Для этого их нужно "обернуть" в специальный код и разместить в блоках. Таким образом можно реализовать практически любую бизнес-логику.

Создать свой блок достаточно просто. Вам потребуется знание PHP и HTML и тщательное изучение документации о создании блока и о файле манифеста. Также рекомендуем посмотреть вебинар.

Например, давайте разместим в блоке [dw]компонент опроса[/dw][di]Все компоненты расположены на специальной панели в визуальном редакторе

komp.png[/di]. Это ведь довольно частый кейс, чтобы узнать что-то о наших посетителях или их потребностях. Возьмем для простоты уже готовый опрос, который мы делали в уроке Создание и публикация опроса.

  Видеоурок

  Порядок работы


Обратите внимание! Работа с php-скриптом в визуальном редакторе имеет некоторые особенности. Если вы создаете файлы и папки средствами интерфейса административного раздела, в папках автоматически создаются индексные страницы index.php - их можно удалить. А в файлах добавляются коды вызова footer.php и header.php - их тоже следует удалять.

  1. Создаем в /bitrix/blocks/ папку proba, а в ней папку opros.

    Все блоки обязательно размещаются на диске по пути /bitrix/blocks/. Папку для добавления своего блока вы можете назвать как угодно, используя латиницу, цифры, символы "." и "-". Помните, что имя папки будет служить также и символьным кодом блока и должно быть уникально.
  2. Создаем файл block.php. Это тело блока. В нём размещаем код (с помощью виз. редактора, как HTML):

    <section class="landing-block">
            <div class="landing-node-text">
            Здесь будет опрос
            </div>
    </section>
    
  3. Создаем файл .description.php. Это и есть "обертка" - файл манифеста. Открываем его на редактирование [dw]как PHP[/dw][di][/di]. Удаляем содержимое и размещаем код:

    <?php
    if (!defined('B_PROLOG_INCLUDED') || B_PROLOG_INCLUDED !== true)
    {
       die();
    }
    return array(
        'block' => array(
            'name' => "Опрос",
        ),
        'cards' => array(),
        'nodes' => array(
            '.landing-block-text' => array(
                'name' => "Заголовок",
                'type' => 'text',
            )
            ),
            '.landing-block-node-text' => array(
                'name' => "Текст",
                'type' => 'text',
            )
    );
    ?>
    
  4. Очищаем кэш с помощью кода и [dw]выполнения php-команды[/dw][di]php_string.png[/di]:

    if (\Bitrix\Main\Loader::includeModule('landing'))
    {
       \Bitrix\Landing\Block::clearRepositoryCache();
    }
  5. [dw]Создаем страницу[/dw][di] new_site.png
    [/di] в разделе Сайты 24.
  6. Проверяем, появился ли наш блок в [dw]списке блоков[/dw][di]add_block.png[/di]. И размещаем его на созданной странице.
  7. Теперь можно добавить в файл block.php код самого компонента. Не забудьте проверить ID опроса (VOTE_ID):

    <?$APPLICATION->IncludeComponent(
    	"bitrix:voting.current",
    	"",
    	Array(
    		"AJAX_MODE" => "N",
    		"AJAX_OPTION_ADDITIONAL" => "",
    		"AJAX_OPTION_HISTORY" => "N",
    		"AJAX_OPTION_JUMP" => "N",
    		"AJAX_OPTION_STYLE" => "Y",
    		"CACHE_TIME" => "3600",
    		"CACHE_TYPE" => "A",
    		"CHANNEL_SID" => "-",
    		"VOTE_ALL_RESULTS" => "N",
    		"VOTE_ID" => "6"
    	)
    );?><br>
    
  8. Чтобы увидеть изменения на странице после изменений в файле block.php, следует удалить со страницы старый блок и добавить новый. Либо на время разработки добавить в код константу LANDING_DEVELOPER_MODE. Кэш при этом очищать не нужно.
  9. Если вы хотите редактировать что-то в компоненте, вам нужно будет менять файл манифеста, а именно задавать ключи nodes, style и др. Подробно о полях манифеста рассказано в документации.
  10. Не забываем очищать кэш после каждого изменения в файле манифеста, то есть в .description.php.
  11. В случае возникновения ошибок при выполнении скрипта можно включить расширенный [dw]вывод ошибок[/dw][di]Секция exception_handling отвечает за обработку ошибок.
    Подробнее...[/di] в файле настройки параметров ядра .settings.php.

Другие компоненты вы можете вставлять таким же образом. Примеры кодов вызова компонентов можно найти в Пользовательской документации.


Проверьте себя

Ответьте на несколько вопросов по теме Сайты 24, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Адрес создаваемой страницы задается относительно сайта главного модуля (вашего домена).
Верно
Неверно
2 Права работы групп пользователей с модулем Сайты 24 задаются на странице Настройки > Пользователи > Уровни доступа.
Верно
Неверно
3 Можно публиковать сайты и лендинги с привязкой к отдельном домену.
Верно
Неверно
4 В модуль Сайты24 можно добавлять стандартные или собственные компоненты.
Верно
Неверно
5 Файл манифеста нужен для запуска модуля Сайты 24.
Верно
Неверно


Служба сообщений

Модуль Служба сообщений позволит Вам осуществлять маркетинговую рассылку не только на электронную почту, но посредством SMS-сообщений, а также регистрироваться на сайте по номеру телефона! Все, что для этого нужно - установить сам модуль и подключить хотя бы одну из служб отправки SMS.

Настройка SMS-рассылки

Настройка SMS-рассылки включает три этапа:

  1. [ds]Настройка модуля[/ds][di] Настройка модуля осуществляется в Административном разделе (Настройки >Настройки продукта > Настройки модулей > Служба сообщений).

    Подробнее...[/di]
  2. Подключение sms-сервисов:
    • [ds]Подключение сервиса SMS.RU[/ds][di] Даже если вы уже зарегистрированы на sms.ru, вам нужно выполнить настройку на этой странице. Просто используйте те данные, которые вы указали при самостоятельной регистрации. Разберем по шагам, как подключить сервис SMS.RU.

      Подробнее...[/di]
    • [ds]Подключение сервиса Twilio.com[/ds][di] Перед тем, как подключить данный сервис, необходимо сначала зарегистрироваться на одноименном сайте Twilio.com, а уже потом подключить сервис в Вашем «1С-Битрикс: Управление сайтом».

      Подробнее...[/di]
    • [ds]Подключение сервиса sms.edna.ru[/ds][di] Перед тем, как подключить данный сервис, необходимо сначала зарегистрироваться на одноименном сайте Twilio.com, а уже потом подключить сервис в Вашем «1С-Битрикс: Управление сайтом».

      Подробнее...[/di]
  3. [ds]Создание маркетинговой рассылки[/ds][di] Создать рассылку можно из двух разделов: Рассылки (Маркетинг > Email-маркетинг > Рассылки) и Старт (Маркетинг > Email-маркетинг > Старт). Процесс создания рассылок одинаков, за исключением начальной кнопки (кнопки создания новой рассылки)

    Подробнее...[/di]

При верном выполнении всех действий Вы сможете выбирать, какую именно рассылку сделать:

Нажмите на рисунок, чтобы увидеть полное изображение



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

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

Прежде всего, не забудьте установить [dw]этот модуль[/dw][di][/di] (Настройки >Настройки продукта > Модули).

Настройка модуля осуществляется в Административном разделе на странице Настройки > Настройки продукта > Настройки модулей > Служба сообщений :

Нажмите на рисунок, чтобы увидеть рисунок в полномасштабном режиме

При настройке модуля нужно подключить хотя бы одну из служб отправки SMS. Все доступные для подключения службы отображены в списке в поле Службы отправки SMS.

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

Более подробные инструкции, как привязать выбранный сервис к Вашему «1С-Битрикс: Управление сайтом» или «Битрикс24 в коробке», описаны в соответствующих уроках:

Примечание: SMS-ассистент. В списке служб отправки SMS есть служба SMS-ассистент — это сервис для СМС-рассылки в Республике Беларусь. Укажите логин и пароль своего аккаунта в этом сервисе и нажмите кнопку [dw]Подключить[/dw][di] [/di], или же можете протестировать работу этого сервиса в демо-режиме (30 бесплатных СМС), указав в [dw]специальной форме[/dw][di] [/di] следующие данные:
  • [dw]УНП[/dw][di] Учётный номер плательщика (УНП) — единый уникальный номер, присваиваемый каждому плательщику при постановке на учёт в налоговом органе в Беларуси, и используемый по всем налогам, сборам, пошлинам, в том числе по таможенным платежам. [/di]
  • Контактный телефон
  • E-mail

  Отключение сервиса

Чтобы отвязать сервис откройте настройки модуля Служба сообщений в Административном разделе (Настройки >Настройки продукта > Настройки модулей > Служба сообщений), в поле Службы отправки SMS выберите отвязываемый сервис, далее кликните по шестеренке в левом верхнем углу и нажмите Сбросить настройки.

  Документация по теме




Подключение сервиса SMS.RU

Подключение сервиса

При [ds]настройке[/ds][di] Настройка модуля осуществляется в Административном разделе на странице Настройки > Настройки продукта > Настройки модулей > Служба сообщений.

Подробнее...[/di] модуля Служба сообщений нужно подключить хотя бы одну из служб отправки SMS. В этом уроке выясним, как подключить сервис SMS.RU.

Даже если вы уже зарегистрированы на SMS.RU, вам нужно выполнить настройку на этой странице. Просто используйте те данные, которые вы указали при самостоятельной регистрации. Разберем по шагам, как подключить сервис:

  1. При выборе сервиса SMS.RU на Рабочем столе откроется окно с описанием возможностей SMS маркетинга и формой регистрации в сервисе, в которую необходимо внести [dw]свои данные[/dw][di]При вводе телефона предпочтительнее формат "+7", но допускается и "8".[/di]:

    Нажмите на рисунок, чтобы увидеть окно с описанием возможностей SMS маркетинга

  2. Далее нужно [dw]ввести проверочный код[/dw][di]

    [/di], который пришел на указанный вами телефонный номер. Если у вас уже есть аккаунт на SMS.RU, то подключение произойдёт без этого шага.
  3. Теперь можно [dw]протестировать работу сервиса[/dw][di]

    [/di] и отправить сообщение на номер, указанный при регистрации.
  4. На четвертом этапе выводится сообщение о [dw]дальнейших действиях[/dw][di]

    [/di], которые нужно выполнить непосредственно на самом сайте sms.ru.

    После выполнения всех вышеперечисленных действий нажмите кнопку Завершить тестирование.

Примечание: Сразу после регистрации Вам будет доступно 5 бесплатных SMS для тестирования сервиса. Они будут отправляться только на тот номер, который Вы указывали при регистрации в сервисе. Для подключения полной версии нужно на сайте sms.ru в личном кабинете выполнить три несложных действия.

Три действия для подключения полной версии (для просмотра нажмите +).



Подключение сервиса Twilio.com

При [ds]настройке[/ds][di] Настройка модуля осуществляется в Административном разделе на странице Настройки > Настройки продукта > Настройки модулей > Служба сообщений.

Подробнее...[/di] модуля Служба сообщений нужно подключить хотя бы одну из служб отправки SMS. В этом уроке выясним, как подключить сервис Twilio.com.

  Регистрация на Twilio.com

Перед тем, как подключить данный сервис, необходимо сначала зарегистрироваться на одноименном сайте Twilio.com, а уже потом подключить сервис в продукте 1C-Битрикс.

Рассмотрим процесс регистраци:

  1. На главной странице сайта Twilio.com в правом верхнем углу выберем [dw]Sign up[/dw][di] [/di]
  2. Далее необходимо внести свои данные в форму регистрации:

    На этом этапе происходит проверка указанного вами email – на электронную почту будет отправлено [dw]письмо.[/dw][di] [/di] Необходимо перейти по ссылке в письме.

  3. На следующем этапе нужно указать [dw]телефонный номер,[/dw][di]

    [/di] на который должен прийти проверочный код.

    Примечание: Этот номер также будет использоваться для аутентификации при входе в Twilio Console. Специалист Twilio onboarding также может использовать этот номер для связи с Вами. Если Вы не хотите, чтобы с вами связывались по этому номеру телефона, отметьте [dw]соответствующую опцию.[/dw][di] [/di]

  4. Далее последовательно ответим на вопросы:
    • Do you write code? – [dw]Yes[/dw][di] [/di]
    • What is your preferred language? – [dw]PHP[/dw][di] [/di]
    • What is your goal today? – [dw]Use Twilio in a project[/dw][di] [/di]
    • What do you want to do first? – [dw]Send or receive a SMS[/dw][di] [/di]

  5. Теперь перейдем в раздел Programmable SMS > Learn and Build > Build:

    Нажмем кнопку Get a number. При нажатии этой кнопки будет сгенерирован телефонный номер, с которого будут оправляться Ваши сообщения.

    Для продолжения регистрации кликнем

  6. И, наконец, [dw]выберем страны[/dw][di] [/di], в которые планируется отправлять сообщения (Programmable SMS > Settings > Geo Permissions).

На этом регистрация окончена!

  Подключение Twilio к сайту

А теперь разберем по шагам, как подключить сервис Twilio.com в Вашем «1С-Битрикс: Управление сайтом» или «Битрикс24 в коробке»:

  1. Сначала на сайте Twilio.com в разделе Dashboard скопируем [dw]Account SID и Auth token.[/dw][di] [/di]
  2. В настройках модуля Служба сообщений (Настройки > Настройки продукта > Настройки модулей > Служба сообщений) кликнем по кнопке [dw]Компания Twilio.com.[/dw][di] [/di]

    На Рабочем столе откроется окно с описанием возможностей SMS маркетинга и формой регистрации в сервисе Twilio.com, в которую необходимо ввести скопированные Account SID и Auth token:

    Нажмите на рисунок, чтобы увидеть окно с описанием возможностей SMS маркетинга

  3. Если все вышеперечисленные действия выполнены правильно, то в результате Вы увидите [dw]соответствующие сообщения.[/dw][di]

    [/di]

  Создание списка номеров для отправки

При регистрации на Twilio.com отправлять SMS можно только на подтвержденные номера.

Для создания списка таких номеров пройдите по этой ссылке и внесите номера в специальную форму.

Ограничения сервиса и блокировка

Ознакомьтесь с ограничениями бесплатной пробной версии.

Если Ваша учётная запись заблокирована (выводится сообщение [dw]"You have been suspended"[/dw][di] [/di]), обратитесь в службу технической поддержки сервиса Twilio.

Примечание: для заблокированных аккаунтов [ds]стандартные способы[/ds][di] Стандартно с техподдержкой сервиса Twilio можно связаться через ссылку в верхней панели навигации или из консоли.

Подробнее...[/di] связи с техподдержкой могут быть недоступны.

В этом случае разлогиньтесь из своего аккаунта и задайте вопрос техподдержке через всплывающее окно (сначала [dw]сформулируйте вопрос,[/dw][di] [/di] а затем прокрутите список готовых ответов и кликните кнопку [dw]Contact Support[/dw][di] [/di]) и заполните открывшуюся форму обращения.

Далее ответьте на вопросы техподдержки (вопросы придут на указанный Вами email) для верификации Вашего аккаунта.



Подключение сервиса sms.edna.ru

При [ds]настройке[/ds][di] Настройка модуля осуществляется в Административном разделе на странице Настройки > Настройки продукта > Настройки модулей > Служба сообщений.

Подробнее...[/di] модуля Служба сообщений нужно подключить хотя бы одну из служб отправки SMS. В этом уроке выясним, как подключить сервис sms.edna.ru.

Сервис предоставлен компанией Edna

Примечание: Сервис службы отправки SMS sms.edna.ru доступен с версии 21.200.0 модуля Служба сообщений.

Больше информации по интеграции сервиса с продуктами 1С-Битрикс вы найдете на специальной странице edna.ru/sms-bitrix/.

Подключить сервис легко и быстро:

  1. Зарегистрируйтесь в сервисе Edna;
  2. Перейдите на страницу Профиля в личном кабинете:

    Нажмите на рисунок, чтобы увидеть рисунок в полномасштабном режиме

    • В поле 1 сгенерируйте ваш API ключ. Он понадобится вам для настройки интеграции со стороны Битрикс;
    • В поле 2 добавьте специальный адрес Callback URL, на который будут направлены события смены статусов сообщений. Этот параметр нужен, если Вы хотите знать статусы отправки ваших сообщений (например, Отправлено или Доставлено). Адрес стандартный, в нём лишь необходимо заменить адрес Вашего сайта: [имя_сайта]/bitrix/tools/messageservice/callback_smsednaru.php.
      Важно! Сайт должен работать по протоколу [dw]HTTPS[/dw][di]Перевод сайта на работу по протоколу https обеспечивает защиту от атак, основанных на прослушивании сетевого соединения. В административном разделе создана специальная страница с указанием последовательности работ по настройке HTTPS соединения.

      Подробнее в курсе Администратор. Базовый.[/di].
  3. Переходим к настройкам со стороны Битрикс. На странице настроек модуля Настройки > Настройки продукта > Настройки модулей > Служба сообщений нажмите на ссылку Компания sms.edna.ru. Откроется специальная форма, внизу которой есть поле X-API-KEY*. Введите API ключ, сгенерированный ранее в профиле сервиса Edna:

  4. Нажимайте кнопку Сохранить. Выполнится подключение сервиса и в форме отобразится информация об [dw]учетной записи[/dw][di][/di].


Подключение сервиса Edna.ru WhatsApp

Сервис предоставлен компанией Edna

Примечание: изначально сервис Edna.ru WhatsApp в полном объеме был доступен только в 1С-Битрикс24. С версии 22.300.0 модуля Служба сообщений интеграция со службой Edna.ru WhatsApp возможна и в 1С-Битрикс: Управление сайтом. Однако стандартные рассылки через интерфейс в 1С-Битрикс: Управление сайтом работать не будут. Эта интеграция была создана для облегчения работы разработчикам и партнёрам, которые могут подключить службу Edna.ru WhatsApp через интерфейс, а потом уже самостоятельно через код настроить рассылку в WhatsApp.

Подключите сервис всего за несколько простых шагов:

  1. Выполните настройки со стороны сервиса im.edna.ru:
    • Авторизуйтесь или создайте новый аккаунт.
    • Зарегистрируйте и настройте номер, который будет использован при отправке сообщений.
    • Перейдите на страницу профиля в личном кабинете и скопируйте API-ключ:

      Нажмите на рисунок, чтобы увидеть рисунок в полномасштабном режиме
    • В поле Callback URL укажите следующий адрес: https://[имя_вашего_сайта]/bitrix/tools/messageservice/callback_ednaru.php.

      Нажмите на рисунок, чтобы увидеть рисунок в полномасштабном режиме
      Важно! Сайт должен работать по протоколу [dw]HTTPS[/dw][di]Перевод сайта на работу по протоколу https обеспечивает защиту от атак, основанных на прослушивании сетевого соединения. В административном разделе создана специальная страница с указанием последовательности работ по настройке HTTPS соединения.

      Подробнее в курсе Администратор. Базовый.[/di].
    • Скопируйте код отправителя из вашего аккаунта. Взять его можно в разделе Сводка, рядом с номером телефона в скобках (в примере это Bitrix2_WA).

  2. Выполните настройки со стороны 1С-Битрикс: Управление сайтом или 1С-Битрикс24:
    • На странице настроек модуля Настройки > Настройки продукта > Настройки модулей > Служба сообщений нажмите на ссылку Edna.ru WhatsApp.
    • В открывшейся форме введите скопированные ранее API-ключ и код отправителя:

    • Нажмите кнопку Сохранить.

    Выполнится подключение сервиса и в форме отобразится информация об учетной записи.



Проверьте себя

Ответьте на несколько вопросов по теме Служба сообщений, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Модуль Служба сообщений позволяет осуществлять маркетинговую рассылку посредством SMS-сообщений, а также регистрироваться на сайте по номеру телефона.
Верно
Неверно
2 При настройке модуля нужно подключить хотя бы одну из служб отправки SMS.
Верно
Неверно
3 Если вы уже зарегистрированы на SMS.RU, то никаких настроек производить не нужно.
Верно
Неверно
4 При регистрации на Twilio.com отправлять SMS можно только на подтвержденные номера.
Верно
Неверно
5 Служба SMS-ассистент доступна во всех странах.
Верно
Неверно


Социальная сеть

Модуль Социальная сеть предназначен для формирования сообществ на сайте, обмена мгновенными сообщениями, организации совместной работы пользователей сайта и реализации других задач, связанных с функционированием социальных сообществ.

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

Управления общими настройками модуля выполняется на странице Настройки > Настройки продукта > Настройки модулей > Социальная сеть.

  Настройки модуля социальной сети

На вкладке Настройки модуля социальной сети содержатся глобальные настройки модуля:

Нажмите на рисунок, чтобы увидеть рисунок в полномасштабном режиме

Примечание: Информацию о всех настройках модуля Социальная сеть вы найдете в Пользовательской документации по продукту. Далее в уроке рассмотрим лишь некоторые настройки модуля.

  • Следить за всеми сообщениями Живой ленты по умолчанию - при отмеченной опции в социальной сети каждое новое событие (комментарий, сообщение и т.п) будет "поднимать" данное событие наверх ленты новостей. Пользователь сам решает следить или нет с помощью кнопки Больше не следить под сообщением ленты новостей. При отключенной опции, чтобы следить за событием, необходимо нажать кнопку Следить под нужным сообщением из новостной ленты.
  • Разрешать адресовать "Всем" сообщения в Живой ленте - при отмеченной опции появляется возможность указать пользователей или группы пользователей, которым разрешено адресовать сообщения для всех пользователей портала/сайта.
  • Отображать адресацию "Всем" по умолчанию - при отмеченной опции по умолчанию будет включена адресация Всем при создании нового сообщения. Опция появляется при включенной опции Разрешать адресовать "Всем" сообщения в Живой ленте. Важно понимать, что если опция включена, то всегда есть риск, что пользователь отправит своё сообщение на всех [dw]случайно[/dw][di]Например, сотрудник финансового отдела создаёт сообщение с финансовыми показателями компании и забывает проверить и изменить адресата. Т.к. по умолчанию установлена отправка Всем, сообщение увидят все пользователи.[/di].
  • Отображать в Живой ленте по умолчанию только мои записи, записи моих групп и адресованные лично мне - опция включает режим, при котором выбираются только записи, события, относящиеся к рабочим группам пользователя, а также его собственные или адресованные лично ему.

    Примечание: Опция доступна только в продукте «1С-Битрикс: Управление сайтом».
    Режим включается/выключается глобально администратором. При выключенном режиме у каждого пользователя есть возможность включить его индивидуально в Живой ленте (пункт [dw]Только мои группы[/dw][di][/di] в меню Все сообщения).

Подробнее о параметрах, настраиваемых для каждого сайта в отдельности

  Права на доступ

Вкладка [dw]Права на доступ[/dw][di][/di] предназначена для настройки прав на доступ групп пользователей к модулю. Возможно назначение следующих прав:

  • [D] Работа в публичной части без права создания групп – пользователям разрешается просмотр страниц социальной сети с возможностью редактирования своего профиля. (По умолчанию стоит у всех групп.)
  • [K] Работа в публичной части с правом создания групп – пользователям разрешается просмотр страниц социальной сети с возможностью редактирования своего профиля и создания рабочих групп.
  • [R] Просмотр административной части – управление элементами социальной сети из публичной части и разрешение просмотра в административном разделе без права модификации.
  • [W] Полный доступ – полный доступ к ресурсам модуля.

Примечание: Управлять определенным функционалом можно как для всех сайтов сразу, так и для конкретных сайтов путем установки флагов в соответствующие поля.

  Документация по теме



Управление темами групп

  Создание новой темы

В модуле Социальная сеть введено понятие темы групп.

Тема групп – это совокупность рабочих групп, обладающих некоторой общей тематикой, признаком.

Таким образом, чтобы иметь возможность создать рабочую группу, необходимо сначала создать в системе темы групп. Управлять темами могут только те пользователи, которые имеют полный доступ к модулю.

Важно! Создание, редактирование и удаление тем рабочих групп осуществляется только в административном разделе, а самих рабочих групп – в публичном разделе.

Чтобы создать новую тему групп в административном разделе, перейдите на страницу административного интерфейса Сервисы > Социальная сеть > Темы и нажмите кнопку Новая тема на контекстной панели.

Откроется форма создания новой темы:

Укажите Название темы, выберите Сайт темы, на котором будут доступны рабочие группы данной темы, и задайте индекс сортировки в поле Сортировка. Сохраните внесенные изменения, созданная тема добавится в [dw]список тем групп.[/dw][di] [/di]

  Создание новой рабочей группы

Теперь можно создать новую рабочую группу, привязанную к данной теме. Они создаются из [ds]публичного интерфейса[/ds][di]Группа создаётся по кнопке Создать на странице Группы стандартного интерфейса корпоративного
портала Битрикс24.

Нажмите на рисунок, чтобы увеличить

На сайте, созданном на основе "1С-Битрикс: Управление сайтом", кнопка создания может выглядеть
по разному, в зависимости от дизайна сайта.[/di]. В административном разделе они выводятся в списке на странице Группы (Сервисы > Социальная сеть > Группы). В этом списке возможно только удаление группы:

Примечание: в «Битрикс24 в коробке» меню раздела Рабочие группы является динамическим и хранится в файле /workgroups/.left.menu_ext.php. В коде должны быть правильно определены шаблоны путей к теме групп и к группе:

$strGroupSubjectLinkTemplate = COption::GetOptionString("socialnetwork", "subject_path_template", "/workgroups/group/search/#subject_id#/", SITE_ID);
$strGroupLinkTemplate = COption::GetOptionString("socialnetwork", "group_path_template", "/workgroups/group/#group_id#/", SITE_ID);

  Документация по теме




Публичный интерфейс модуля

Публичный интерфейс социальной сети создается с помощью комплексного компонента Социальная сеть (socialnetwork). Компонент позволяет, создавая физически одну страницу, организовать полноценную социальную сеть пользователей сайта.

Примечание: при создании публичного интерфейса социальной сети можно использовать два отдельных комплексных компонента Социальная сеть - пользователь (socialnetwork_user) и Социальная сеть - группы (socialnetwork_group).

В результате размещения и настройки компонента создается раздел и выводится [dw]Персональная страница пользователя[/dw][di]У каждого пользователя Битрикс24 есть своя персональная страница с личной информацией.
Подробнее...[/di].



Смайлы социальной сети

Добавление и редактирование смайлов, доступных для использования в сообщениях социальной сети, осуществляется на странице Смайлики социальной сети (Сервисы > Социальная сеть > Смайлы):

Для добавления нового смайлика служит кнопка Новый смайлик. Для того чтобы отредактировать уже существующий смайлик, воспользуйтесь соответствующим пунктом меню действий.

Форма создания (редактирования) смайлика имеет следующий вид:

Документация по теме:



Проверьте себя

Ответьте на несколько вопросов по теме Социальная сеть, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Большинство параметров модуля Социальная сеть настраиваются для каждого сайта в отдельности.
Верно
Неверно
2 Создавать темы группы можно как в публичном разделе, так и в административном.
Верно
Неверно
3 Создание, изменение и удаление рабочей группы выполняется только в административном разделе.
Верно
Неверно
4 Комплексный компонент Социальная сеть создает полноценную соц. сеть пользователей сайта с использованием только одной физической страницы.
Верно
Неверно
5 Существует специальная страница административного раздела для добавления своих смайлов (Сервисы > Социальная сеть > Смайлы).
Верно
Неверно



Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. Выполните настройки модуля Социальная сеть:
    1. Оставьте возможность отправлять всем сообщения в живой ленте только Администратору;
    2. Отключите адресацию сообщений всем по умолчанию;
    3. Настройте права на доступ:
      • По умолчанию - работа в публичной части без права создания групп;
      • Для Контент-редакторов и Администраторов интернет-магазина - работа в публичной части с правом создания групп.

    Решение

  2. Опубликуйте социальную сеть на сайте.

    Решение

  3. Создайте тему групп и рабочую группу по этой теме. Проверьте настройки модуля, выполненные в первом задании, авторизуясь под разными пользователями: администратором сайта, контент-редактором (или администратором ИМ) и обычным зарегистрированным пользователем. После удалите рабочую группу из интерфейса административного раздела.

    Примечание: Для того, чтобы проверить отправку сообщений в живую ленту, понадобится [dw]создать группу блогов[/dw][di]Создание и изменение групп выполняется на странице Группы блогов (Сервисы > Блоги > Группы блогов)

    Подробнее в курсе Контент-менеджер.[/di] и указать её в настройках компонента в секции Настройки блогов. Иначе, при попытке отправить сообщение, Вы увидите уведомление об ошибке.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Социальные сервисы

В настоящий момент модуль предоставляет аутентификацию посетителей сайта на внешних сервисах авторизации. Внешняя авторизация облегчает посетителям регистрацию на сайте: не нужно заводить еще один логин/пароль, можно воспользоваться уже имеющимся на одном из известных сервисов.

Полный и актуальный список поддерживаемых социальных сервисов можно увидеть на странице настроек модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы).

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

  Настройка параметров модуля

Для управления сервисами необходимо перейти на страницу настроек модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы).

Нажмите на рисунок, чтобы увеличить

Рассмотрим закладку Настройки:

  • Разрешить отправку активностей пользователей в социальные сети - отправка в соцсети активности пользователей, например при начале или завершении рабочего дня;

    Примечание: Указанная настройка только для [ds]Битрикс24[/ds][di] Одним из важнейших показателей, характеризующих ответственность ваших сотрудников является рабочее время. Используйте инструмент Рабочий день и учитывайте рабочее время, не отрываясь от собственных дел. Не нужно вводить никаких дополнительных условий и нанимать HR-менеджера - система сама покажет вам, как люди выполняют свою работу.

    Подробнее на helpdesk.bitrix24.ru[/di].

  • Транслировать твиты пользователей с хештегом в живую ленту - указываются twitter-хештег, с которым будут [dw]транслироваться твиты пользователя[/dw][di]Примечание: Предварительно нужно настроить сервис Twitter, а также пользователь должен указать свой twitter-аккаунт в Профиле пользователя в публичной части сайта.
    Подробнее...[/di] в Живую ленту;
  • Далее из списка выбираются необходимые социальные сервисы, с помощью которых будет доступна авторизация;
  • Ниже под каждым сервисом есть рекомендации и ссылки для регистрации сайта в своей системе получения соответствующих уникальных идентификаторов и секретных ключей. А в главе Примеры настройки некоторых сервисов приведены инструкции по подключению.

    Примечание: Сервисы [ds]OpenID[/ds][di]Стандарт OpenID позволяет пользователю использовать одну учетную запись, зарегистрированную у OpenID-провайдера, на множестве других сайтов.

    Подробнее о стандарте вы можете почитать на Википедии.[/di] не требуют дополнительных настроек. Примеры таких сервисов: Liveinternet, Livejournal, Blogger.

Если требуется использовать разные социальные сервисы авторизации на дополнительных сайтах, то перейдите на вкладку нужного сайта и включите их с помощью опции [dw]Применить индивидуальные настройки для этого сайта[/dw][di][/di]. Дальнейшие настройки аналогичны общим, указанным выше.

На что еще требуется обратить внимание при настройке проекта:
  • Некоторые сервисы требуют обращения только по HTTPS. Поэтому крайне желательно, чтобы PHP был собран с библиотекой openssl.
  • Если на проекте используются различного вида редиректы (mod_rewrite), убедитесь, что при редиректе не перекодируются параметры GET.

  Регистрация и авторизация

На вкладке Авторизация разрешите, если необходимо, регистрацию новых пользователей [dw]через соцсети[/dw][di]В противном случае можно будет только авторизовываться с помощью аккаунтов соцсетей, предварительно привязанных к профилю пользователя.[/di]. Также определите группы пользователей сайта, для которых запрещена авторизация через соцсервисы и привязка соцсервисов к своим аккаунтам:

Примечание: В опции Регистрация новых пользователей указывается разрешено ли посетителям самостоятельно регистрироваться на сайте. За это отвечает опция Позволять ли пользователям регистрироваться самостоятельно? в настройках главного модуля на вкладке Авторизация (Настройки > Настройки продукта > Настройки модулей > Главный модуль).

  Шифрование токенов авторизации

Примечание: Шифрование токенов авторизации доступно с версии 19.0.100 модуля Социальные сервисы.

Нажатие кнопки [dw]Включить шифрование токенов авторизации[/dw][di]Обратите внимание на предупреждение. Включение шифрования - необратимое действие.

[/di] включает хранение авторизационных токенов пользователей социальных сервисов в зашифрованном виде.

После включения функции, а также на всех [dw]новых установках продукта[/dw][di]На новых установках продукта шифрование включено автоматически.
Новая установка - это установка, выполненная из дистрибутива с версией модуля выше 19.0.100[/di], на закладке Шифрование отобразится статус: Шифрование токенов авторизации активировано

  Документация по теме




Добавление сервисов в форму авторизации

В зависимости от выполненных в модуле Социальные сервисы настроек меняется внешний вид формы авторизации.

  Как выглядит форма авторизации

Если в настройках модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) на вкладке Настройки сняты галочки со всех социальных сервисов в разделе Внешние сервисы, то форма авторизации примет [dw]простой вид[/dw][di][/di] c возможностью только ввода логина и пароля.

Если же включено и настроено использование каких-либо [dw]соц. сервисов из списка[/dw][di][/di], форма авторизации отобразит кнопки выбранных социальных сервисов. В 1С-Битрикс: Управление сайтом:

Нажмите на рисунок, чтобы увеличить

В Битрикс24 коробочная версия:

Нажмите на рисунок, чтобы увеличить

Для того, чтобы авторизация через выбранные сервисы работала, необходимо выполнить отдельные настройки для каждого сервиса в настройках модуля. В главе Примеры настройки некоторых сервисов приведены инструкции по подключению.

Примечание: Не все социальные сервисы требуют настроек для работы. Если для выбранного социального сервиса нет дополнительной секции в настройках модуля, значит достаточно отметить его в списке сервисов и он станет доступен для авторизации на сайте. Такими сервисами являются все сервисы [ds]OpenID[/ds][di]Стандарт OpenID позволяет пользователю использовать одну учетную запись, зарегистрированную у OpenID-провайдера, на множестве других сайтов.

Подробнее о стандарте вы можете почитать на Википедии.[/di]. Примеры таких сервисов: Liveinternet, Livejournal, Blogger.

  Процесс авторизации

Процесс авторизации через соц. сервисы зависит от их типа. Сервисы условно поделим на две группы:

  1. Являются провайдерами OpenID: если сервис использует OpenID, то при нажатии на кнопку соц. сервиса выводится форма, куда пользователь вводит свой openid identity. Для удобства предлагается ввести только специфичную для сервиса часть. Например:


  2. Работают по собственным протоколам авторизации: при нажатии на кнопку для каждого сервиса открывается отдельное окно с собственным диалогом авторизации внешнего сервиса.

После успешной аутентификации пользователь возвращается на сайт и авторизуется. Если это первый вход пользователя, то он добавляется в список пользователей сайта. При этом на вкладке Пользователь (Настройки > Пользователи > Список пользователей > [пользователь]) в поле Тип авторизации указывается сервис авторизации.



Примеры настройки некоторых сервисов

Общие примечания

Внимание: для некоторых сервисов, например: LiveID, Office365, Google, Одноклассники, ВКонтакте, Мой мир@mail.ru, Twitter и Facebook*, необходимо зарегистрировать на этих сервисах приложение (ссылки и рекомендации указаны в каждой группе настроек для этих сервисов).

Важно! При настройке приложений обращайте внимание на параметры адрес сайта, домен - они чрезвычайно важны для правильной работы сервисов. Чаще всего авторизация будет работать и для поддоменов.

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:

* Социальная сеть признана экстремистской и запрещена на территории Российской Федерации.



Яндекс

Яндекс


Получение ID приложения и Пароля приложения

Для Яндекса необходимо указать в [dw]настройках[/dw][di]soccerv1.png[/di] модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) параметры ID приложения и Пароль приложения, а в настройках сервиса специальную ссылку.

Получить уникальные ID приложения и Пароль приложения нужно на сайте Яндекс OAuth.

Для этого необходимо:

  1. Зарегистрировать новое приложение по одноименной ссылке в настройках модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы). При регистрации приложения обязательно указать Название приложения:

    soccerv2.png

  2. Ввести в [dw]поля[/dw][di]Поля Callback URI становятся доступны только при выборе опции Веб-сервисы. Второе поле появляется после нажатия кнопки Добавить.[/di] Callback URI #1 и Callback URI #2 [dw]адреса[/dw][di]soccerv3.png[/di] из настроек модуля Социальные сервисы (в примере - www.mysite.ru - ваш адрес сайта).
  3. В разделе Доступы выставить [dw]права[/dw][di] - Доступ к адресу электронной почты

    - Доступ к дате рождения

    - Доступ к логину, имени и фамилии, полу

    - Доступ к портрету пользователя [/di] для API Яндекс ID. Для авторизации почтовых ящиков в блоке Яндекс.Почта также отметить нужные [dw]права[/dw][di]soccerv6.png[/di]. Нажать кнопку Сохранить
  4. Далее откроется страница, где будут указаны [dw]ID приложения и Пароль приложения[/dw][di]soccerv7.png[/di], которые нужно вписать в соответствующие поля в настройках модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) :

Настройка работы Битрикс24.Диск и Яндекс.Диск

Для работы Битрикс24.Диск с Яндекс.Диск нужно в разделе Доступы выставить права для [dw]Яндекс.Диск REST API[/dw][di]soccerv8.png[/di]:

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



Box.com


Box.com

Внимание! Сервис Box.com поддерживает работу только по протоколу https.

Для Box.com необходимо указать в [dw]настройках[/dw][di][/di] модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) параметры Идентификатор (client_id) и Секретный код (client_secret), а в настройках сервиса специальную ссылку.

Получить уникальные Идентификатор (client_id) и Секретный код (client_secret) нужно на сайте Box Developers.

Для этого необходимо:

  1. Создать новое приложение по одноименной ссылке в настройках модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы). Вы можете создать Пользовательское приложение (Custom App).

    box1.png

  2. При выборе метода идентификации нужно выбрать Пользовательскую идентификацию [dw]Standard OAuth 2.0 (User Authentication)[/dw][di]box3.png[/di] и задать уникальное имя вашему приложению.
  3. В настройках доступа отметьте галочку [dw]Write all files and folders stored in Box[/dw][di][/di], чтобы иметь возможность скачивать файлы на Битрикс24.Диск. Эту опцию можно включить в настройках и позже;
  4. После [dw]создания приложения[/dw][di]box5.png[/di] вы сможете перейти к просмотру конфигурации. На странице конфигурации можно скопировать параметры Client ID и Client Secret и вписать их в соответствующие поля в настройках модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы):

    box4.png

  5. И в поле Redirest URI ввести адрес из настроек модуля Социальные сервисы (в примере - www.mysite.ru - ваш адрес сайта) и нажать кнопку Save Changes.

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



Google

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:

  Получение Идентификатора (Client ID) и Секретного кода (Client secret)

Для Google OAuth 2.0 необходимо указать в [dw]настройках[/dw][di][/di] модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) параметры Идентификатор (Client ID) и Секретный код (Client secret), а в настройках сервиса специальную ссылку.

Получить уникальные Идентификатор (Client ID) и Секретный код (Client secret) нужно на сайте Google Developers Console.

Для этого необходимо:

  1. Создать новый проект с помощью кнопки [dw]Создать проект[/dw][di]google2.png[/di] на странице Управление ресурсами.

    google3.png

  2. Выбрать в [dw]списке[/dw][di]google4.png[/di] нужный проект, если автоматически не произошло перенаправление в созданный проект:
  3. Затем нужно перейти в раздел Учетные данные, нажать на кнопку Создать учетные данные и выбрать [dw]Идентификатор клиента OAuth[/dw][di]google5.png[/di]
  4. При создании Идентификатора клиента OAuth может потребоваться [dw]настройка Окна запроса доступа[/dw][di]google6.png[/di] OAuth

  5. Далее нужно выбрать тип приложения - в нашем случае это Веб-приложение, [dw]вписать необходимые данные[/dw][di]google13.png[/di] для своего сайта (в примере - https://www.mysite.ru - ваш адрес сайта) в поля:
    • Имя - может быть любым,
    • Разрешенные источники JavaScript - ваш адрес сайта,
    • Разрешенные URl перенаправления - [dw]адрес из настроек модуля[/dw][di]https://www.mysite.ru/bitrix/tools/oauth/google.php[/di] Социальные сервисы и [dw]адрес редиректа[/dw][di]https://www.mysite.ru/bitrix/tools/mail_oauth.php[/di].

    Примечание: Обратите внимание, что можно указать несколько адресов [dw]Разрешенные URl перенаправления[/dw][di]google14.png[/di] (Authorized redirect URls), это позволяет использовать одно приложение на разных сайтах/доменах.

  6. После нажатия кнопки Создать на странице появятся необходимые уникальные [dw]Идентификатор клиента (Your Client ID) и Секретный код клиента (Your Client secret)[/dw][di]google15.png[/di], которые нужно вписать в настройках модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы).
  7. [dw]Секретный код клиента (Client secret)[/dw][di]google16.png[/di] всегда можно найти, кликнув на нужном Идентификатор клиента (Client ID) в [dw]списке[/dw][di]google17.png[/di]

  API key и другие разрешения API

Для корректной работы компонентов и модулей 1С-Битрикс: Управление сайтом и Битрикс24 с сервисами Google вам могут понадобиться и другие разрешения API.

Например, если вам нужно будет синхронизировать [dw]Календарь[/dw][di]Календарь — удобный модуль для организации расписания и планирования дня.
Подробнее...[/di] с Google.Calendar, как упоминается в [dw]Настройках социальных сервисов[/dw][di]razr_api.png[/di]. Или если нужно будет интегрировать Битрикс24.Диск, выводить [dw]подсказки от Google в поле "Адрес"[/dw][di]Чтобы в поле «Адрес» в реквизитах компаний автоматически выводились подсказки от Google или чтобы можно было указывать адрес непосредственно на карте понадобятся 2 ключа.
Подробнее...[/di] в реквизитах компаний в Битрикс24 и т.д.

Для добавления разрешений в консоли Google.APIs:

  • Создайте новый или откорректируйте уже существующий [dw]Ключ API[/dw][di]google19.png[/di]. Ключ также следует указать в [dw]настройках[/dw][di][/di] модуля Социальные сервисы
  • Укажите допустимый тип приложений, источник перехода (адрес вашего сайта) и отметьте галочками допустимые API в списке:

    google20.png
  • Если в списке нет нужных вам сервисов, воспользуйтесь строкой [dw]Поиск API и сервисов[/dw][di]google21.png[/di]
  • И [dw]включите[/dw][di]google22.png[/di] найденный API

  Для работы с документами

Для функционала работы с документами через Google Docs нужно:

  • авторизоваться в Google и выполнить Настройки Google в модуле Социальные сервисы.
  • перейти в меню Библиотека и найти опцию [dw]Google Drive API[/dw][di][/di] либо быстрым поиском, либо из списка Популярных API.
  • включить [dw]Google Drive API[/dw][di]google_drive.png[/di] и [dw]Gmail API[/dw][di]gmail_api.png[/di] c помощью кнопки Включить.
  • активировать опцию [dw]Включить работу с документами через внешние службы (Google Docs, MS Office Online и другие)[/dw][di] disk_nastr.png[/di] в настройках модуля Диск (Настройки > Настройки продукта > Настройки модулей > Диск).

Google+

Важно! С версии 20.0.0 модуля Социальные сервисы возможность авторизации через Google+ недоступна.

Google+

Для подключения Google+ [dw]используются параметры приложения[/dw][di] [/di] [ds]Google.[/ds][di] Получение Идентификатора (Client ID) и Секретного кода (Client secret)

Для Google OAuth 2.0 необходимо указать в настройках модуля Социальные сервисы
(Настройки > Настройки продукта > Настройки модулей > Социальные сервисы)
параметры Идентификатор (Client ID) и Секретный код (Client secret), а в настройках
сервиса - специальную ссылку.

Получить уникальные Идентификатор (Client ID) и Секретный код (Client secret) нужно
на сайте Google Developers Console.

Подробнее...[/di]

Перейти в меню Библиотека

biblio.png

и найти опцию [dw]Google+ API[/dw][di]poisk.png[/di] либо быстрым поиском, либо из списка Популярных API:

В настройках приложения необходимо разрешить доступ к Google+ API c помощью кнопки [dw]Включить[/dw][di] vkl.png [/di].

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



LiveID

  Получение Live ID Application ID и Live ID Secret Key

Live ID - Учётная запись Microsoft. Сервис идентификации и авторизации в сетевых сервисах Microsoft, таких как OneDrive, Office365, Bing, Outlook, Skype, Xbox Live, MSN, Microsoft Store. Используется как частная учетная запись (с подпиской "Для дома") для интеграции вашего портала с MS Office Online.
Внимание! Начиная с февраля 2021 года на порталах [dw]Microsoft Application registrations portal[/dw][di]lid5.png[/di] и [dw]Microsoft Graph[/dw][di]lid6.png[/di] постепенно прекращается поддержка новых приложений Live SDK. Теперь рекомендуется создавать приложения для личных учетных записей Microsoft на портале Azure.
  • Подробное описание регистрации приложений на Azure приведено в отдельном уроке.
  • В тексте ниже приведен алгоритм регистрации на платформе разработчиков для тех, кто перейдет туда из настроек модуля Социальные сервисы.
Примечание: В настройках модуля Социальные сервисы в секции Внешние сервисы не забудьте отметить сервис [dw]LiveID[/dw][di][/di] как разрешённый.

Для LiveID необходимо указать в [dw]настройках[/dw][di] lid1.png[/di] модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) параметры Live ID Application ID и Live ID Secret Key.

Для этого необходимо:

  1. На платформе Microsoft для разработчиков [dw]зарегистрировать новое приложение[/dw][di]lid2.png[/di] - задать его имя и нажать кнопку Создать приложение. Предварительно потребуется авторизоваться с учетной записью Майкрософт.
  2. После создания приложения Код приложения используется как Live ID Application ID в настройках модуля Социальные сервисы - LiveID продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы)

  3. lid4.png

  4. Далее создайте новый пароль, скопируйте и вставьте его в поле Live ID Secret Key в настройках модуля.
  5. Добавьте платформу Веб и вставьте в поле URL-адреса перенаправления адрес из настроек модуля (в примере - www.mysite.ru - ваш адрес сайта).

  Настройка работы с документами через MS Office Online

Примечание. До февраля 2014 MS Office Online назывался MS Office Web Apps. В курсе эти названия используются равнозначно.

Для функционала работы с документами через MS Office Online нужно активировать опцию [dw]Включить работу с документами через внешние службы (Google Docs, MS Office Online и другие)[/dw][di]disk_nastr.png[/di] в настройках модуля Диск (Настройки > Настройки продукта > Настройки модулей > Диск).

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:

Office365

  Получение Client ID и Key

Примечание. С апреля 2020 г. облачное приложение Office365 для работы онлайн с Word, Excel, PowerPoint и др. называется Microsoft 365. В курсе эти два названия используются равнозначно.

Важно! Чтобы можно настроить интеграцию вашего портала с Office365, вы должны быть авторизованным или иметь рабочую учетную запись Office365 (xxxx@xxxx.onmicrosoft.com) с подпиской Office365 для Бизнеса. Частные учетные записи LiveID с подпиской Офис365 для Дома не подходят! Для заведения рабочей учетной записи Office365 обратитесь к администратору вашего Битрикс24.

Для Office 365 необходимо указать в [dw]настройках[/dw][di] [/di] модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) параметры ИД клиента (Client ID) и Ключ (Key).

Для этого необходимо:

  1. В Центре администрирования Azure Active Directory перейти в раздел [dw]Все службы[/dw][di][/di] (потребуется рабочая учетная запись Майкрософт - xxxx@xxxx.onmicrosoft.com, простой логин LiveID не подходит), выбрать раздел [dw]Регистрация приложений[/dw][di][/di] перейти по кнопке Новая регистрация:

    new_app.png

  2. При [dw]регистрации приложения[/dw][di][/di] нужно задать отображаемое имя и поддерживаемые типы учетных записей.
    Важно! Регистрируемое приложение должно быть [dw]мультитенантным[/dw][di]Мультитенантность - элемент архитектуры программного обеспечения, где единый экземпляр приложения обслуживает множество организаций-клиентов. Подробнее... [/di].
    В поле [dw]URI перенаправления[/dw][di][/di] задайте тот адрес, который прописан в настройках модуля Социальные сервисы. Некоторые параметры можно будет изменить впоследствии.

  3. В настройках приложения выбираем раздел [dw]Разрешения API[/dw][di][/di] и выбираем нужные для вашего приложения разрешения.

    Например, для входа понадобится разрешение profile, а для офлайн-доступа - offline-access.

    А для корректной интеграции с Битрикс24.Диск и работы Битрикс24.Документы, приложению нужны разрешения:

    • в Microsoft Graph - [dw]Files.ReadWrite.All[/dw][di]api1.png[/di]
    • в SharePoint - [dw]чтение и запись файлов пользователей[/dw][di]api2.png[/di].

  4. Далее в настройках приложения выбираем раздел Сертификаты и секреты, нажимаем кнопку +Новый секрет клиента, заполняем Описание , назначаем срок действия ключа и нажимаем кнопку [dw]Добавить[/dw][di] [/di].

    После добавления ключа, сам ключ появится в графе [dw]Значение[/dw][di][/di].

    Значение ключа вводится в поле Ключ (Key) в разделе Социальные сервисы - Office365 продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) - в примере: mg?2fPjt]v_TT3LOO7f3oK/bQaEu=wOs

    Важно! Значение создаваемого ключа показывается только один раз, если вы не скопируете значение ключа и перейдете в другой раздел, то придется создавать ключ заново.

  5. Значение поля ИД клиента (Client ID) для приложения можно взять в разделе [dw]Обзор[/dw][di][/di].
  6. Поле Домен организации (Tenant) - необязательное, представляет собой возможность ограничения на стороне портала для редактирования документов "только для своих" - тех, кто состоит в компании рабочей учетной записи. Также такое ограничение владелец тенанта может сделать еще и на стороне Office365.

    Рабочий аккаунт Office365, как правило, имеет вид user@company.onmicrosoft.com, где: user - имя пользователя, а company - название компании в бизнес-аккаунте Office365.

    Таким образом, Домен организации (Tenant) в нашем случае будет company.onmicrosoft.com.

  Многофакторная идентификация

Многофакторная идентификация Azure (MFA) помогает защитить доступ к данным и приложениям. В Azure Active Directory её возможности доступны для защиты учетных записей глобальных администраторов, а в Microsoft 365 Бизнес можно полнофункционально использовать MFA с применением политик условного доступа, чтобы требовать многофакторную проверку подлинности.

Развертывание Многофакторной идентификации Azure (Azure MFA) для приложений подробно описано в документации Microsoft.

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:

  Для работы с документами

Для функционала работы с документами через Office365 нужно:

  • Авторизоваться или завести рабочую учетную запись [dw]Office365[/dw][di]С апреля 2020 г. облачное приложение Office365 для работы онлайн с Word, Excel, PowerPoint и др. называется Microsoft 365. В курсе эти два названия используются равнозначно.[/di] (xxxx@xxxx.onmicrosoft.com) с подпиской Office365 для Бизнеса.
  • Включить возможность делиться файлами. Для этого открыть Центр администрирования SharePoint, развернуть Политики, выбрать Общий доступ и установить [dw]разрешения[/dw][di]share_link.png[/di].
  • Выполнить Настройки Office365 в модуле Социальные сервисы.
  • Активировать опцию [dw]Включить работу с документами через внешние службы (Google Docs, MS Office Online и другие)[/dw][di]disk_nastr2.png[/di] в настройках модуля Диск (Настройки > Настройки продукта > Настройки модулей > Диск).

  Интеграция с почтой

Компания Microsoft до конца 2022 года в целях улучшения безопасности полностью отключит Basic Authentication (обычную проверку подлинности). В связи с этим работа по старой схеме авторизации (через IMAP-логин и пароль) из Битрикс24 с почтой онлайн-сервисов Office365 и Exchange Online станет невозможна.

Таким образом, для подключения почты Office365 и Exchange Online также потребуется предварительно настроить интеграцию с Office365 с поддержкой OAuth 2.0, как описано выше.

Мы советуем переходить на новую систему авторизации уже сейчас, не дожидаясь отключения.

Данные рекомендации касаются только онлайн-сервисов Microsoft Office365 и Exchange Online. Если у вас в компании используется свой корпоративный сервер Microsoft Exchange, то для подключения почты вы можете продолжать использовать провайдер IMAP. Данные для подключения вы можете узнать у системного администратора вашей компании.

Одноклассники

Одноклассники

Для Одноклассников необходимо указать в [dw]настройках[/dw][di][/di] модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) параметры ID приложения, Ключ приложения и Секретный код приложения, а в настройках сервиса специальную ссылку:

Получить уникальные ID приложения, Ключ приложения и Секретный код приложения нужно на сайте разработчиков Одноклассников.

Для этого необходимо:

  1. Получить права разработчика по адресу: http://ok.ru/devaccess.
  2. [dw]Добавить приложение[/dw][di]add_odn.png[/di] по ссылке.
  3. Далее на странице Основные настройки приложения указать название, тип, имя в ссылке и описание приложения:

  4. ok1.png
  5. Нажать кнопку Добавить платформу и выбрать [dw]OAuth[/dw][di]ok3.png[/di]. На странице появится дополнительный раздел [dw]Настройки внешнего приложения[/dw][di]ok2.png[/di], где в поле "Список разрешённых redirect_uri" нужно указать адрес из настроек модуля Социальные сервисы (в примере - www.mysite.ru - ваш адрес сайта).
  6. После нажатия кнопки Сохранить на почту, указанную в аккаунте разработчика, придет [dw]письмо с данными[/dw][di]ok4.png[/di] Application ID, Публичный ключ приложения и Секретный ключ приложения, которые нужно вписать в соответствующие поля в настройках модуля Социальные сервисы продукта «1С-Битрикс»:
Примечание: По умолчанию сервис Одноклассники не имеет доступа к email пользователя.

Для запроса прав (в частности, GET_EMAIL - доступ к email адресу пользователя) необходимо прислать id приложения и перечень нужных разрешений с описанием кейса их использования на адрес api-support@ok.ru.

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



Twitter

Twitter

Примечание: С 10 марта 2020 года Twitter изменил Соглашение разработчика. Теперь нужно отправить заявку на доступ к API и получить подтверждение, только после этого можно будет приступать к настройкам вашего приложения.
  1. Для получения Ключа приложения (Consumer key) и Секретного кода приложения (Consumer secret) необходимо зарегистрировать приложение Twitter по [dw]ссылке[/dw][di]

    twitter1.png

    [/di].
  2. После [dw]входа в аккаунт[/dw][di]twitter3.jpg[/di] разработчика [dw]создать приложение[/dw][di]twitter4.png[/di].
  3. При регистрации приложения указать в поле Callback URL [dw]путь[/dw][di]

    twitter2.png

    [/di] из настроек модуля.
  4. После регистрации приложения в закладке [dw]Keys and Tokens[/dw][di]

    twitter5.jpg

    [/di] получить ключи приложения - API key (Consumer key) и API secret key (Consumer secret).
  5. В закладке Permissions изменить Access Level на Read, Write and Access direct messages.
  6. Указать выданные сервисом Ключ приложения (Consumer key) и Секретный код приложения (Consumer secret) в соответствующих полях в [dw]настройках[/dw][di]

    twitter6.png

    [/di] модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы):

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



Битрикс24.Network

Битрикс24.Network – сеть для бизнес-коммуникаций, которая объединяет в одной среде партнеров, коллег, поставщиков и других контрагентов, который позволяет свести использование различных инструментов для общения к минимуму и хранить историю общения в одном месте.

Подключение сервиса Битрикс24.Network


  1. Кликнуть на ссылку [dw]Зарегистрировать сайт в Битрикс24.Network[/dw][di][/di].
  2. В всплывающем окошке ввести [dw]адрес сайта[/dw][di]b24-1.png[/di].
  3. Автоматически будут получены [dw]Идентификатор портала и Секретный код портала[/dw][di]b24-2.png[/di].
  4. Нажав на кнопку Вставить, полученные идентификаторы [dw]автоматически вставятся[/dw][di]b24-3.png[/di] в нужные поля формы.


ВКонтакте


ВКонтакте

Чтобы пользователи могли авторизоваться на вашем сайте с помощью своей учётной записи сервиса ВКонтакте, выполните следующие действия:

  1. Создайте приложение ВКонтакте. Для этого пройдите по ссылке на сайт ВКонтакте.

    Примечание. Если вы создаёте приложение впервые, то сначала автоматически запустится мастер создания бизнес-аккаунта. На [dw]первом шаге[/dw][di] [/di] выберите тип аккаунта (юридическое лицо, индивидуальный предприниматель или физическое лицо). Поля [dw]второго шага[/dw][di]Пример второго шага для аккаунта типа Индивидуальный предприниматель:

    [/di] подставятся в зависимости от выбранного типа аккаунта – заполните их и нажмите кнопку Создать аккаунт.

    Если бизнес-аккаунт уже создан, то при переходе по указанной выше ссылке запустится мастер создания приложений. В этом мастере [dw]выберите[/dw][di] [/di] в качестве платформы вариант Web, а также [dw]укажите[/dw][di] [/di] Базовый домен вашего сайта (например, mysite.ru) и Доверенный redirect URL вида https://ваш_сайт/bitrix/tools/oauth/vkontakte.php.

    Нажмите кнопку Готово, и приложение будет создано. Далее перейдите в настройки созданного приложения и скопируйте данные из полей ID приложения и Защищённый ключ:

    Нажмите на рисунок, чтобы увеличить

    Чтобы просмотреть защищённый ключ, кликните по [dw]значку[/dw][di] [/di] справа от ключа. Вам потребуется подтвердить свои действия, указав код из отправленного смс-сообщения. После этого ключ можно будет скопировать.

  2. В настройках модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) отметьте в качестве внешнего сервиса платформу ВКонтакте, а чуть ниже [dw]вставьте[/dw][di] [/di] скопированные ранее ID приложения и Защищённый ключ.

Примечание. Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



Dropbox

Dropbox

Внимание! Сервис Dropbox поддерживает работу только по протоколу https.

Для Dropbox необходимо указать в [dw]настройках[/dw][di] [/di] модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) параметры App key и App secret, а в настройках сервиса специальную ссылку:

Получить уникальные App key и App secret нужно на сайте Dropbox Developer.

Для этого необходимо:

  1. Cоздать приложение Dropbox по одноименной ссылке в настройках модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы). При регистрации приложения в центре разработчиков нужно отметить Choose an API, выбрать тип доступа и указать название приложения в поле Name your app:

    db1.png

  2. После нажатия кнопки Create app откроется [dw]страница с настройками приложения[/dw][di]db2.png[/di], где ввести в поле Redirect URIs необходимые данные - адрес из настроек модуля Социальные сервисы (в примере - www.mysite.ru - ваш адрес сайта) и нажать кнопку Add:
  3. На закладке Permissions отметить [dw]разрешения[/dw][di]dropbox_permissions.png[/di] files.metadata.read и files.content.read.
  4. На закладке Settings получить App key и App secret, которые нужно вписать в соответствующие поля в настройках модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) :

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



Facebook*

* Социальная сеть признана экстремистской и запрещена на территории Российской Федерации.

  Настройка авторизации через Facebook*

Чтобы пользователи Вашего сайта могли авторизоваться через социальную сеть Facebook*, необходимо указать:

    В настройках модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы):
  1. Идентификатор приложения (App ID);
  2. Секретный код приложения (App Secret);
  3. В настройках приложения Facebook*:
  4. Специальную ссылку вида https://ваш_сайт/bitrix/tools/oauth/facebook.php в поле "Действительные URL-адреса для перенаправления OAuth" .

  Подключение пошагово

Прежде всего [dw]зарегистрируемся[/dw][di] [/di] в качестве разработчика на сайте Facebook for developers. Затем нажмем кнопку [dw]«Создать приложение».[/dw][di]fb1.png[/di]

Так как нам нужна авторизация в Битрикс через Facebook*, то в открывшемся окне выберем тип приложения Потребительское и нажмём [dw]Продолжить[/dw][di][/di].

В следующем окне зададим название и контактный адрес приложения, нажмём [dw]Создание приложения[/dw][di]fb3.png[/di], пройдём [dw]каптчу[/dw][di]fb4.png[/di].

Далее поработаем во вкладке Настройки > Основное:

fb5.png


1 скопируем ID приложения и вставим его в соответствующее окно настройки параметров модуля Социальные сервисы;
2 в поле Секрет приложения нажмем кнопку Показать и скопируем код в соответствующее окно настройки параметров модуля Социальные сервисы;
3 укажем домен приложения (адрес нашего сайта), URL-адрес страницы Пользовательского соглашения, Политики конфиденциальности и [dw]Инструкции для удаления данных[/dw][di] В приложениях, которые получают доступ к данным пользователей, должна предоставляться возможность запросить удаление данных. Ваше приложение будет соответствовать этому требованию, если в нем будет доступна функция обратного вызова для запросов на удаление данных или инструкции по удалению данных пользователя из вашего приложения или с сайта. [/di]. Укажем категорию «Бизнес и страницы» и Назначение использования - Вы или принадлежащая вам компания. Загрузим иконку приложения (1024x1024 px на прозрачном фоне);
4 сохраним внесенные изменения;
5 добавим товар. По умолчанию добавится товар Вход через Facebook*.

Теперь перейдем на страницу Вход через Facebook* > Настройки:

fb6.png


6 пропишем адрес, указанный в подсказках настройки модуля Социальные сервисы;
7 переключим слайдер в положение В разработке, [dw]подтвердив[/dw][di]fb7.png[/di] свой выбор.

Готово! Теперь на сайте можно будет авторизоваться и через социальную сеть Facebook*!

Примечание: если при входе на сайт через Facebook* появляется ошибка Invalid Scopes: user_friends, то в настройках созданного приложения перейдите во вкладку Проверка приложения > Разрешения и функции и запросите [dw]расширенный доступ[/dw][di]

Нажмите на рисунок, чтобы увеличить

[/di] для разрешения user_friends.

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:

  "Богатые" ссылки (Rich Links) на Instagram*

Чтобы добавляемые на сайте ссылки на Instagram* были более информативными (т.е. имели описание и изображение), необходимо подключить [dw]функционал[/dw][di] Описываемый функционал доступен с версий модулей Социальные сервисы (socialservices) 21.100.0 и Главный модуль (main) 21.400.0. [/di] "богатые" ссылки (Rich Links):

  • В настройках Главного модуля (Настройки > Настройки продукта > Настройки модулей > Главный модуль) отметьте опцию [dw]Включить богатые ссылки[/dw][di] [/di];
  • В настройках модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) отметьте опцию Использовать приложение для формирования богатых ссылок Instagram*:
  • На сайте Facebook* for developers. в созданное ранее приложение добавьте разрешение "oEmbed".

Функционал "богатых" ссылок начнёт работать после того, как Ваше приложение пройдёт премодерацию в Facebook*.



Мой Мир@mail.ru

Мой Мир@mail.ru

  1. По [dw]ссылке[/dw][di]

    [/di] подключить сайт зарегистрировать свой сайт в системе api.mail.ru.
  2. На [dw]первом шаге[/dw][di]mailru_1.png[/di] согласиться с правилами использования Платформы@Mail.ru.
  3. На [dw]втором шаге[/dw][di]mail_2.png[/di] задать название и адрес главной страницы вашего сайта.
  4. [dw]Скачать файл[/dw][di]mail_3.png[/di] receiver.html по одноименной ссылке, загрузить на свой сайт и указать путь к нему:

    mailru.png

  5. Указать выданные сервисом ID сайта, Приватный ключ, Секретный ключ в соответствующих полях в [dw]настройках[/dw][di] [/di] модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы):

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



Mail.ru

Mail.ru

  1. Создать новое приложение по ссылке.

    Название проекта придумайте сами, загрузите изображение в поле Добавить фото.

    В поле Все redirect_uri внесите [dw]адрес[/dw][di]mailru_2_new.png[/di] из настроек модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы):

    mailru1.png

  2. Для авторизации почтовых ящиков в поле Все redirect_uri дополнительно укажите адрес: https://ваш_сайт.ru/bitrix/tools/mail_oauth.php.

    Внимание: Для авторизации почтовых ящиков необходимо запросить доступ mail.imap для вашего приложения. Запрос доступа осуществляется через поддержку Mail.ru: support@corp.mail.ru. На указанный e-mail напишите письмо с указанием ID Приложения / Client ID и запросом доступа.

  3. Нажать кнопку Подключить сайт, при необходимости [dw]отредактировать приложение[/dw][di]mailru_4.png[/di]. Можно отметить, на каких платформах будет установлено ваше приложение, [dw]сконфигурировать кнопку входа[/dw][di]mailru_5.png[/di] или скопировать её код, выдать права доступа пользователям, пройти модерацию и др.
  4. Указать выданные сервисом [dw]ID приложения и Секрет[/dw][di]mailru2.png[/di] в соответствующих полях в настройках модуля Социальные сервисы продукта «1С-Битрикс» (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы):

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



Apple Sign In

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:

  Apple Sign In

Если у вашего сайта есть собственное мобильное приложение в App Store, использующее вход через социальные сети, то вам [ds]необходимо[/ds][di] Приложения, использующие стороннюю или социальную службу входа в систему (например, вход через Facebook*, вход в Google, вход через Twitter, вход через LinkedIn, вход через Amazon или вход через WeChat) также должно предлагать вход с Apple в качестве эквивалентной опции.

Исключение составляют образовательные, корпоративные, правительственные и бизнес-приложения, использующие собственную авторизацию.

* Социальная сеть признана экстремистской и запрещена на территории Российской Федерации.

Подробнее...[/di] добавить в качестве варианта авторизации систему Sign in with Apple. Это собственная система авторизации компании Apple.

Для подключения этой системы необходимо указать в настройках модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) параметры ID приложения (Service ID), ID ключа, Team ID и Секретный ключ в формате pem:

[dw]Team ID[/dw][di] [/di] можно найти в панели Apple, а настройки остальных параметров рассмотрим далее в уроке.

  ID ключа и Секретный ключ в формате pem

Для получения значений параметров ID ключа и Секретный ключ в формате pem выполните следующие действия:

  1. Войдите в свой аккаунт разработчика Apple Developer.
  2. Перейдите на страницу Certificates, Identifiers & Profiles и на вкладке Identifiers выберите ваше приложение, кликнув по нему:

  3. Отметьте пункт Sign In with Apple:

  4. Перейдите в [dw]раздел[/dw][di] [/di] Keys и сгенерируйте ключ Key ID:

    Сконвертируйте этот ключ в формат pem, выполнив в командной строке

    openssl pkcs8 -in AuthKey_123456.p8 -nocrypt -out AuthKey_123456.pem
    

Далее нужно настроить Service ID — уникальный идентификатор web-приложения.

  Настройка Service ID

Настройте Service ID — уникальный идентификатор web-приложения:

  • Вернитесь на вкладку Identifiers и [dw]добавьте[/dw][di] [/di] новый идентификатор, выбрав тип Service ID, заполните необходимые поля и в поле Sign In With Apple нажмите кнопку [dw]Configure.[/dw][di] [/di]
  • В открывшейся форме выберите Primary App ID вашего приложения, укажите домены и перечислите URL для редиректа после успешного логина (каждый URL с новой строки):

    Нажмите на рисунок, чтобы увеличить

  Дополнительно



Zoom


Zoom

Для подключения возможности авторизации через сервис видеоконференций Zoom необходимо указать:

    В настройках модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы):
  1. ID Приложения;
  2. Секрет.
  3. В настройках приложения Zoom:
  4. В поле "Redirect URL for OAuth" специальную ссылку вида https://ваш_сайт/tools/oauth/zoom.php.
zoom1.png

Подключение пошагово

Для начала работы вы должны быть [dw]зарегистрированы[/dw][di]zoom4.png[/di] и авторизованы на сайте Zoom. Тогда по переходе из настроек модуля Социальные сервисы по ссылке Zoom App Marketplace вы сможете сразу [dw]создать приложение типа OAuth[/dw][di]zoom2.png[/di].

После нажатия кнопки Create откроется [dw]окно создания приложения[/dw][di]zoom5.png[/di], где нужно задать название приложения, указать, может ли оно устанавливаться администратором или любым пользователем, а также, доступно ли внешним пользователям.

В следующем окне появятся [dw]Client ID и Сlient Secret[/dw][di]zoom6.png[/di], которые нужно вписать в соответствующие поля настроек модуля Социальные сервисы.

Не забудьте в поле Redirect URL for OAuth указать адрес: https://ваш_сайт.ru/bitrix/tools/oauth/zoom.php.

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:



Livejournal


Livejournal

Для подключения возможности авторизации через сервис LiveJournal (Живой Журнал, ЖЖ - блог-платформа для ведения онлайн-дневников) необходимо в настройках модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) отметить галочкой опцию Livejournal и сохранить настройки:


jj1.png

Сразу после этого при входе на сайт появится логотип jj4.png.

При клике на него для авторизации будет предложено ввести имя пользователя и войти:

jj2.png

В свою очередь, LiveJournal запросит подтверждение идентификации. Проверьте адрес сайта, запросивший разрешение, укажите тип разрешения.

jj3.png

На этом авторизация через ЖЖ завершена.

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:


Blogger


Blogger

Для подключения возможности авторизации через сервис Blogger (веб-сервис для ведения блогов) необходимо в настройках модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) отметить галочкой опцию Blogger и сохранить настройки:


bl1.png

Сразу после этого при входе на сайт появится логотип bl3.png.

При клике на него для авторизации будет предложено ввести имя блога и войти:

bl2.png

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:


Liveinternet


Liveinternet

Для подключения возможности авторизации через сервис дневников (блогов) www.liveinternet.ru необходимо в настройках модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) отметить галочкой опцию Liveinternet и сохранить настройки:


livi1.png

Сразу после этого при входе на сайт появится логотип livi3.png.

При клике на него для авторизации будет предложено ввести ID дневника и войти:

livi2.png

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:


OpenID


OpenID

Провайдеры OpenID в прошлом были широко распространены. В их число входили такие крупные компании, как Google, Yahoo!, AOL, LiveJournal, MySpace, IBM, Steam, Orange. Со временем каждый из провайдеров, один за другим, стал прекращать свою работу по протоколам OpenID 1.0 и OpenID 2.0, предлагая более безопасные механизмы авторизации на других сайтах.

Для подключения возможности авторизации через сервис OpenID необходимо в настройках модуля Социальные сервисы (Настройки > Настройки продукта > Настройки модулей > Социальные сервисы) отметить галочкой опцию OpenID и сохранить настройки:


open1.png

Сразу после этого при входе на сайт появится логотип open3.png.

При клике на него для авторизации будет предложено ввести идентификатор и войти:

open2.png

Примечание: Со временем социальные сервисы могут изменять внешний вид мастеров регистрации приложений. В уроках могут не отображаться последние изменения. Пожалуйста, сообщайте нам о замеченных вами изменениях.
Для отправки комментария воспользуйтесь расположенной в правом нижнем углу окна браузера кнопкой:


Mail.Ru OpenID


Mail.Ru OpenID

Сервис авторизации Mail.Ru OpenID в настоящее время не используется. Возможность его подключения оставлена для совместимости с более ранними версиями Битрикс Управление Сайтом.

Сейчас авторизация реализована по протоколу OAuth 2.0. Работа с ним подробно описана в уроке Mail.ru.



Проверьте себя

Ответьте на несколько вопросов по теме Социальные сервисы, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 При использовании внешней авторизации через социальный сервис понадобится придумать дополнительный пароль для сайта.
Верно
Неверно
2 Для каждого сайта можно настроить свой набор социальных сервисов для авторизации.
Верно
Неверно
3 Авторизация через выбранные соц. сервисы всегда доступна для всех групп пользователей.
Верно
Неверно
4 В модуле Социальные сервисы возможно запретить регистрацию новых пользователей через соцсети.
Верно
Неверно
5 Для включения сервисов, использующих OpenID, не требуется выполнять дополнительные настройки.
Верно
Неверно



Техподдержка

Модуль технической поддержки позволяет:
  • организовать на сайте систему обращений посетителей к группе сотрудников, отвечающих за консультирование и техподдержку клиентов;
  • назначать ответственных за решение тех или иных вопросов;
  • управлять уровнями технической поддержки (Service Level Agreement - SLA);
  • отслеживать время и эффективность рассмотрения обращений;
  • анализировать оценку получаемых ответов пользователями.

Организация работы службы поддержки

Модуль Техподдержка

Современный корпоративный портал насыщен разнообразными функциями, сориентироваться в которых сотрудникам компании бывает порой непросто. Кроме того, многие производственные компании хотели бы иметь возможность оперативно отвечать на вопросы сотрудников. Особенно это касается порталов, ориентированных на консультирование сотрудников в онлайновом режиме по вопросам использования программного обеспечения, технических устройств и т.п.

Для решения перечисленных задач разработан модуль Техподдержка.

Модуль технической поддержки позволяет:

  • организовать на сайте систему обращений сотрудников компании к группе сотрудников, отвечающих за консультирование и техподдержку;
  • назначать ответственных за решение тех или иных вопросов;
  • управлять уровнями технической поддержки;
  • отслеживать время и эффективность рассмотрения обращений;
  • анализировать оценку получаемых ответов.

Для полноценного управления модулем Техподдержка необходимо обладать правами группы Администраторы.

Дополнительная информация

  Организация работы службы поддержки

Процесс создания и обработки обращений, поступающих в службу технической поддержки, регламентируется соглашением об уровне поддержки (SLA).

SLA – это описание обязательств компании по предоставлению определенного уровня сервиса (в данном случае технической поддержки) тем или иным пользователям. Уровни сервиса используются для управления приоритетами пользователей на получение поддержки.

  • Каждой группе пользователей, обладающей правом на создание обращений в службу поддержки, назначается определенный SLA. Уровень поддержки определяет время реакции на сообщения пользователей данных групп, а также некоторые параметры сообщений.
  • Пользователи могут создавать обращения в службу поддержки следующими способами:
    • через стандартные формы на сайте;
    • посредством электронного письма;
    • посредством телефонного звонка.

    Также некоторые сообщения пользователей на форуме, например, имеющие технический характер или выходящие за рамки тематики форума, могут быть перенесены в службу поддержки. Сообщение может быть перемещено администратором Bitrix Framework или администратором форума с помощью специального интерфейса.

    Каждому сообщению присваивается уникальный номер, что позволяет вести строгий учет поступивших обращений и следить за процессом их обработки.

  • Обращение в службу поддержки рассматривается в соответствии с параметрами SLA. Ответ на обращение публикуется в Bitrix Framework, а также отсылается пользователю по электронной почте. При этом просмотр обсуждения проблемы на Bitrix Framework доступен только пользователю, создавшему обращение, и сотрудникам службы поддержки.

  Интерфейс техподдержки

Интерфейс техподдержки состоит из двух частей:

  • публичной:

    Публичный интерфейс

  • административной:

    Публичный интерфейс

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

Для регулирования [dw]уровня доступа[/dw][di] [/di] пользователей к модулю технической поддержки предусмотрено использование штатных, не настраиваемых, ролей:

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

    Клиент техподдержки получает почтовые извещения обо всех событиях, связанных с созданным им обращением (об изменении статуса сообщения, назначении ответственного, ответе на обращение и т.д.). Также при создании обращения пользователь получает извещение, содержащее исходную информацию об обращении (номер обращения, имя ответственного по умолчанию и т.д.)

  • Сотрудник техподдержки - доступ ко всем пунктам меню и страницам модуля открыт. Пользователь работает с теми обращениями, в параметрах которых он указан как сотрудник, ответственный за решение проблемы.

    Сотрудник техподдержки получает почтовые извещения обо всех событиях, связанных с обращениями, за рассмотрение которых он отвечает. При назначении сотрудника ответственным за какое-либо обращение ему также направляется извещение с параметрами данного обращения.

  • Примечание: доступ к чему-либо в административном режиме будет открыт если пользователь имеет право доступа минимум Чтение к папке bitrix/admin.

  • Администратор техподдержки - пользователь может редактировать справочник техподдержки и любое обращение, а также назначать ответственных за решение проблем. Администратор получает почтовые извещение обо всех обращениях, создаваемых в службу поддержки.


Настройки модуля Техподдержка

Вы организовываете у себя на сайте техническую поддержку? Настройте параметры модуля. Откройте страницу Настройки > Настройки продукта > Настройки модулей > Техподдержка:

Нажмите на рисунок, чтобы увеличить

Заполните поля на закладке Настройки. При этом обратите особое внимание на следующие параметры:

  • Ответственный по умолчанию для новых обращений - укажите ответственного по умолчанию сотрудника техподдержки.
  • Режим по умолчанию при просмотре обращения - задайте режим по умолчанию при работе с обращением клиента: либо в режиме просмотра, либо сразу в режиме ответа.
  • Значение по умолчанию для поля "Закрыть при отсутствии ответа через" - укажите через какое время обращение должно закрываться автоматически, в случае отсутствия ответа от клиента.
  • Как часто автоматически обновлять область "Сейчас в обращении" в административной части - определите период, через который автоматически обновляется список просматривающих сообщение пользователей.
  • Уровень поддержки по умолчанию - задайте уровень, устанавливаемый для обращений по умолчанию.
  • SLA и Категории - выберите способ настройки категорий обращений в соответствии с уровнями поддержки.

Настройте доступ для работающих с модулем групп пользователей на закладке Доступ.

Документация по теме:



Создание мастера

  Создание инфоблока

С помощью средств модуля Информационные блоки в продукте реализована возможность создания мастера техподдержки.

Для этого необходимо создать тип инфоблока и инфоблок, в котором будут храниться вопросы мастера.

Рассмотрим подробнее процесс создания необходимого инфоблока:

  1. Сначала создайте новый [ds]тип инфоблоков[/ds][di] Вам предстоит работа с новым видом информации? Создайте под него свой тип инфоблоков.

    Подробнее...[/di] (например, Сервисы):

  2. Далее создайте [ds]инфоблок[/ds][di] Откройте страницу Контент > Инфоблоки > Типы инфоблоков > название_типа, где вместо название_типа у вас отображается реальное название нужного типа инфоблоков (учтите, что после создания инфоблока его тип уже нельзя будет поменять).

    Подробнее...[/di] (например, [dw]Мастер[/dw][di] [/di]).

    Добавьте [ds]свойства элементов[/ds][di] Согласитесь, что посетителям сайта приятнее читать статьи, где указан автор и добавлены фотографии. Выбирать товары в интернет-магазине удобнее, если приведены их характеристики. Создавайте в инфоблоке свойства и храните информацию в элементах наиболее полно.

    Подробнее...[/di] инфоблока: Тип поля и Значения:

    Нажмите на рисунок, чтобы увеличить

    Посмотреть полные настройки свойства Тип поля

    Посмотреть полные настройки свойства Значения

    Во вкладке [dw]Подписи[/dw][di] [/di] можно для удобства переопределить слово Элемент, заменив его на слово Вопрос (чтобы вместо фразы Добавить элемент отображалось Добавить вопрос и т.п.).

  Создание вопросов мастера

Перейдите в созданный инфоблок (Контент > Сервисы > Мастер).

Первый шаг мастера - указание причины обращения в техподдержку. Для создания такой причины нажмите кнопку [dw]Добавить раздел[/dw][di] [/di], расположенную на контекстной панели. Причина обращения в техподдержку прописывается в поле Название:

Примечание: Количество разделов, подразделов каждого раздела зависит от конкретного вопроса. Таким образом, количество шагов мастера создания обращения зависит от вложенности разделов (разделы могут иметь разный уровень вложенности). В нашем примере всего один уровень вложенности, поэтому в мастере будет два шага: первый шаг - выбор причины обращения в техподдержку, второй шаг - ответ на вопросы.

Перейдите в созданный раздел. Для создания поясняющих вопросов нажмите кнопку [dw]Добавить вопрос[/dw][di] [/di], расположенную на контекстной панели. В открывшейся форме обязательно заполните поле Название, выберите Тип поля (например, выпадающий список) и укажите возможные значения поля:

В результате на странице [dw]Мастер[/dw][di] [/di] (Контент > Сервисы > Мастер) будут содержаться пункты созданных шагов мастера.

При переходе по любой из ссылок отобразятся [dw]вопросы[/dw][di] [/di] для детального описания проблемы.

  Отображение в публичной части

Посмотрим, как будет выглядеть в публичном разделе создание обращения через мастер ([ds]публичный интерфейс[/ds][di] Создание интерфейса техподдержки в публичном разделе сайта или коробочной версии Битрикс24 выполняется посредством размещения компонентов модуля Техподдержка на страницах сайта.

Подробнее...[/di] создан с помощью компонента [comp include_136599]Техподдержка с мастером[/comp]):



Справочники

  О справочниках

Справочники – группы свойств, относящихся к обращениям в службу поддержки. Данные свойства носят информационный характер и не влияют на общий процесс обработки обращений.

Перед началом работы выполните настройку необходимых справочников. Это позволит:

  • автоматизировать процесс назначения ответственных за рассмотрение обращений в зависимости от их параметров;
  • выполнять группировку поступающих обращений;
  • отслеживать уровни сложности проблем и эффективность их решения.

Основные типы справочников используемые в системе:

  • Категории;
  • Критичности;
  • Статусы;
  • Оценки ответов;
  • Частые ответы;
  • Источники;
  • Сложность.

  Категории

Категории обращений – это справочник сообщений, характеризующих область, к которой относится обращение (например, «Оформление заказа», «Оплата заказа», «Ошибки установки»).

Настройка категорий выполняется на странице Категории (Сервисы > Техподдержка > Справочники > Категории):

Категории обращений

При создании обращения пользователь может выбрать подходящую категорию (из числа доступных), к которой, по его мнению, относится описываемая проблема.

Список доступных пользователю категорий определяется [ds]SLA.[/ds][di] SLA – это описание обязательств компании по предоставлению определенного уровня сервиса (в данном случае технической поддержки) тем или иным пользователям. Уровни сервиса используются для управления приоритетами пользователей на получение поддержки.

Подробнее...[/di]

  Критичности

Критичность обращений – это справочник сообщений, отражающих уровень критичности (необходимость срочного решения) описываемой пользователем проблемы. Например, «Низкая», «Средняя», «Высокая».

Управление справочником осуществляется на странице Критичности (Сервисы > Техподдержка > Справочники > Критичности):

Уровни критичности обращений

Уровень критичности назначается пользователем при создании обращения и носит исключительно информационный характер.

Перечень доступных пользователю уровней критичности определяется [ds]SLA.[/ds][di] SLA – это описание обязательств компании по предоставлению определенного уровня сервиса (в данном случае технической поддержки) тем или иным пользователям. Уровни сервиса используются для управления приоритетами пользователей на получение поддержки.

Подробнее...[/di]

При более детальном рассмотрении проблемы сотрудник техподдержки может изменить критичность обращения.

  Статусы

Статусы – это информационные сообщения, характеризующие этап обработки (или состояние) обращения. Например, «Принято к рассмотрению», «В стадии решения», «Успешно решено» и т.п.

Справочник статусов создается на странице Статусы (Сервисы > Техподдержка > Справочники > Статусы):

Статусы обращений

Статус обращения назначается при его рассмотрении сотрудником техподдержки.

  Оценки ответов

Оценки ответов - справочник содержит список оценок, которые клиент техподдержки может выставить за предоставленный ему ответ.

Управление справочником осуществляется на странице Оценки ответов (Сервисы > Техподдержка > Справочники > Оценки ответов):

Оценка ответа

Список доступных пользователю оценок определяется [ds]SLA.[/ds][di] SLA – это описание обязательств компании по предоставлению определенного уровня сервиса (в данном случае технической поддержки) тем или иным пользователям. Уровни сервиса используются для управления приоритетами пользователей на получение поддержки.

Подробнее...[/di]

Оценки ответов используются для контроля качества работы службы технической поддержки.

  Частые ответы

Наиболее часто даваемые ответы могут быть сохранены в справочнике Частые ответы (Сервисы > Техподдержка > Справочники > Частые ответы):

Частые ответы

Далее типовые ответы могут быть использованы при создании ответов на обращения.

Это позволит сократить затраты времени на обработку часто задаваемых вопросов.

  Источники

Источники - справочник содержит список источников, характеризующий откуда или от кого пришло обращение.

Управление справочником осуществляется на странице Источники (Сервисы > Техподдержка > Справочники > Источники):

Источники

Источник обращения указывается сотрудником техподдержки при его рассмотрении.

  Сложность

Сложность - справочник содержит описание уровней сложности обращений. Уровень сложности обращения может использоваться, например, для контроля времени, затрачиваемого на решение проблемы сотрудниками техподдержки, а также при контроле общего уровня поступающих запросов.

Управление справочником осуществляется на странице Сложность (Сервисы > Техподдержка > Справочники > Сложность):

Уровни сложности обращений

Сложность обращения оценивается сотрудником техподдержки при его рассмотрении.



Назначение ответственного за обращение

Внимание! Невозможно назначить ответственными группу сотрудников за одно обращение.

Администратор техподдержки – сотрудник, имеющий полный доступ к модулю техподдержки. Может выполнять обязанности ответственного по обращению.

Ответственный по умолчанию – сотрудник, назначаемый автоматически согласно настройкам модуля. Может выполнять обязанности ответственного по обращению.

Ответственный за обращение – это сотрудники, отвечающие за рассмотрение и решение того или иного конкретного обращения.

Назначение ответственного сотрудника может быть выполнено:

  • автоматически, в соответствии с установленными параметрами назначается ответственный по умолчанию;
  • вручную администратором техподдержки или ответственным по умолчанию [dw]при просмотре конкретного обращения[/dw][di] [/di].

Примечание: Чтобы можно было выбрать сотрудников в поле Ответственный, в случаях, описанных ниже, необходимо присвоить им права сотрудник техподдержки на доступ к модулю техподдержки.

Проще всего для этого создать отдельную группу пользователей (Настройки > Пользователи > Группы пользователей) и на закладке Доступ указать соответствующие права.

  • Автоматическое назначение

    Автоматическое назначение выполняется исходя из следующих параметров:

    • в соответствии с настройками следующих Справочников: Категория, Критичность, Источник (Сервисы > Техподдержка > Справочники > Категории, Сервисы > Техподдержка > Справочники > Критичность, Сервисы > Техподдержка > Справочники > Источник), в зависимости от типа, к которому было отнесено обращение.

      Параметры категории обращений

    • если ответственный в Справочнике не установлен, то назначается сотрудник, ответственный по умолчанию за решение обращения с тем или иным SLA.

      В соответствии с правами пользователя, каждому сообщению присваивается определенный SLA. В настройках SLA (Сервисы > Техподдержка > Уровни поддержки) может быть указан сотрудник техподдержки, ответственный по умолчанию за решение вопросов с указанным уровнем поддержки.

      Параметры SLA

    • если и ответственный для SLA не установлен, то ответственный по умолчанию сотрудник назначается исходя из настроек модуля техподдержки (Настройки > Настройки продукта > Настройки модулей > Техподдержка).

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

  • Назначение вручную

    При просмотре обращения администратор техподдержки (или Ответственный по умолчанию/Ответственный за обращение) может назначить или изменить ответственного за решение проблемы:

    Нажмите на рисунок, чтобы увеличить



Уровни поддержки (SLA)

Настройка уровней сервиса выполняется на странице Уровни техподдержки (SLA) (Сервисы > Техподдержка > Уровни поддержки):

SLA

SLA определяет:

  • время реакции на обращение пользователя (т.е. время, в течение которого сотрудник службы поддержки должен отреагировать на обращение пользователя);

    Время реакции на обращение

    Параметр Считать крайний срок от определяет момент, с которого следует отсчитывать время реакции на обращение клиента: с даты его создания, либо даты последнего ответа клиента. Во втором случае счетчик крайнего срока обнуляется после каждого ответа сотрудника техподдержки. Первым ответом считается само обращение клиента.

  • группы, пользователи которых имеют право на создание обращений с данным уровнем поддержки;

    Настройка прав на SLA

    Примечание: Доступные группы определяются в настройках модуля Техподдержка (Настройки > Настройки продукта > Настройки модулей > Техподдержка), закладка Доступ.

  • доступные категории и уровни критичности обращений, а также оценки ответов на обращение.

    Например, пользователям с обычным SLA может быть предоставлено право на создание обращений с низкой критичностью, а клиентам с SLA «Партнеры» – с низкой, средней и высокой.

  • другие параметры.

Документация по теме:



Создание публичного интерфейса

Создание интерфейса техподдержки в публичном разделе сайта или коробочной версии Битрикс24 выполняется посредством [ds]размещения компонентов[/ds][di] В данной главе описано, как выводить информацию в публичной части сайта с помощью компонентов: как правильно разместить компонент на странице и как настроить его.

Подробнее...[/di] модуля Техподдержка на [ds]уже созданных страницах[/ds][di]Мы полагаем что вы уже изучили начальный курс Контент-менеджера и знаете как создавать страницы. Если вы, всё же, этого не сделали, то почитайте о том как создавать страницы здесь.[/di] в структуре вашего сайта.:

  1. комплексный компонент Техподдержка [comp include_63127](support.ticket)[/comp] позволяет создать полноценную систему техподдержки, с помощью которой можно просмотреть список обращений, добавить своё сообщение или написать новое обращение;

  2. комплексный компонент Техподдержка с мастером [comp include_136599](support.wizard)[/comp] служит для организации полноценного публичного интерфейса технической поддержки, создание обращения в котором выполняется с помощью специального мастера.

    Мастер представляет собой информационный блок, а вопросы мастера являются разделами и элементами этого инфоблока.

  3. Примечание: Настройки компонента Техподдержка с мастером позволяют задать привязку разделов мастера к категориям техподдержки. Для этого необходимо в соответствующей секции настроек компонента отметить опцию Включить привязки, выбрать желаемые разделы в списке (после чего необходимо нажать кнопку OK) и указать соответствующие категории для них:

    Привязка разделов мастера к категориям техподдержки

    Таким образом, можно выполнить настройки, чтобы при выборе вопроса в мастере для обращения назначалась соответствующая категория и ответственный (если он задан для конкретной категории).

Документация по теме:



Механизм для создания обращений по почте

Пользователь может создать обращение в техническую поддержку несколькими способами, например, написав электронное письмо на адрес технической поддержки компании. Чтобы данный механизм получения обращений работал, необходимо выполнить следующие настройки в системе:

  Настройки со стороны модуля "Техподдержка"


  • на странице Источники (Сервисы > Техподдержка > Справочники > Источники) создайте источник E-Mail (если он еще не создан), причем в поле Символьный идентификатор должно быть указано email:

    Создание нового источника

  • на странице Категории (Сервисы > Техподдержка > Справочники > Категории) создайте категорию, которая будет использоваться для обращений, поступающих в техподдержку по почте. В поле Символьный идентификатор обязательно укажите значение email:

    Создание категории обращений

  Настройки со стороны модуля "Почта"


  • на странице Почтовые ящики (Сервисы > Почта > Почтовые ящики) должна быть заведена учетная запись электронной почты службы технической поддержки:

    Список учетных записей (почтовых ящиков)

    Примечание: Подробная информация по добавлению почтовых ящиков представлена в главе Почта, урок [ds]Почтовые ящики.[/ds][di] Управление учетными записями электронной почты осуществляется на странице Почтовые ящики (Сервисы > Почта > Почтовые ящики).

    Для добавления новой учетной записи служит кнопка Добавить, расположенная на контекстной панели. Переход к редактированию существующей записи осуществляется с помощью меню действий (пункт Изменить) либо с помощью двойного клика по соответствующей записи.

    Подробнее...[/di]

  • на странице Правила обработки почты (Сервисы > Почта > Правила) добавьте новое правило обработки почтовых сообщений. При создании правила выберите тип [dw]добавление сообщения в техподдержку.[/dw][di] [/di]
  • В форме создания правила на закладке Параметры обязательно укажите название правила и выберите почтовый ящик, к сообщениям которого будет применяться правило.
  • На закладке [dw]Условия[/dw][di] Условия применения правила [/di] укажите условия, при которых почтовое сообщение будет добавлено в техподдержку:

  • Кроме того, в поле Определять по EMail ранее зарегистрированного пользователя отметьте опцию да, пытаться привязать обращение к пользователю. Затем укажите, к какому сайту привязывать обращение, и выберите категорию, при создании которой в качестве символьного идентификатора было указано значение email (см. вышеизложенное описание по созданию категории Обращения по почте).

    Условия применения правила

    При необходимости можно назначить уровень критичности для новых обращений, полученных по почте (уровни критичности должны быть созданы заранее на странице Сервисы > Техподдержка > Справочники > Критичности.

В результате, если пользователь напишет письмо на адрес технической поддержки компании, то оно будет добавлено в [dw]список обращений.[/dw][di] Обращения в техподдержку [/di]



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

Функционал административного раздела позволяет настраивать доступные параметры обращений (уровень критичности, статусы обращений, оценки ответов и т.д.), а также просматривать и отвечать на обращения пользователей в службу технической поддержки.

Рабочий стол

Общая статистика по поступившим обращениям, а также набор сводных отчетов по работе службы техподдержки доступны в форме, представленной на странице Рабочий стол (Сервисы > Техподдержка > Рабочий стол ТП):

Сводные отчеты реализованы при помощи обзорных таблиц, отображающих количество назначенных, закрытых и открытых обращений:

  • по ответственным сотрудникам службы;
  • по критичности;
  • по текущему статусу;
  • по уровню сложности;
  • по категории;
  • по источнику;
  • по оценкам ответов;
  • по уровню поддержки.


Обращения

На странице Сервисы > Техподдержка > Обращения представлен список всех обращений, поступивших в службу технической поддержки. Специальные индикаторы помогают пользователю наглядно оценить их текущее состояние:

– последний раз в обращение писал клиент техподдержки (вы ответственный);
– последний раз в обращение писал клиент техподдержки (вы не ответственный);
– последний раз в обращение писали вы;
– последний раз в обращение писал сотрудник техподдержки;
– обращение закрыто.

Кроме того, рядом с индикатором может отображаться служебная надпись:

  • Пора отвечать! – заканчивается период, в течение которого на данное сообщение должен быть дан ответ (в соответствии с параметрами SLA);
  • Просрочено! – срок ответа на сообщение истек.

Фильтр страницы настроен таким образом, что по умолчанию для сотрудника техподдержки отображаются обращения, за рассмотрение которых он отвечает:

  • вверху списка отображаются просроченные сообщения (Просрочено!);
  • затем идут сообщения, для которых подошел срок ответа (Пора отвечать!)
  • далее следуют все остальные сообщения в порядке очереди. Очередность обращений устанавливается исходя из даты ответа (в соответствии с параметрами SLA).

Если сотрудник службы поддержки ответил на обращение, то оно отмечается зеленым индикатором и перемещается в конец списка.

Примечание: Положение обращения в очереди не изменится, если:
  • автор изменил либо выполнил последовательное дополнение созданного им обращения новыми сообщениями;
  • сотрудник службы поддержки добавил в обращение комментарий или скрытое сообщение.

Для администратора техподдержки по умолчанию отображаются все обращения, на которые в ближайшее время должен быть дан ответ (т.е. с желтым и красным индикатором).



Работа с обращениями

  Работа с обращениями

Чтобы ответить на обращение, нужно перейти к его изменению с помощью двойного клика по записи в списке либо через соответствующий пункт контекстного меню:

Список обращений

Примечание: администраторам техподдержки отображаются все сообщения, сотрудникам – только те обращения, за рассмотрение которых они отвечают.

Форма просмотра обращения состоит из трех частей:

  • Информационная часть;
  • Обсуждение;
  • Ответ.

  Информационная часть

Данная часть содержит следующие данные:

  • сайт, на котором было создано обращение;
  • источник обращения (е-mail, телефон, web (форма на сайте), форум) и автор обращения;

    Примечание: обращение пользователя в службу поддержки (например, если пользователь создал обращение посредством телефонного звонка) может быть зарегистрировано администратором либо сотрудником техподдержки. При этом с помощью поля Автор обращение привязывается к конкретному пользователю в системе. Таким образом, дальнейшее обсуждение вопроса может проходить в рамках обращения.

  • дату создания и изменения обращения;
  • дату и время последнего результативного ответа на обращение (т.е. ответа, приведшего к изменению индикатора обращения на зеленый).
  • ссылку на историю заказов пользователя - автора обращения. Отображается при условии наличия установленного модуля Интернет-магазин.

  Обсуждение

Данная часть содержит:

  • список всех сообщений в рамках обращения;
  • записи (логи) о действиях сотрудников техподдержки и создателя обращения (выделяются желтым фоном). Например, об ответе на обращение, изменении или дополнении обращения, назначении ответственного и т.д.;
  • записи о действиях системы (отображаются розовым цветом). Например, об изменении индикатора обращения, истечение даты ответа, автоматическом закрытии обращения и т.п.

  Ответ

Данная часть служит для создания ответа на обращение. Сообщение открывается в одном из следующих режимов:

  • Просмотр;
  • Ответ.
Примечание: выбор режима работы с сообщением по умолчанию осуществляется в настройках модуля Техподдержка (Настройки > Настройки продукта > Настройки модулей > Техподдержка):

Если сообщение открыто в режиме Просмотр, то для того чтобы начать отвечать на обращение, нужно переключиться в [dw]режим ответа.[/dw][di] [/di]

Примечание: кнопка режима, в котором ведется работа с обращением, является неактивной.

В [dw]специальной области,[/dw][di] [/di] расположенной в левой части формы, отображается список пользователей, открывших сообщение.

Для каждого пользователя отображается иконка режима, в котором выполняется просмотр сообщения:

- режим просмотра;
- режим ответа.

Это позволяет организовать коллективную работу над обращениями и избежать ответа на сообщение одновременно несколькими сотрудниками.

Примечание: обновление списка пользователей, просматривающих сообщение, выполняется автоматически в соответствии с настройками модуля Техподдержка:

Иконка позволяет обновить список пользователей, просматривающих сообщение в данный момент, вручную.

При переключении в режим ответа начинается [dw]учет времени,[/dw][di] [/di] затрачиваемый сотрудником на ответ на обращение.

Таким образом, если по умолчанию обращение открывается в режиме Ответ, то подсчет времени начинается немедленно.

При работе с сообщением сотрудник техподдержки может:

  • Создать ответ на обращение.
  • Примечание: если созданный ответ не является окончательным или является пояснением, например, к текущим действиям сотрудников, то может возникнуть необходимость в сохранении текущего статуса обращения. Для этого нужно установить флажок в поле Не изменять статус обращения.

  • Создать скрытое сообщение в рамках обращения.

    Скрытое обращение будет доступно для просмотра только сотрудникам техподдержки.

  • Определить статус, критичность, сложность, категорию, уровень поддержки для обращения, а также назначить сотрудника, ответственного за решение проблемы.
    Примечание: при изменении уровня поддержки или категории, в качестве сотрудника, ответственного за решение проблемы, может быть назначен сотрудник, установленный в параметрах категории или уровня поддержки по умолчанию. Для этого служит иконка , расположенная рядом с соответствующим полем.
  • Если ответ на обращение не может быть дан в ближайшее время либо необходимо поддерживать его актуальность, то сообщение может быть сохранено в качестве [dw]отложенного.[/dw][di] [/di] При этом текущий статус (индикатор сообщения) изменен не будет.
  • Для того чтобы закрыть сообщение, следует установить флаг в поле [dw]Закрыть сообщение.[/dw][di] [/di]
  • Использование поля [dw]Закрыть при отсутствии ответа через[/dw][di] [/di] позволяет определить период, по истечении которого обращение будет закрыто автоматически:
    Обращение закрывается автоматически при условии, что после ответа сотрудника техподдержки автор не добавлял в это обращение новые сообщения.

    Примечание: значение поля Закрыть при отсутствии ответа через по умолчанию задается на странице настроек модуля Техподдержка:

В соответствии с настройками почтовых шаблонов сообщения обо всех изменениях в рамках обращения (ответе на вопрос, изменении ответственного или статуса обращения и т.д.) дублируются на электронный адрес создателя обращения, ответственного сотрудника и администратора службы поддержки.



Графики

На странице Графики (Сервисы > Техподдержка > Графики) можно построить отчет в виде графика или диаграммы по следующим показателям:

  • по нагрузке на техподдержку. График отображает количество обращений и сообщений в системе техподдержки по дням. График отражает загрузку службы техподдержки на конкретную дату и может использоваться для принятия управленческих решений по функционированию службы техподдержки:

    График нагрузки на техподдержку

  • по длительности решения проблем. Круговая диаграмма наглядно показывает типичное количество времени (в днях), которое тратится на решение проблем службой техподдержки:

    График длительности решения проблем

  • по количеству сообщений, необходимых для решения проблемы. На данной диаграмме представлено процентное соотношение количеств сообщений в закрытых обращениях:

    График количества сообщений, необходимых для решения проблем

Документация по теме:



Расписания и исключения

Настройка расписаний, в соответствии с которыми будет оказываться техническая поддержка, выполняется на странице Расписания (Сервисы > Техподдержка > Расписания > Расписания):

В форме [dw]создания/редактирования[/dw][di] [/di] расписания указывается название расписания, например, 5-дневная рабочая неделя:

На закладке [dw]Часы[/dw][di] [/di] выполняется детальная настройка режима работы:

Расписание работы задается для каждого дня недели.Возможны следующие режимы работы техподдержки:

  • 24 часа - круглосуточный режим работы;
  • не работает;
  • часы работы (HH24:MI) - позволяет задать интервалы времени работы техподдержки (используется 24-х часовой формат). Ведется проверка корректности указанных дат.

    Кнопка Копировать служит для копирования текущего значения времени работы в нижнее поле.

Созданные в системе расписания используются при настройке [ds]уровней техподдержки (SLA).[/ds][di] Настройка уровней сервиса выполняется на странице Уровни техподдержки (SLA) (Сервисы > Техподдержка > Уровни поддержки).

SLA определяет:
- время реакции на обращение пользователя (т.е. время, в течение которого сотрудник службы поддержки должен отреагировать на обращение пользователя);
- группы, пользователи которых имеют право на создание обращений с данным уровнем поддержки;
- доступные категории и уровни критичности обращений, а также оценки ответов на обращение.

Подробнее...[/di]

Для уровней техподдержки можно настроить некоторые исключения в оказании технической поддержки (например, техподдержка по некоторому уровню оказывается с понедельника по пятницу, но в связи с переносом праздничного дня необходимо сделать субботу рабочим днем). Настройка исключений осуществляется на странице Исключения (Сервисы > Техподдержка > Расписания > Исключения):

В форме создания/редактирования исключения указывается название, действие исключения (отдых или работа), период действия исключения и выбираются уровни поддержки, для которых будет использоваться это исключение:

Документация по теме:



Группы

Группы созданы для облегчения коллективной работы с обращениями. Они могут быть как клиентскими, так и для сотрудников поддержки. Клиентские группы включают, как правило, пользователей от одного клиента компании. Группы техподдержки включают в себя, как правило, сотрудников одного отдела.

Например, у компании есть сотрудники техподдержки. К ним поступают обращения от сотрудников клиента.

Каждый сотрудник техподдержки работает только лишь с теми обращениями, в параметрах которых он указан как ответственный за решение проблемы. Но как быть, если необходимо для упрощения работы отдела техподдержки обеспечить лёгкий доступ всех или части сотрудников к общим обращениям?

Для этого достаточно создать группу (Сервисы > Техподдержка > Группы), отметить в настройках опцию Группа сотрудников техподдержки

а на закладке Пользователи включить в неё нужных сотрудников и указать, смогут ли они видеть сообщения группы или получать уведомления

Закладка "Пользователи"

Тогда обращения для любого члена группы станут видны его соседям по группе (другим сотрудникам техподдержки).

Примечание: В состав такой группы могут входить только [ds]сотрудники техподдержки.[/ds][di] Сотрудник техподдержки – доступ ко всем пунктам меню и страницам модуля открыт. Пользователь работает с теми обращениями, в параметрах которых он указан ответственный за решение проблемы.

Подробнее...[/di]

В свою очередь, у клиента есть сотрудники, которые обращаются в техподдержку компании. Там аналогичная ситуация: обращение, отправленное в техподдержку, видит только его автор, что не всегда удобно. Если, к примеру, сотрудник ушёл в отпуск, то его обращения должен вести кто-то другой, при этом передавать логин/пароль, естественно, некорректно. Поэтому клиент обращается в компанию с просьбой дать доступ к обращениям сотрудника, ушедшего в отпуск, например, всем другим его сотрудникам, зарегистрированным на сайте.

Для этого администратору техподдержки необходимо лишь объединить сотрудников клиента в одну группу и убрать опцию [dw]Группа сотрудников техподдержки[/dw][di] Группа клиентов [/di] в настройках:

Документация по теме:



Спецобращения

На странице административного раздела Сервисы > Техподдержка > Купоны спецобращений вы можете сгенерировать купоны спецобращений для ваших клиентов.

Спецобращение - обращение в техподдержку, время реакции на которое ограничено одним часом вне зависимости от времени суток.

Для добавления купона нажмите Добавить купон на контекстной панели, откроется форма добавления:

О полях данной формы читайте в документации.

После того, как купон будет создан, его [dw]последовательность символов[/dw][di] [/di] можно узнать либо в форме его редактирования, либо в общем списке купонов:

Данную последовательность клиенту следует вводить в специальное поле при создании обращения:

Важно! В настройках компонента должна быть отмечена опция Показывать поле ввода купона.

На странице Сервисы > Техподдержка > Журнал использования купонов показана информация об использовании купонов:

Документация по теме:



Проверьте себя

Ответьте на несколько вопросов по теме Техподдержка, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 Время реакции на обращение пользователя регламентируется SLA.
Верно
Неверно
2 Публичный и административный интерфейсы техподдержки индентичны по функционалу для сотрудника ТП.
Верно
Неверно
3 Промежуток времени, через который закроется обращение, в случае отсутствия ответа от клиента, можно указать в настройках модуля.
Верно
Неверно
4 Создание Мастера техподдержки реализовано с помощью средств модуля Веб-формы.
Верно
Неверно
5 Настройка справочников обязательна для работы обращений техподдержки.
Верно
Неверно
6 Все обращения автоматически поступают сотруднику, указанному как ответственный по умолчанию в настройках модуля. А он уже распределяет их по другим сотрудникам.
Верно
Неверно
7 Для использования мастера при создании обращений нужно отметить опцию Использовать мастер в настройках компонента Техподдержка и указать инфоблок.
Верно
Неверно
8 Для расписания работы техподдержки доступно создание исключений. Например, перенос рабочих дней из-за праздников.
Верно
Неверно
9 Объединять в группы можно как сотрудников, так и клиентов техподдержки.
Верно
Неверно



Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

Перед выполнением практических заданий создайте дополнительно двух пользователей. Одного из них добавьте в группу Зарегистрированные пользователи, а другого - в группу Администраторы интернет-магазина.

  1. Выполните следующие настройки в модуле Техподдержка:
    1. Настройте права доступа:
      • Зарегистрированные пользователи - Клиент техподдержки;
      • Администраторы интернет-магазина - Сотрудник техподдержки;
      • Администраторы - Администратор техподдержки.
    2. Установите ответственным по умолчанию пользователя из группы Администраторы ИМ.

    Решение

  2. Создайте одно [dw]расписание работы[/dw][di]Например, график с 9 до 21, Сб и Вс выходной.[/di] и один уровень поддержки с такими настройками:
    1. время реакции - 1 день;
    2. выслать напоминание - за 2 часа;
    3. ответственный по умолчанию - пользователь группы Администраторы ИМ;
    4. расписание - созданное вами ранее;
    5. создавать обращения с таким SLA могут зарегистрированные пользователи.

    Решение

  3. Для высокой критичности обращения установите ответственным Администратора.

    Решение

  4. Создайте интерфейс техподдержки в публичном разделе и напишите обращение от пользователя группы Зарегистрированные пользователи со средней критичностью.

    Решение

  5. Поработайте с обращением из административного раздела:
    • Обработайте созданное в задании № 4 обращение как сотрудник техподдержки. Напишите в нем скрытый комментарий и переведите на Администратора с высокой критичностью;
    • Теперь рассмотрите обращение как Администратор и закройте его;
    • Проверьте обращение в публичном разделе под пользователем, что создал обращение. Оставьте оценку.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Универсальные списки

Иногда функционала [dwi include_iblock]информационных блоков[/dwi] не хватает для работы с необходимой информацией. В этом случае на помощь приходит модуль 1С-Битрикс  [dw]Универсальные списки.[/dw][di] Универсальные списки - инструмент для удобного хранения и работы с любой структурированной информацией.

Подробнее о работе с модулем. [/di]

Возможности модуля

Модуль может:

  • Сконструировать произвольные хранилища информационных объектов;
  • Предоставить доступ к функционалу из публичной части сайта;
  • Создать произвольную иерархию хранения объектов;
  • Фильтровать и сортировать данные, настраивать колонки и поля карточки элемента и списков элемента, управлять правами доступа и другое.

Универсальные списки используются в следующих сценариях:

  • FAQ (часто задаваемые вопросы);
  • Справочники и базы знаний;
  • Списки [ds]контрагентов[/ds][di] Контрагент – одна из сторон договора в гражданско-правовых отношениях.

    Подробнее...[/di];
  • Структурированные архивы;
  • Библиотеки и файловые хранилища;

Примечание: Подробнее о работе с модулем Универсальные списки читайте в курсе Контент-менеджер.

Документация по теме:


Настройка модуля Универсальные списки

Настройка модуля Универсальные списки производится в Административном разделе на странице Настройки > Настройки продукта > Настройки модулей > Универсальные списки.

Нажмите на рисунок, чтобы увеличить

Закладка "Права доступа"

Внимание! Универсальные списки имеют расширенные возможности задания прав независимо от настроек информационных блоков в Административной части.

На закладке Права доступа определяется, какие группы пользователей имеют доступ к инфоблокам, используемым в качестве списков. Для настройки доступа нужно в столбце Группы пользователей выбрать нужную группу пользователей, а в столбце Типы инфоблоков - назначить соответствующий тип инфоблока для выбранной группы.

Группы пользователей, указанные на данной закладке, смогут создавать свои собственные списки (инфоблоки) в указанном типе инфоблоков или редактировать существующие, в отличие от остальных групп.

Закладка "Социальная сеть"

Установив флажок в поле Включить поддержку социальной сети, вы дадите разрешение на то, чтобы Универсальные списки появились в Рабочих группах.

В поле Тип инфоблока необходимо выбрать нужный тип инфоблока, который будет использован в качестве списков в Соцсети. Допустимо использование разных типов инфоблоков в качестве источника данных для Соцсети и для списков на других страницах проекта.

Закладка "Живая лента"

Снятие флажка в поле Включить функционал работы с живой лентой отключает отображение Бизнес-процессов списков в Живой ленте. Также отключается отображение пунктов меню Мои процессы и Процессы. Но только отображение, зная прямой URL до этих страниц пользователь может открыть эти страницы. Если флажок отмечен, то необходимо отметить тип инфоблока для работы с живой лентой, а также папку, в которой работает компонент.

Документация по теме:


Проверьте себя

Ответьте на несколько вопросов по теме Универсальные списки, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 С помощью модуля Универсальные списки можно создать структурированные архивы и файловые хранилища, а также предоставить к ним доступ из публичного раздела.
Верно
Неверно
2 В качестве источника данных для Соцсети и для списков на других страницах проекта нужно использовать один и тот же тип инфоблоков.
Верно
Неверно
3 Универсальные списки имеют расширенные возможности задания прав независимо от настроек информационных блоков в Административной части.
Верно
Неверно
4 При снятии флажка Включить функционал работы с живой лентой становятся недоступны страницы Мои процессы и Процессы.
Верно
Неверно


Форум

[dw]Форум[/dw][di] Форум (веб-форум, интернет-форум) — сайт, предназначенный для проведения онлайн-дискуссий. Наполнение такого сайта информацией производят пользователи. [/di] дает пользователям сайта возможность общаться между собой, задавать вопросы посетителям и администрации сайта. Форум также дополняет собой службу техподдержки. Кроме того, форум - средство привлечения дополнительных посетителей на сайт, поскольку поисковые машины индексируют текстовое содержимое сообщений форума в дополнение к содержанию сайта.

Возможности модуля

Модуль Форум «1С-Битрикс: Управление сайтом» предназначен для управления форумами сайта. С помощью этого модуля решаются следующие задачи:

  • создание необходимого числа форумов;
  • построение и гибкая модификация публичной части (внешнего вида);
  • распределение прав доступа клиентов на чтение форума и отправку сообщений;
  • создание модерируемых и [dw]постмодерируемых[/dw][di] Сообщение появляется сразу же после отправки. Модерирование осуществляется уже после публикации сообщения, а не перед. [/di] форумов;
  • назначение группы пользователей модераторами;
  • присвоение звания (статуса) посетителям согласно количеству баллов, полученных за активность;
  • управление настройками форумов.

В данной главе рассматриваются основные операции по настройке и работе с форумами.

Документация по теме:


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

  Закладка Настройки

Управление настройками выполняется на странице настройки модуля Форум (Настройки > Настройки продукта > Настройки модулей > Форум).

Нажмите на рисунок, чтобы увеличить

На закладке Настройки задаются глобальные настройки параметров, которые определяют:

  • выбор галереи смайлов форума (Начиная с версии 15.5.2 модуля Форум используются [ds]смайлы ядра системы[/ds][di] Раздел Смайлы (Сервисы > Смайлы) - системный раздел для смайлов, используемых модулями системы.

    Для работы со смайлами используются понятия Галереи смайлов и Набор смайлов. Число Галерей и Наборов не ограничено. Каждая из Галерей может быть использована в любом из модулей. На данный момент переход на системные смайлы главного модуля совершён не полностью. Часть модулей использует собственные наборы смайлов, детальнее об этом смотрите в описании настроек модулей. Выбор осуществляется в настройках модуля. Настройки Главного модуля являются настройками по умолчанию для остальных модулей.

    Подробнее...[/di]);
  • возможность редактирования личных сообщений;
  • отображение имени пользователя и ограничения размера его аватара;
  • настройки персональных сообщений;
  • количество документов, индексируемых за один шаг.

Примечание: подробное описание каждого параметра приведено в пользовательской документации по модулю Форум.

  Закладки Доступ и Фильтр нецензурных слов

Доступ

На закладке Доступ настраиваются уровни прав доступа к модулю для групп пользователей.

Примечание: чтобы пользователи имели возможность редактировать профиль на форуме, дайте группе пользователей форума права не ниже [Р] Изменение профайла в настройках Главного модуля.

Фильтр нецензурных слов

Для фильтрации нецензурных слов на страницах форума включите опцию Включить фильтр нецензурных слов, расположенную на закладке Фильтр нецензурных слов:

Фильтр нецензурных слов

При включенном фильтре указывается действие, которое выполнится с найденными словами:

  • ничего – никакие действия над нецензурными словами выполняться не будут;
  • удалить – нецензурные слова будут удалены из текста;
  • заменить – слова будут заменены на значение, заданное в поле Замена.

Кроме того, для каждого языка необходим Словарь слов и регулярных выражений, в которых хранятся нецензурные слова. Фильтрация текста сообщений выполняется на основании словаря.

Примечание: подробнее о настройке фильтра рассказано в уроке [ds]Фильтр нецензурных слов.[/ds][di] Фильтр нецензурных слов используется для работы с нецензурными словами в сообщениях форумов. В дистрибутиве уже поставляются заполненные словари, вы можете дополнить их или отредактировать.
Для использования на форуме фильтра нецензурных слов включите данную возможность в настройках модуля Форум, при этом укажите, какое действие будет выполняться с найденными словами, и задайте языкозависимые параметры.

Подробнее...[/di]

  Документация по теме




Группы форумов

Группировка форумов

Если на сайте много форумов, то может возникнуть сложность в работе с ними: пойди, найди нужный. Для решения этой проблемы можно сгруппировать форумы по какому-то общему для них признаку.

Группа форумов – это совокупность форумов, обладающих общим признаком, тематикой.

Просмотр уже созданных групп форумов, их редактирование и создание новых выполняется на странице Сервисы > Форумы > Группы форумов.

Нажмите на рисунок, чтобы увеличить

Создание группы форумов

Для создания группы форумов используйте кнопку Новая группа форумов, расположенную на контекстной панели. Для редактирования уже созданной группы выберите соответствующий пункт меню действий.

[dw]Форма[/dw][di][/di] создания (редактирования) группы форумов очень простая и значение полей ясно из их названия. Поясним только пару из них:

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

Документация по теме:



Форумы: создание и управление

  Управление форумами

Управление форумами осуществляется, как правило, в Административном разделе. Создание новых форумов возможно только в административном разделе. Список всех форумов размещается на странице Сервисы > Форумы > Список форумов:

Нажмите на рисунок, чтобы увеличить

Корректировка шаблонного текста

Частая задача администратора – корректировка шаблонного текста страниц Помощь по форуму и Правила форума. Простой вариант решения этой задачи:

В свойствах комплексного компонента bitrix:forum в группе параметров Основные настройки убираем флажок в поле Использовать простой режим настройки. Появляются поля Путь к файлу, содержащему "Правила форума" и Путь к файлу, содержащему "Помощь по форуму". Создаем файл с правилами, выкладываем в нужное место, прописываем путь к файлу в этих полях.

  Создание форума

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

  1. на вкладке [dw]Форум[/dw][di]Параметры[/di]:
    • Активность – при отмеченной опции форум будет включен. Если форум неактивен, то он доступен только пользователям с правами на полный доступ к ним.
    • Группа форумов – при необходимости выбирается группа, к которой следует привязать форум. Группа может быть не установлена.
    • Сайты, на которых доступен форум (Шаблон пути к сообщению на сайте) – укажите сайт(ы), на которых доступен форум, и шаблон пути к сообщению.
  2. на вкладке [dw]Настройки[/dw][di]Детальные настройки[/di]:
    • Индексация – установленный флажок разрешает индексировать поиском сообщения форума;
    • Модерация – при отмеченной опции сообщения пользователей будут публиковаться на сайте только после проверки модератором;
    • Одинаковые сообщения в теме – запрет создания двух одинаковых сообщений в теме;
    • Сортировать по и Направление сортировки – выберите вариант сортировки сообщений, а также направление сортировки;
    • Позволить загрузку – разрешить загрузку присоединенных к сообщению файлов указанного типа;
    • Допустимые расширения загружаемых файлов – расширения файлов, разрешенных к загрузке;
    • Пользовательские настройки – при отмеченных опциях для незарегистрированных пользователей будет запрошен e-mail при добавлении сообщения и будет использована CAPTCHA;
    • Регистрация новых сообщений в модуле статистики – здесь настраиваются идентификаторы, с использованием которых создание нового сообщения на форуме будет регистрироваться в модуле Веб-аналитика;
    • Настройки парсера – указываются дополнительные настройки: ссылки, изображения, видео, теги, HTML-код, смайлики и т.д.

  3. на вкладке [dw]Доступ[/dw][di]Права доступа[/di] определите [dw]права доступа[/dw][di]Младшие права включаются в старшие (т.е. если группа обладает правом на модерирование, то она соответственно обладает правом читать сообщения, отвечать на сообщения, создавать новые темы, но не имеет права на редактирование сообщений). При определении прав пользователя, который принадлежит к нескольким группам, берется максимальное из прав.[/di] к форуму для групп пользователей:
    • Нет доступа – запрет на доступ;
    • Чтение – доступ на чтение сообщений без права создания новых тем;
    • Ответ – доступ к обсуждению тем без права создания новых тем;
    • Новая тема – доступ к обсуждению и созданию тем;
    • Модерирование – доступ к модерации. Например, модераторы могут скрыть или показать сообщение, но не могут отредактировать или удалить его. Члены группы с этим уровнем прав имеют возможность подписаться на получение копии всех сообщений форума по почте;
    • Редактирование – доступ к управлению чужими сообщениями на форуме;
    • Полный доступ – полный доступ к форуму, включая доступ к настройкам форума и прав доступа.

Чтобы отредактировать форум, воспользуйтесь пунктом контекстного меню [dw]Изменить[/dw][di][/di], откроется форма, аналогичная форме создания.

Примечание: Подробнее о значении полей формы создания/редактирования см. в пользовательской документации .



Управление темами и подписками

Управление темами форумов

Темы форумов создаются только в публичном разделе. В панели управления можно только менять название тем, но не создавать их.

Информация о темах форумов представлена на странице Управление темами (Сервисы > Форумы > Управление темами):

Нажмите на рисунок, чтобы увеличить

Используя панель Действия, можно быстро отредактировать или удалить отмеченные записи, а также переместить выбранные темы в указанный форум. Для этого выполните следующее:

  • В колонке флажков отметьте темы, которые хотите перенести.
  • В списке действий выберите Переместить.
  • С помощью выпадающего списка укажите форум, куда будут перенесены темы.
  • Нажмите кнопку Применить.

Управление подписками пользователей

Список пользователей с подпиской на форумы представлен на странице [dw]Управление подпиской[/dw][di]Подписки пользователей[/di] (Сервисы > Форумы > Управление подпиской):

Для просмотра подписок некоторого пользователя используйте меню действий (пункт [dw]Изменить[/dw][di][/di]) либо двойной клик по соответствующей записи.

Документация по теме:



Звания и баллы

На любом форуме есть проблема оценки сообщений пользователя и его квалификации. В "1С-Битрикс: Управление сайтом" для этого используются стандартные механизмы: баллы и звания.

  Баллы за сообщения

Баллы присваиваются пользователю форума за каждое отправленное сообщение. При этом можно легко настроить кумулятивную систему начисления баллов, т.е. количество баллов за одно сообщение будет увеличиваться согласно числу отправленных сообщений.

Настройка количества баллов за сообщение происходит на странице Баллы за сообщения (Сервисы > Форумы > Баллы за сообщения):

Нажмите на рисунок, чтобы увеличить

Для создания новой записи используется кнопка Новая запись, расположенная на контекстной панели. В [dw]форме создания (редактирования)[/dw][di]Создание (редактирование) записи[/di] записи о количестве баллов за сообщение заполните поля:

  • Необходимо сообщений - число сообщений, начиная с которого за каждое сообщение будет начисляться указанное в записи количество баллов.
  • Баллов за сообщение – количество баллов, начисляемое за сообщение, при достижении указанного в предыдущем поле числа сообщений.

Внимание! Пересчет баллов пользователей при изменении записи автоматически не происходит. Пересчет баллов каждого пользователя произойдет при написании очередного сообщения, при голосовании за него и т.п.

  Звания

Звания посетителей форума устанавливаются согласно количеству набранных баллов. Пользователь получает баллы как за количество сообщений, созданных на форуме, так и в результате голосования других посетителей форума.

Примечание: Для получения звания за количество сообщений на форуме включите опцию [dw]Включить бонусную систему[/dw][di][/di] в настройках модуля Форум. Если эта опция неактивна, то звания будут устанавливаться на основе [ds]рейтингов.[/ds][di] В общем случае система устроена так, что все основные расчеты происходят автоматически по внутренним механизмам. По умолчанию также активен всего лишь один главный рейтинг в системе - Авторитет.

Подробнее...[/di]

Для настройки званий используйте страницу Звания (Сервисы > Форумы > Звания):

Нажмите на рисунок, чтобы увеличить

Для создания новой записи нажмите кнопку Новое звание, расположенную на контекстной панели. Откроется [dw]форма создания (редактирования)[/dw][di]Создание (редактирование) звания[/di] звания. Заполнение формы не должно вызвать у вас проблем, она полностью понятна.



Фильтр нецензурных слов

  Следим за грубостями

Фильтр используется для работы с нецензурными словами в сообщениях форумов. В дистрибутиве уже поставляются заполненные словари, вы можете дополнить их или отредактировать.

Для использования на форуме фильтра нецензурных слов [dw]включите данную возможность[/dw][di][/di] в настройках модуля Форум, при этом укажите, какое действие будет выполняться с найденными словами, и задайте языкозависимые параметры.

На странице Сервисы > Форумы > Фильтр нецензурных слов > Словарь нецензурных слов представлен список словарей с нецензурными словами:

Нажмите на рисунок, чтобы увеличить

  Добавление словаря, слов и букв транслита

Это требуется редко, но если потребовалось, то для добавления нового словаря воспользуйтесь кнопкой Добавить, расположенной на контекстной панели страницы. В открывшейся форме укажите Название и [dw]Тип словаря[/dw][di]"Словарь слов" или "Словарь транслита".
Словарь транслита – список знаков и букв другого языка, которыми могут заменяться буквы в словах используемого языка. [/di].

Для добавления нецензурных слов в словарь используется страница Сервисы > Форумы > Фильтр нецензурных слов > Словарь нецензурных слов > <имя_словаря>. В открывшейся форме добавьте корень слова с [dw]символами изменяемых частей[/dw][di]Символы изменяемых частей:
^ - приставка;
% - суффиксы и окончания;
? - один символ;
* - любое количество словообразующих символов. [/di] слова и выберите [dw]тип шаблона[/dw][di]Тип шаблона – способ как система будет искать и удалять слово.
Слово – (без использования словаря транслита) – искаться и удаляться (заменяться) будет слово в точности с тем как оно введено в поле Поиск.
Транслит – (с использованием словаря транслита) – искаться и удаляться (заменяться) будет слово в соответствии со словарем транслита.
Регулярное выражение – полное символьное выражение, которое использует система для анализа слова. [/di]. Необязательно, но можно добавить слово или фразу, которые [dw]заменят добавляемое слово[/dw][di]Замена происходит в том случае, если в настройках модуля включен фильтр нецензурных слов
и в качестве действий с найденными словами выбрано Заменить.
Причем сначала проверяется, имеется ли собственная замена, если она есть, то будет использована.
Если же собственной замены нет, то будет использоваться замена из настроек форума.

[/di] в тексте.

Для добавления информации об аналоговом написании букв в словарь транслита используется страница Словарь транслита (Сервисы > Форумы > Фильтр нецензурных слов > Словарь транслита > <имя_словаря>). Создание [dw]записи словаря[/dw][di][/di] Транслита не представляет сложности.



Создание комментариев к различным элементам сайта

  Форум как комментарии

На популярных и посещаемых сайтах гости пишут комментарии на форумах, в блогах, оставляют отзывы к товарам и фотографиям, а также обсуждают новости. Поэтому в Bitrix Framework в комплексные [dwi include_component]компоненты[/dwi] фотогалерей, новостей и каталога товаров по умолчанию встроен компонент отзывов. В каждом компоненте представлена опция Разрешить отзывы и необходимые настройки.

Но иногда возникает потребность добавления отзывов и комментариев там, где они изначально не предусмотрены. Например, в разделе опросов, на странице просмотра видеотеки и т.д.

В этом случае проблема решается использованием компонента [comp include_63173]Комментарии к инфоблоку (forum.topic.reviews).[/comp]

Рассмотрим пример добавления функционала комментариев к видеотеке. Допустим, что предварительные операции по [ds]настройке видеотеки[/ds][di] Настроить Видеотеку можно из публичного раздела в режиме правки с помощью команды Редактировать параметры компонента или через панель Свойства при редактировании страницы с помощью визуального редактора.

Подробнее...[/di] уже выполнены и на сайте создан публичный интерфейс.

  Создание форума

[ds]Создайте форум,[/ds][di] Управление форумами осуществляется, как правило, в Административном разделе. Создание новых форумов возможно только в административном разделе. Список всех форумов размещается на странице Список форумов (Сервисы > Форумы > Список форумов).

Подробнее...[/di] например, Комментарии к видеороликам, в котором будут храниться комментарии к роликам из видеотеки:

Укажите необходимые настройки форума. На закладке Доступ для всех пользователей задайте право на [dw]создание новых тем[/dw][di]Пользователям необходимо иметь право доступа Новая тема, поскольку при создании первого комментария выполняется создание темы. Если пользователям выставить право ответ, то тема (а следовательно и первый комментарий) должен быть создан модератором форума.[/di].

Все комментарии к видеотеке будут храниться в этом форуме в темах с названием элемента (ролика) инфоблока видеотеки.

Чтобы комментарии проходили премодерацию перед публикацией, в настройках форума выберите опцию Модерация: премодерируемый.

  Настройка компонента Комментарии к инфоблоку

Откройте страницу где размещена видеотека в визуальном редакторе. Разместите компонент Комментарии к инфоблоку на странице.

Настройте параметры компонента, уделив внимание следующим моментам:

  • В списке ID форума для отзывов выберите созданный форум для комментариев, в нашем случае это Комментарии к видеороликам.
  • В параметрах Тип информационного блока и Код информационного блока укажите тип инфоблоков и сам инфоблок, в котором хранится видеотека.
  • В поле ID элемента задайте идентификатор любого из элементов (ролика) в инфоблоке видеотеки. Этот параметр задается для отображения формы добавления комментариев.

  Создание интерфейса для модерации комментариев

В некотором разделе сайта (или создайте новый) [ds]создайте страницу[/ds][di] Создавать страницу лучше сразу в том разделе, где она должна "жить". Перенести неверно созданную страницу можно, но зачем лишние действия? Создание страниц доступно с помощью Мастера, по шаблону и через документооборот. Самый простой и рекомендуемый нами способ - с помощью Мастера.

Подробнее...[/di] на которой разместите комплексный компонент Форум bitrix:forum. Доступ к странице дайте только тем пользователям, кто будет выполнять модерацию комментариев.

В [dw]настройках компонента[/dw][di][/di] в параметре Показывать только выбранные форумы отметьте Комментарии к видеороликам. Все [comp include_63155]остальные параметры[/comp] настройте необходимым для вас образом.

В результате страница с видеотекой и комментариями будет выглядеть так:

Для использования других опций при работе с комментариями воспользуйтесь дополнительными модулями:



Назначение модератора форума

Модерирование форума – одна из задач, которую поручают контент-менеджеру. Чтобы он мог выполнять эту задачу нужно дать ему расширенные, по отношению к обычному посетителю сайта права. Пользователь с правами модератора форума может скрывать\показывать сообщения и темы, переносить их в другие форумы, закрывать\прикреплять темы.

  Постановка задачи

Возьмем ситуацию, когда у нас есть три форума:

На партнерском форуме модератором нужно сделать пользователя Егор, на форуме компании - пользователя Иван. А общий форум они должны модерировать оба вместе.

  Создание групп пользователей

Создадим группы пользователей, члены которых будут иметь права модератора на работу с соответствующими форумами. Для этого перейдите на страницу административного раздела Настройки > Пользователи > Группы пользователей и нажмите Добавить группу на контекстной панели. Откроется форма создания новой группы:

Заполните поля на вкладке Параметры. На вкладке Пользователи в группе отметим галочкой пользователя Егор и сохраним внесенные изменения.

Аналогично создадим группу Модераторы форума компании и включим в нее пользователя Иван.

Для обеих групп в настройках вкладки Доступ для модуля Форум укажите право Запись. Для остальных модулей оставьте право По умолчанию.

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

Перейдите на страницу Сервис > Форумы > Список форумов и кликните левой кнопкой мыши пункт [dw]Изменить[/dw][di][/di] в меню действий партнерского форума:

На вкладке Доступ для созданной нами группы пользователей Модераторы партнерского форума зададим право доступа модерирование:

Аналогичным образом задайте такое же право доступа на Форум компании для группы Модераторы форума компании.

Для общего форума следует выставить право на модерацию для обеих групп:

Всё, настройка произведена, модераторы могут приступать к работе.


  Дополнительно




Проверьте себя

Ответьте на несколько вопросов по теме Форум, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 У группы форумов не может быть подгрупп.
Верно
Неверно
2 Создание форумов доступно как из публичного, так и из административного раздела.
Верно
Неверно
3 Темы форумов создаются только в публичном разделе.
Верно
Неверно
4 В продукте есть возможность создать свой словарь нецензурных слов.
Верно
Неверно
5 Права на модерирование форумов для группы пользователей действуют на все форумы, отдельно настроить не получится.
Верно
Неверно
6 Текст для страниц Помощь по форуму и Правила форума указывается непосредственно в настройках компонента bitrix:forum.
Верно
Неверно



Практические задания

После изучения главы рекомендуем выполнить несколько практических заданий.

  Практические задания

Практические задания состоят из вопроса, скриншота или видео с конечным результатом и объяснением, как это получить в спойлере. Не торопитесь подглядывать в спойлер.

  1. Выполните настройки модуля Форум:
    1. Разрешите редактировать только последнее сообщение в теме;
    2. Отключите бонусную систему;
    3. Установите названия статусов для пользователей:
      • для пользователя - Покупатель;
      • для модератора - Модератор.
    4. Установите словари для фильтра нецензурных слов.

    Решение

  2. Создайте и опубликуйте на сайте форумы:
    1. Создайте группу форумов;
    2. Создайте два форума. Один из них привяжите к группе. В настройках доступа:
      • разрешите всем зарегистрированным пользователям создавать новые темы;
      • установите для группы Администраторы интернет-магазина доступ Модерирование.
    3. Опубликуйте созданные форумы на сайте.

    Решение

  3. Создайте [dw]обычного пользователя[/dw][di]Группа доступа - зарегистрированные пользователи[/di]. Авторизуйтесь под ним на сайте и создайте тему в любом форуме, напишите сообщение, оформите подписку.
    После сделайте этого пользователя [dw]модератором форума[/dw][di]Вспомните о настройках доступа форумов из предыдущего задания.[/di]. Снова авторизуйтесь под ним и перенесите тему в другой форум.

    Решение

Где выполнять задания?

Их можно выполнять:

  1. на тестовой виртуальной лаборатории bitrixlabs.ru предоставленной компанией «1С-Битрикс»
  2. либо
  3. на установленной на локальный компьютер пробной версии «1С-Битрикс: Управление сайтом».

Подробная информация о настройке каждого варианта представлена в уроке Где практиковаться и выполнять задания.

Примечания:
  1. Настоятельно рекомендуем НЕ выполнять задания на работающем, «боевом» сайте.
  2. Если вы всё же пытаетесь выполнять задания на работающем сайте, где вы не являетесь администратором, то не все задания можно выполнить.



Фотогалерея

Модуль Фотогалерея 2.0 - это современный и удобный инструмент для создания и управления галереями и фотоальбомами пользователей, групп пользователей и сайта в целом.

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

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

Настройка модуля крайне проста и заключается в загрузке шрифтов для авторского знака. Это выполняется на странице настройки модуля Фотогалерея 2.0 (Настройки > Настройки продукта > Настройки модулей > Фотогалерея 2.0):

Нажмите на рисунок, чтобы увеличить

В секции Загруженные шрифты отображаются системные шрифты и добавленные пользователем шрифты для нанесения авторского знака. Загруженный шрифт для нанесения авторского знака выбирается в [dw]настройках комплексных компонентов[/dw][di][/di]:

  • [comp include_91321]Фотогалерея 2.0 (bitrix:photogallery)[/comp]
  • [comp include_139125]Фотогалерея 2.0 (многопользовательская) (bitrix:photogallery_user)[/comp]

С помощью ссылки Загрузить шрифты загрузите собственные шрифты. Поддерживаются TTF-, OTF- и PS-шрифты.

Примечание: Обычно администратор выполняет только настройку модуля. Непосредственную работу по созданию и наполнению галерей ведёт Контент-менеджер.

Документация по теме:



Фотогалерея в социальной сети

Настройки в Социальной сети

Для использования фотогалерей в Социальной сети сайта активируйте этот функционал в настройках модуля Социальная сеть на странице Настройки > Настройки продукта > Настройки модулей > Социальная сеть в секциях:

  1. Настройки для пользователей:

  2. Настройки для групп:

Далее в этих же секциях задайте права по умолчанию для фотогалерей.

Если сайтов несколько, то управление фотогалереями выполняется отдельно для каждого сайта.

Документация по теме:


Работа с комментариями многопользовательской галереи

Модерировать комментарии к фотографиям, если фотогалерея развитая, трудозатратно. Приходится открывать все фотографии и смотреть, есть ли комментарии. Гораздо удобнее модерировать всё в одном месте. Сделать это не сложно.

  Видеоурок

  Операции с форумом

Отзывы в Фотогалерее реализуются через функционал модуля [dw]Форум[/dw][di]Модуль Форум "1С-Битрикс: Управление сайтом" предназначен для управления форумами сайта. С помощью этого модуля решаются следующие задачи:

Подробнее...[/di]. Как узнать, какой именно форум для нее используется? Перейдите к настройкам компонента [comp include_139125]Многопользовательская фотогалерея[/comp], и в группе параметров Настройки отзывов вы увидите ID форума для отзывов:

Примечание: Форум, предназначенный для отзывов, должен быть заранее создан. Созданием и настройкой форумов занимается Администратор. Подробнее описано в курсе Администратор. Модули.

Перейдите на страницу административного раздела Сервисы > Форумы > Список форумов > ваш_форум. В форме редактирования форума на вкладке Доступ установите права доступа к форуму (или попросите об этом Администратора сайта если у вас нет прав для работы с форумами):

  • Для группы модераторов право доступа Модерирование;
  • Для пользователей, которые имеют право оставить комментарии, право доступа Новая тема (например, это могут быть все Зарегистрированные пользователи)

  Создание страницы для модерации

[dwi include_add_page]Создайте страницу[/dwi] и закройте страницу от всех, [dw]кроме группы модераторов комментариев[/dw][di][/di] к галерее. Затем разместите на странице комплексный компонент Форум. В настройках компонента, среди прочего, укажите форум многопользовательской галереи в опции Показывать только выбранные форумы:

В результате модераторы будут видеть форум многопользовательской галереи, в темы которого будут добавляться комментарии. Непосредственно в теме можно [ds]модерировать комментарии.[/ds][di] Для управления сообщениями отметьте нужные из них галочками и выберите нужную команду из меню :

Скрыть сообщения - сообщения станут недоступными для просмотра всем, кроме тех, кто имеет право на модерирование форума. Для модераторов скрытые сообщения будут видны и выделены другим цветом. Скрытые сообщения можно опять показать в теме при необходимости.

Перенести сообщения - перемещает выбранные сообщения в другую тему с помощью формы:

Подробнее...[/di]

  Пример работы с комментариями

Теперь, после всех настроек, под открытой фотографией из галереи появится кнопка Добавить комментарий. По нажатии на неё пользователю раскроется форма создания сообщения:

Нажмите на рисунок, чтобы увеличить

Модератору, на специально созданной странице, доступен форум для модерирования комментариев, где он может, например, скрыть комментарий:

Нажмите на рисунок, чтобы увеличить

Как только пользователь оставит первый комментарий под фотографией, на форуме автоматически будет создана тема с первым сообщением от имени Автора фото и прикрепленной фотографией. Все последующие сообщения - комментарии пользователей.

Примечание: работа с комментариями галереи различается в зависимости от шаблона компонента. Штатно в компоненте доступно [dw]два шаблона[/dw][di][/di]: old и .default. Отличаются они внешним видом и просмотром фотографий, а также только в шаблоне old для комментариев доступен редактор текста.
Важно: В настоящий момент при использовании шаблона .default могут возникать ошибки при добавлении комментария к фото (Элемент ... не найден или скрытие существующих комментариев). При возникновении ошибок помогает обновление текущей страницы с открытой фотографией в браузере. Если ошибки возникают постоянно - обратитесь в техническую поддержку.

Проверьте себя

Ответьте на несколько вопросов по теме Фотогалерея, которые помогут вам самим оценить свои знания. Это не тест, это просто проверка того, как вы поняли тему. Удачи!

Верно ли утверждение?

Оцените верность утверждения: Верно или Неверно. А потом в спойлере проверьте ваш выбор.

1 В настройках модуля Фотогалерея можно загрузить шрифты для нанесения авторского знака.
Верно
Неверно
2 Для использования фотогалерей в Социальной сети сайта необходимо активировать этот функционал в настройках модуля Фотогалерея.
Верно
Неверно
3 Если фотогалерея должна использоваться в Социальной сети нескольких сайтов, то для каждого сайта нужно отдельно активировать этот функционал.
Верно
Неверно
4 Отзывы в Фотогалерее реализуются через функционал модуля Форум.
Верно
Неверно


Дополнительные модули

В главе содержится информация по модулям, которые не входят в штатную поставку.

1С-Битрикс: Интерактивная карта объектов

Модуль 1С-Битрикс: Интерактивная карта объектов — это удобный инструмент, который выводит важные объекты, события и туристические маршруты. Он поможет создать схему проезда до офиса или склада, карту офисов компании или даже карту региона.

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Возможности модуля

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Возможности модуля

Карта объектов и событий:

  • отображение объектов на Яндекс.Карты или Google Maps
  • группировка объектов по категориям
  • список объектов
  • поиск объектов по их названию
  • детальная информация об объекте
  • прокладка маршрута до объекта

Карта маршрутов:

Доступность с мобильных устройств:

  • шаблон для мобильной версии сайта
  • шаблон для мобильного приложения

Управление картой (API):

  • поддержка Яндекс.Карты и Google Maps
  • задание пользовательских маркеров
  • кастомизация внешнего вида с помощью настройки параметров и CSS: стили инфоокон, текстовые сообщения, высота карты, цвет линий и т.п.
  • настройка маршрутов

Материалы по теме:


Установка модуля

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Установка модуля

Модуль "1С-Битрикс: Интерактивная карта объектов" можно установить двумя способами:

  • через [ds]административную часть сайта[/ds][di] На странице Marketplace (Marketplace > Каталог решений) можно просмотреть список доступных для загрузки и/или установленных модулей из Marketplace.
    Подробнее...[/di]
  • со страницы модуля в Маркетплейс

После загрузки модуля, в разделе Установленные решения должна появиться строка [dw]"Интерактивная карта (bitrix.map)"[/dw][di] [/di] разработчика "1С-Битрикс".

Примечание: При установке модуля у вас будет возможность установить также демонстрационные данные, чтобы сразу можно было посмотреть на работу карты.
Отметьте опцию [dw]Установить демо-данные,[/dw][di] [/di] укажите сайт, для которого будут устанавливаться данные, и путь к папке относительно корня сайта, где будут установлены примеры использования компонента карты.

Внимание! Если вы пропустите установку демонстрационных данных и решите сразу настроить компонент карты на свои данные, вам может потребоваться создать несколько свойств для ваших инфоблоков. Подробнее про необходимые дополнительные свойства смотрите в главе [ds]Предварительная настройка.[/ds][di] Если вы выполнили установку демонстрационных данных, то все необходимые поля для инфоблоков у вас уже созданы. В противном случае, если вы решили сразу использовать свои данные, вам нужно учесть несколько моментов.

Для разделов туристических маршрутов должны быть созданы два пользовательских свойства:

- Замкнутый маршрут;

- Тип маршрута.

Подробнее...[/di]

После установки у вас должны появиться:

  • Новый тип инфоблоков Карта (bx_map);
  • Три инфоблока: Объекты, События, Туристические маршруты (Контент > Карта);


Настройка и наполнение контентом

Решение 1С-Битрикс: Интерактивная карта объектов устанавливается на редакции "1С-Битрикс: Управление сайтов" версии 12.0 и выше, начиная с редакции Старт.
В главе описаны настройки модуля, а также принципы заполнения следующих элементов:
  • объектов
  • маршрутов
  • событий

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Предварительная настройка

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Предварительная настройка

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

Для разделов туристических маршрутов должны быть созданы два пользовательских свойства:

  • Замкнутый маршрут;
  • Тип маршрута.

Свойство Замкнутый маршрут (в стандартном решении имеет код UF_CLOSED) должно быть типа Да/Нет. Свойство влияет на отрисовку линии маршрута – если маршрут замкнутый, то его линия автоматически соединяется между последней и первой точкой маршрута.

Свойство Тип маршрута (в стандартном решении имеет код UF_ROUTE_TYPE) должно быть типа Список. Это свойство обязательно для заполнения для вывода маршрута на карте. Все маршруты при выводе группируются по типу.

Внимание! При настройке списка в поле XML_ID значений вводится позиция иконки для этого типа маршрута. В стандартном шаблоне иконки хранятся в одном спрайте с шагом 30 пикселей. Следующие значения соответствуют стандартным иконкам [dw]типов маршрутов:[/dw][di] [/di]
  • 0 – Пешеходный маршрут.
  • 30 – Транспортный маршрут.
  • 60 – Водный маршрут.

Для разделов инфоблока объектов должно быть создано дополнительное свойство [dw]Позиция иконки[/dw][di] [/di] (в стандартном решении имеет код UF_ICON_POS). Свойство должно иметь тип Число (предпочтительней) либо Строка. Позиция иконки влияет на то, какая иконка для данной категории объектов будет выведена в списке на карте, а так же какой маркер будет использоваться для всех ее объектов. Как и с типами маршрутов, иконки хранятся в отдельном спрайте с шагом в 30 пикселей.

Так же следует обратить внимание на то, что все объекты должны содержаться внутри категорий.

В стандартной поставке существуют следующие категории со стандартными иконками:

Значение 0 позиции иконки соответствует маркеру/иконке по умолчанию. Все остальные иконки идут, начиная со значения 30. То есть 30 – иконка для АЗС, 60 – для аптек, 210 – для ВУЗов, 870 – для ярмарок.

Все стандартные иконки можно посмотреть в каталоге модуля /install/images/bitrix.map.


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

  Общие моменты

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Примечание: Обратите внимание на два информационных поля, которые появятся сразу после установки модуля:

  • Для корректной работы нового функционала компонента map.map следует использовать шаблон modern, mobile_modern или mobileapp_modern.
  • Для корректного отображения не рекомендуется выводить на карте описание объектов длиной более 100 символов.

Модуль настраивается в шести вкладках. Часть настроек является общей для всего продукта, часть делится по сайтам и по версиям карты.

  • Вкладка "Настройка";
  • Вкладка "Интерфейс";
  • Вкладка "Значки и цвета";
  • Вкладка "Геокодирование";
  • Вкладка "API-ключи";
  • Вкладка "Доступ".

  Вкладка "Настройка"

Здесь собраны основные настройки модуля.

Параметры по умолчанию

Настройки анимации

Загрузка скриптов

Прокладка маршрута

  Вкладка "Интерфейс"

Здесь настраиваются строковые константы интерфейса карты. Вы можете настроить их сразу для всех сайтов (по умолчанию) или задать индивидуальные значения для каждого сайта.

  Вкладка "Значки и цвета"

В этой вкладке устанавливаются значки маркеров, цвета и параметры линий маршрутов, параметры кластеризации.

Для маркеров используются спрайты. Вы можете загрузить свой файл со спрайтом и настроить расположение значков маркеров в нем, указав размер иконок. Параметр Точка привязки отвечает за расположение точки привязки маркера к точке с координатами на карте.

Для линий маршрутов вы можете настроить цвет, толщину и прозрачность для каждого из состояний.

Примечание: Настройки различаются для десктоп и мобильной версий.

  Вкладка "Геокодирование"

Здесь можно настроить автоматическое геокодирование адресов в координаты (широту и долготу). Геокодирование может быть применено к любому инфоблоку.

Настройка заключается из последовательного выбора:

  • Инфоблока, для которого применяется геокодирование;
  • Свойства, в котором хранится текстовый адрес (он будет геокодирован);
  • Свойств, в которые будут сохранены долгота и широта;
  • Сервиса, который будет использоваться для геокодирования.

Внимание! Если при добавлении элемента в инфоблок, для которого настроено геокодирование, вручную задать значения долготы и широты, то данные значения не будут перезаписаны.

  Вкладка "API-ключи"

На этой вкладке вводятся ключи для работы с Google Maps и Яндекс.Карты.

Google Maps

Яндекс.Карты

Внимание! Для установки модуля на продукт "Битрикс24" необходимо получить [ds]коммерческую версию карт.[/ds][di] API Яндекс.Карт включает в себя четыре продукта:

- JavaScript API и Геокодер,
- API Поиска по организациям,
- Static API,
- MapKit SDK,
- Матрица расстояний и Построение маршрута между двумя точками.

Каждый из этих продуктов вы можете использовать бесплатно, либо на платной основе. Для бесплатного использования необходимо соблюдать ряд условий, которые перечислены ниже.

Если ваш проект предполагает нарушение хотя бы одного из условий или большое количество запросов, следует приобрести коммерческую версию API.

Подробнее...[/di]

  Вкладка "Доступ"

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



Заполнение объектов

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Заполнение объектов

Данные объектов заполняются в административном разделе через редактирование элементов инфоблока Объекты, либо через созданный вами интерфейс для работы с элементами этого инфоблока. Разделы инфоблока соответствуют категориям, по которым объекты группируются на карте. Элементы инфоблока соответствуют самим объектам.

Нажмите на рисунок, чтобы увеличить


Для появления объекта на карте у него должны быть заполнены следующие свойства: Название, Широта, Долгота. Все остальные свойства, показанные на рисунке ниже, носят информативный характер и не являются обязательными для заполнения.

При использовании Геокодирования достаточно ввести только [dw]адрес[/dw][di] [/di] объекта в соответствующее поле. При условии правильной настройки Геокодирования, после сохранения параметров объекта координаты для него будут [dw]автоматически добавлены[/dw][di] [/di] в соответствии с указанным адресом.

Если заполнено фото и/или описание на вкладке Анонс - они так же будут выведены во всплывающем описании при клике на объект на карте.

Внимание! При первом открытии карта автоматически масштабируется, чтобы вмещать все объекты. Если вы заполняете объекты для одного конкретного города, но на карте видите всю область или половину страны, то вам нужно проверить правильность введенных координат. В частности подобные проблемы могут возникать при автоматическом определении координат по адресу через различные сервисы.

Примечание: Если вы создали объект, но он не выводится на карте, то вам так же нужно проверить правильность заполнения координат. Координаты должны быть в таком же виде, как показано на рисунке выше.


Заполнение туристических маршрутов

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Заполнение туристических маршрутов

Данные туристических маршрутов заполняются в административном разделе через редактирование элементов инфоблока Туристические маршруты. Разделы инфоблока соответствуют самим маршрутам, а элементы инфоблока соответствуют точкам этих маршрутов.

Нажмите на рисунок, чтобы увеличить

У маршрута есть два дополнительных поля:

  • Тип маршрута – используется для группировки маршрутов, как и категории для объектов.

    Про настройку типов более подробно написано в главе Предварительная настройка.

  • Замкнутый маршрут – используется, если точки начала и конца совпадают. Если опция отмечена, то линия маршрута будет автоматически продолжена до начальной точки.

Точки маршрутов заполняются аналогично [ds]объектам.[/ds][di] Для появления объекта на карте у него должны быть заполнены следующие свойства: Название, Широта, Долгота.
Подробнее...[/di] При построении линии маршрута точки будут выводиться в порядке увеличения значения поля Сортировка. При открытии карты маршруты неактивны. При выборе одного из них линия меняет цвет, и на ней начинают отображаться точки. При клике на точку будут выведены её адрес и описание.


Заполнение событий

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Заполнение событий

Данные событий заполняются в административном разделе через редактирование элементов инфоблока События. Разделы инфоблока при выводе данных на карту не используются. Элементы инфоблока соответствуют самим событиям.

События заполняются точно так же как [ds]объекты[/ds][di] Для появления объекта на карте у него должны быть заполнены следующие свойства: Название, Широта, Долгота.
Подробнее...[/di] и точки маршрутов, но есть одно отличие: для события обязательно должны быть заполнены поля Начало активности и Окончание активности.

В зависимости от этих полей события автоматически группируются по категориям:

  • Идут сейчас;
  • Будущие;
  • Прошедшие.


Вывод карты в публичной части

Карта выводится [dwi include_add_component]традиционным[/dwi] для сайтов на CMS "1С-Битрикс: Управление сайтом" способом - [dwi include_component]компонентом[/dwi] [dw]Карта (bitrix:map.map)[/dw][di] Если вы не можете найти этот компонент в списке, то
попробуйте обновить список компонентов:

[/di].

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Основная информация

  О компоненте

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Карта выводится [dwi include_add_component]традиционным[/dwi] для сайтов на CMS "1С-Битрикс: Управление сайтом" способом - [dwi include_component]компонентом[/dwi] [dw]Карта (bitrix:map.map)[/dw][di] Если вы не можете найти этот компонент в списке, то
попробуйте обновить список компонентов:

[/di].

В вашем распоряжении три шаблона:

  • modern для использования в версии сайта для обычных компьютеров и планшетов, включает себя новые режимы отображения (используется с типом представления данных "Объекты").
  • mobile_modern – улучшенная версия шаблона mobile для использования в версии сайта для мобильных телефонов.
  • mobileapp_modern – улучшенная версия шаблона mobileapp для использования в версии сайта для мобильного приложения.
  • Примечание: Ранее в стандартной поставке этот компонент имел [dw]шесть[/dw][di] [/di] шаблонов (дополнительные шаблоны: .default, mobileapp, mobile). Эти шаблоны не рекомендуется использовать в новых установках, т.к. они уже не поддерживаются и не обновляются (они оставлены для тех клиентов, которые уже пользуются данными шаблонами).

    Список всех шаблонов (в т.ч. и устаревших)

    В [dw]параметрах компонента[/dw][di] [/di] карты вам нужно задать:

    • Тип и код информационного блока;
    • Представление данных (объекты / [dw]маршруты[/dw][di] При выборе типа данных маршруты вместо настройки Позиция иконки будут две дополнительные настройки:

      - Замкнутый маршрут;

      - Тип маршрута. [/di] / события);
    • Тип карты (Google/Яндекс);
    • Высоту области с картой;
    • Адрес для AJAX (для шаблонов modern_*, указано значение по умолчанию).

    Внимание! Если данные на карте не отображаются – проверьте правильность [dw]значений параметров[/dw][di] [/di] Код информационного блока и Представление данных. Объекты, события и маршруты имеют разную структуру хранения и если тип данных не соответствует – скорее всего, вы получите пустую карту, либо ошибку.

    Также следует проверить, чтоб в разделе Свойства элементов карты были правильно указаны требуемые свойства в зависимости от типа данных, выбранных ранее в пункте Представление данных.

  Особенности применения шаблона modern

В параметрах компонента для шаблона modern доступна новая опция Карта на весь экран.

При ее включении будет выведено уведомление о том, что пользователю нужно самостоятельно разместить "кнопку", отвечающую за показ карты. Так же будут отображены два параметра: Разворачивать на весь экран сразу и Использовать скользящие панели (подробнее про организацию работы в полноэкранном режиме можно посмотреть на странице [ds]Полноэкранный режим отображения карты.[/ds][di] При этом станут доступны два дополнительных параметра:

Разворачивать на весь экран сразу - при включении этой опции карта
в полноэкранном режиме открывается сразу же при загрузке страницы.
В случае если параметр отключен, карта будет скрыта, и в этом случае
для отображения карты необходимо разместить элемент со специальным
атрибутом для отображения слоя с картой.

Скользящие панели - в случае включения этого параметра, данные
выводятся в режиме с тремя панелями: категории – подкатегории – объекты.
В этом интерфейсе при клике на маркер информация об объекте
размещается как четвёртая панель, позволяя размещать любое количество
информации.

Подробнее...[/di]

Карта автоматически позиционируется, чтобы вместить все заполненные объекты. Если при открытии раздела карта показывает не только ваш город, а половину страны или весь мир — значит, координаты как минимум для одного из объектов при заполнении были введены неверно.

  Особенности применения шаблонов для мобильной версии

При использовании шаблона для мобильной версии появляется два обязательных для заполнения параметра: Адрес для AJAX и Ссылка на страницу с прокладкой маршрута.

Этот параметр содержит путь к скрипту для ajax запроса текстового описания выбранного на карте объекта.

Пример кода стандартного скрипта для получения описания

Ссылка на страницу с прокладкой маршрута содержит путь к странице с размещенным на ней компонентом map.routing.



Отображение объектов, туристических маршрутов, событий

Рассмотрим, как выглядят на карте созданные объекты, туристические маршруты и события.

  Вывод объектов

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Объекты выводятся с группировкой по категориям. Каждой категории соответствует определенная иконка и тип маркеров, которые задаются через свойство Позиция иконки. При выборе одной или нескольких категорий их объекты будут отображены на карте соответствующими маркерами. Быстро снять выделение поможет кнопка под списком категорий - Отменить выбор.

Если вас интересует какой-то конкретный объект, но вы не знаете, в какой категории его искать, то можно воспользоваться возможностями поиска по названию объекта. При этом в списке категорий останутся только те, в которых содержатся объекты, удовлетворяющие условиям поиска.

Для просмотра информации об объекте кликните на один из [dw]маркеров[/dw][di] [/di] на карте. Так же вы можете открыть текстовый список всех выбранных вами объектов, нажав на кнопку [dw]Объекты.[/dw][di] [/di]

  Вывод туристических маршрутов

Отображение маршрутов на карте имеет следующий вид:

  Вывод событий

Отображение событий на карте имеет следующий вид:



Особенности мобильной версии карт

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Особенности мобильной версии карт

Т.к. в мобильной версии на карту выводятся не все маркеры, а только указанного раздела, вместе с модулем поставляется специальный шаблон для компонента Структура раздела(catalog.section.list), который позволяет вывести категории объектов.

Для удобства размещения и настройки был разработан комплексный компонент Карта мобильная(map.objects.mobile), который содержит в себе три страницы: список разделов, карту и прокладку маршрута (в Событиях категории отсутствуют).

Параметры и принцип настройки полностью аналогичен компоненту map.map.


Полноэкранный режим отображения карты

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Полноэкранный режим отображения карты

Для вывода карты в полноэкранном режиме достаточно разместить «кнопку», отвечающую за перевод в этот режим отображения, и в параметрах компонента установить опцию Карта на весь экран:

При этом станут доступны два дополнительных параметра: Разворачивать на весь экран сразу и Использовать скользящие панели:

  • Разворачивать на весь экран сразу - при включении этой опции карта в полноэкранном режиме открывается сразу же при загрузке страницы. В случае если параметр отключен, карта будет скрыта, и в этом случае для отображения карты необходимо разместить элемент со специальным атрибутом для отображения слоя с картой.
  • Скользящие панели - в случае включения этого параметра, данные выводятся в режиме с тремя панелями: категории – подкатегории – объекты. В этом интерфейсе при клике на маркер информация об объекте размещается как четвёртая панель, позволяя размещать любое количество информации.

    Структура категорий (разделов инфоблоков) для этого режима строго предполагает использование 2-х уровней вложения категорий:

    В случае отсутствия у категории родительской, будет сформирована искусственная категория с названием, определенным в параметре компонента.

Примечание: Подробнее про работу с категориями и полноэкранный режим карты можно посмотреть в документации для разработчиков.



Пример создания маршрута

  Пример создания маршрута

Важно! С 1 февраля 2023 года продажа решения 1С-Битрикс: Интерактивная карта объектов (bitrix.map) прекращена. Техническая поддержка по купленным ранее решениям будет оказываться до окончания их срока действия. Поддержка будет оказана при условии активной лицензии платформы 1С-Битрикс.

Рассмотрим пример создания небольшого маршрута на карте.

Маршрут мы будем строить уже на основе [ds]установленного[/ds][di] Модуль "1С-Битрикс: Интерактивная карта объектов" можно установить двумя способами:


- через административную часть сайта
- со страницы модуля в Маркетплейс

После загрузки модуля, в разделе Установленные решения должна появиться строка "Интерактивная карта (bitrix.map)" разработчика "1С-Битрикс".

Подробнее...[/di] модуля с демо-данными. Это позволит сократить объем работы по созданию пользовательских свойств инфоблоков и проведения прочих настроек, необходимых для работы модуля.

  • Создание маршрута;
  • Создание точек маршрута;
  • Настройка компонента и вывод карты.

  Создание маршрута

В инфоблоке Туристические маршруты (Карта > Туристические маршруты) сделаем неактивными все существующие демо-маршруты, чтобы они не мешали строить свой собственный маршрут в другом городе.

Затем с помощью соответствующей кнопки, создадим новый маршрут:

Затем произведем его настройку:

  • На вкладке Маршрут укажем название (в нашем случае Центр города) .
  • На вкладке Доп. поля необходимо выбрать тип маршрута (в нашем случае Пешеходный) и является ли он замкнутым (в нашем случае - нет):

  Создание точек маршрута

Для построения маршрута на карте необходимо создать точки. Для этого перейдем к созданному маршруту и воспользуемся соответствующей кнопкой:

Затем произведем настройку:

  • На вкладке Точка маршрута укажем Название, Сортировку, Координаты и Адрес:

    Поля Название и Координаты обязательно должны быть заполнены.

    Поле Сортировка в последующем позволит строить маршрут из точек на карте в требуемой последовательности.

  • На вкладке Анонс добавим Картинку и Описание.

Создадим остальные точки маршрута по схеме указанной выше.

  Настройка компонента и вывод карты

Для вывода карты на отдельной странице [ds]разместим[/ds][di] Карта выводится традиционным для сайтов на CMS "1С-Битрикс: Управление сайтом" способом - компонентом Карта (bitrix:map.map) .

Подробнее...[/di] и настроим компонент Карта (bitrix:map.map):

  • В секции Основные параметры укажем следующие значения параметров:
    • Тип информационного блока - [bx_map] Карта - выберем тип инфоблока, используемый модулем Интерактивная карта объектов (в нашем случае это [bx_map] Карта, который уже создан вместе с демо-данными).
    • Код информационного блока - Туристические маршруты - инфоблок, который используется для хранения маршрутов.
    • Представление данных - Маршруты - укажем, что на карте будет использоваться режим отображения именно маршрутов.

  • В секции Источник данных для параметра Поле для первой сортировки элементов выберем значение Сортировка.

    Это позволит расположить точки маршрута на карте в последовательности, согласно значению Сортировка, которое заполнялось ранее, при их создании.

  • В секции Свойства элементов карты для параметров проверить и указать все соответствующие свойства.

    В нашем случае это будут:

    • Тип маршрута - UF_ROUT_TYPE;
    • Замкнутый маршрут - UF_CLOSED;
    • Широта - [LAT] LAT;
    • Долгота - [LNG] LNG;
    • Адрес - [ADDRESS] ADDRESS.

После всех действий на странице будет отображена карта с маршрутом на основе созданных точек: