home chevron_right
Админ-инструменты и редакторы

Структура админ-раздела SF4: ключевые страницы (конфиги site/section/page/demo, iblock формы), расположение и права доступа для работы с конфигами и мастеромlink

В SF4 админ-часть обычно складывается из нескольких “типов” страниц:

  • Конфиги уровней: формы, которые редактируют настройки уровня site / section / page (и отдельно “demo”). Внутри это, как правило, одна логика: собрать список свойств (универсальные свойства), собрать текущие значения и отрисовать форму через компонент редактирования свойств.
  • Редактор инфоблока: отдельные страницы для редактирования секции инфоблока и элемента инфоблока через тот же механизм универсальных свойств (но с проверкой прав на запись в инфоблок).
  • Редактор блоков/раскладки: интерфейсы управления блоками страницы (редактирование, свойства блоков, свойства строк/колонок). Эти страницы обычно используются для “конструктора” блоков и настроек отображения.

По расположению важно различать:

  • “системную” часть (то, что поставляет SF4 модуль),
  • “данные проекта” (то, что живёт в {site_dir}/simai.data и должно переживать обновления).

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

Права: какие роли/группы должны иметь доступ к админ-разделу SF4 и к записям в {site_dir}/simai.datalink

Есть два независимых контура прав:

  1. Права в админке Bitrix
  • Часть страниц SF4 завязана на “админский” доступ (проверка уровня администратора).
  • Часть страниц завязана на права на конкретный инфоблок: если у пользователя нет прав записи (уровня “W”), форма редактирования не должна открываться.
  1. Права файловой системы на запись
  • Любое сохранение конфигов/настроек/структур требует, чтобы веб-сервер мог писать в {site_dir}/simai.data (и, при необходимости, в подкаталоги вроде config/, grid/, template/).
  • Типовой симптом проблем с правами: форма открывается, но “сохранение” не даёт эффекта или падает на операции записи файла.

Точное описание “какие именно группы” (кроме администраторов) должны иметь доступ к конкретным страницам/функциям — требует уточнения под ваш проект, потому что это обычно завязано на вашу модель ролей (контент-менеджеры, редакторы, маркетинг и т. п.) и на то, какие инфоблоки/разделы кому разрешены.

Файловый менеджер: использование админ-страниц для создания шаблонов grid/block/view внутри simai.data (создание папок/файлов, шаблонов template.php, стилей/скриптов)link

В SF4 есть два “режима” управления grid/block/view:

  • Режим “как собрать страницу”: админ-инструменты редактируют раскладку/настройки блоков для конкретной страницы (что включить, какие параметры применить, какие варианты отображения выбрать). Это обычно сохраняется в настройки уровня страницы (часто — в .property.php или аналогичный конфиг).
  • Режим “как выглядит блок/раскладка”: сами шаблоны блоков и view — это файлы в simai.data/grid/... (или в системной части, если вы не переопределяли).

Если вам нужно, чтобы админка действительно “создавала” новые файлы шаблонов — важно понимать: создание файлов = файловые права + понятный шаблон структуры. В SF4 это чаще всего реализовано как “копирование/размножение” существующих шаблонов с последующей правкой, чем как генерация “с нуля”.

Если в вашем проекте используется именно сценарий “создать новый block/view из админки”, пришлите пример: “я нажал X → появилось Y → создался файл Z”. Тогда можно точно описать поток и точки сохранения.

Публичный редактор инфоблоков: что редактирует (данные элементов/разделов), какие уровни настроек учитывает (user/page/section/site), как подключается и где доступны формыlink

Публичный редактор инфоблоков в SF4 — это идея “редактировать на сайте”, но с сохранением правил безопасности:

  • Что редактируется

    • Секция инфоблока: поля секции + пользовательские свойства секции (если они предусмотрены).
    • Элемент инфоблока: поля элемента + свойства элемента, включая файловые (с обработкой загрузок/удалений).
  • Учет уровней настроек

    • Форма редактирования (набор полей, типы, шаблоны) опирается на универсальные свойства и на конфиги уровня.
    • Значения/поведение могут зависеть от настроек site/section/page/user (например, “expert_mode” как переключатель расширенного режима формы).
  • Как подключается

    • Обычно это либо отдельная страница/режим, либо вызов через панель/кнопку (открытие формы в модальном окне/диалоге).
    • Доступ контролируется правами: если нет прав записи в инфоблок — редактирование блокируется.

Точные URL/точки входа в публичный редактор в вашем решении — требуют уточнения, потому что это зависит от того, как вы вывели кнопки/панель и какие маршруты приняты в конкретном сайте.

Отдельная процедура: создание/редактирование шаблонов грида/блоков через админку — копировать системный шаблон/файл в {site_dir}/simai.data/grid/view|block, править template.php, добавлять стили/скрипты; использовать админ-файловый менеджер для создания структуры и сохранения в слой данныхlink

Базовый “безопасный” процесс, который хорошо ложится на философию SF4:

  1. Выберите существующий шаблон (view или block), максимально близкий к нужному результату.

  2. Скопируйте его в слой данных проекта:

    • view: {site_dir}/simai.data/grid/view/...
    • block: {site_dir}/simai.data/grid/block/...
  3. Правьте уже копию:

    • template.php — основная разметка/логика отображения
    • при необходимости добавляйте/правьте сопутствующие файлы стилей/скриптов в рамках принятой структуры проекта
  4. Проверьте подключение (кэш, права, корректные коды).

  5. Только после этого переключайте страницу/блок на новый вариант (через настройки блока/страницы).

Мини-ориентир по структуре (упрощённо), чтобы было понятно “куда класть”:

{site_dir}/simai.data/grid/
  view/
    <section>/
      <variant>/
        template.php
  block/
    <section>/
      <block_code>/
        <variant_or_solution>/
          template.php

Идея именно в том, чтобы не редактировать системные шаблоны, а жить в simai.data, где изменения “ваши” и переживают обновления.

Шаблон содержимого раздела: перечень страниц админки, модель прав (группы/роли), список сущностей (grid/view/block, конфиги site/section/page/demo, iblock формы), типовые ошибки прав/записи и способы исправленияlink

Чтобы раздел документации был реально полезен “как инструкция”, обычно достаточно следующей логики описания:

  • Какие сущности есть

    • Конфиги: site / section / page / demo
    • Редактирование IB: секции / элементы
    • Редактор блоков: страница / блок / строка / колонка
  • Какие проверки прав встречаются

    • “только админ”
    • “есть право записи в инфоблок”
    • “есть право записи в {site_dir}/simai.data
  • Типовые ошибки и как их диагностировать

    • Не хватает прав в админке: форма/страница не открывается (или сразу закрывается).
    • Не хватает прав на инфоблок: редактор секции/элемента блокируется при недостаточных правах записи.
    • Файловая система только для чтения: “сохранил — не сохранилось”, либо ошибки записи файлов.
    • Несовпадение кодов: в wizard action код действия должен совпадать с именем папки действия, иначе мастер не найдёт реализацию.
    • Длинные операции: если действие “длинное”, оно должно работать порциями; иначе получите таймауты (поэтому в мастере есть режим циклического выполнения).