Перейти к основному содержимому

Документы

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

Типы документов​

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

ТипОписание
PageПредставляет собой типичную веб-страницу; путь в дереве соответствует адресу в браузере.
SnippetПозволяет извлекать часто используемый контент в повторно используемые контейнеры, которые можно встраивать в страницы или вложенные во другие фрагменты.
LinkПростая веб-ссылка для использования в навигации.
EmailДокумент, аналогичный странице, но с особой функциональностью для транзакционных писем.
HardlinkСоздание ссылок на другие структуры документов и повторное использование их в другой структуре/контексте. (см. Hard link)
FolderРаботает как папки в вашей локальной файловой системе.

Конфигурация документов​

Конфигурация документов связана с архитектурой MVC, поэтому каждому документу требуется контроллер/действие и шаблон, которые специфицированы в настройках документа в интерфейсе администратора:

Документы: настройки контроллера и представления

Не все из них необходимы, в таблице ниже показаны возможные конфигурации:

ТипКонтроллерШаблонОписание
1XВыполняется указанный контроллер/экшен. Если действие возвращает объект ответа, он используется для рендеринга.
2XXТо же, что и выше, но рендерится указанный шаблон, а не автоопределённый шаблон (только если действие не возвращает ответа).
3XРендерит шаблон с использованием контроллера/экшена по умолчанию, что удобно, если имеется только шаблонный контент.

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

Вы можете задать модуль/пакет по умолчанию, контроллер и действие в конфигурации:

pimcore:  
documents:
default_controller:App\Controller\DefaultController::defaultAction

Свойства (Properties)​

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

  1. Навигация - Если вы строите навигацию на основе дерева документов, иногда вам нужны специальные настройки для фронтенда, такие как разделители или выделения
  2. Изображения заголовков - Часто на сайте используются изображения заголовков. Если вы не хотите определять его для каждой страницы, вы можете использовать свойства с наследованием. Вы можете задать значение по умолчанию в корневом документе и переопределить это значение на более глубоком уровне в иерархии дерева.
  3. Сайдбары - Вы можете легко управлять видимостью боковых панелей в конкретных документах
  4. SEO - Также возможно использовать свойства для SEO. Определять красивый заголовок и описание для каждой страницы на вашем сайте очень неудобно, с помощью свойств это не требуется (наследование)
  5. Защищенные области - Закрытые пользовательские группы
  6. Изменение внешнего вида сайта в зависимости от свойств (например, микросайты, вложенные сайты)
  7. Пометка для автоматизированных экспортов (PDF, RPC и т.д.)

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

Некоторые факты​

  • Документы следуют паттерну MVC; поэтому Pimcore требует, чтобы был хотя бы один контроллер с действием и файлом шаблона.
  • Pimcore поставляется с DefaultController, содержащим defaultAction и файл шаблона.
  • Из-за архитектуры MVC существует четкое разделение между вашими данными, функциональностью и шаблонами.
  • Шаблоны для Pimcore создаются с помощью Twig.
  • Поскольку шаблоны написаны на Twig, существует четкое разделение логики (контроллеры) и дизайна (представление / шаблон).

Создайте свой первый документ​

Работа с документами подробно описана в нашем руководстве Создание первого проекта.

Очистка типов документов​

Удаление пакетов может не всегда очищать данные или таблицы базы данных, чтобы избежать потери данных. Выполнение следующей команды удаляет специфические для типа таблицы и перечисления из таблицы документов. Следующие типы защищены и не могут быть очищены с помощью этой команды: page, link, snippet, folder, hardlink, email

Вы можете очистить сразу несколько типов файлов.

bin/console pimcore:documents:cleanup <type1> <type2> <type3>  

Темы, касающиеся документов​


Вы можете предложить улучшение документации или задать вопрос в комментариях.
Если вам нужна полноценная консультация — вы можете заказать её на нашем сайте.