Работа с разделами
Для работы с разделами используется класс \Cetera\Catalog. Все разделы объединены в древовидную структуру, в корне которой находится раздел ROOT, имеющий id=0
Каждый сайт, работающий под управлением FastsiteCMS представлен разделом \Cetera\Server, являющимся потомком раздела ROOT.
Методы \Cetera\Catalog
| Метод | Описание |
|---|---|
| getRoot() | Статический. Возвращает раздел ROOT |
| getById($id) | Статический. Возвращает раздел c указанным ID |
| isHidden() | Является ли раздел скрытым |
| getPath() | Возвращает коллекцию разделов от корня сайта. См. Итераторы |
| getUrl() | Возвращает абсолютную ссылку на раздел |
| getChildren() | Возвращает коллекцию дочерних разделов. См. Итераторы |
| getParentServer() | Возвращает сайт, которому принадлежит раздел |
| getParent() | Возвращает родительский раздел |
| getMaterialsTable() | Возвращает таблицу БД, в которой хранятся материалы раздела |
| findChildByAlias($alias) | Ищет среди дочерних разделов раздел с заданным алиасом |
| getChildByAlias($alias) | Возвращает дочерний раздел с заданным алиасом. В отличии от предыдущего метода, ищет только среди прямых потомков |
| getChildByPath($path) | Возвращает дочерний раздел по заданному пути. $path — путь, строка ‘alias1/alias2/…/aliasN’ или массив из алиасов |
| getLastMaterial($fields = null, $subs = false) | Возвращает последний опубликованный материал раздела. $fields - поля материала, которые необходимо прочитать из БД, $subs — включить подразделы |
| getMaterialByAlias($alias, $fields = null) | Ищет материал c заданным алиасом. $fields — поля материала, которые необходимо прочитать из БД |
| getMaterialByID($id) | Ищет материал c заданным ID |
| getMaterials() | Возвращает материалы раздела. См. Итераторы |
| createChild($fields) | Создает дочерний раздел. $fields — массив параметров раздела: name - имя раздела, alias - псевдоним раздела, typ — ID типа материалов для раздела |
| delete() | Удаляет раздел вместе с подразделами и материалами. |
Методы \Cetera\Application, имеющие отношение к разделам
| Метод | Описание |
|---|---|
| getServer() | Возвращает корневой раздел сайта |
| getCatalog() | Возвращает текущий раздел, основываясь на REQUEST_URI |