Модуль page - фактическая карта/схема структуры файлов

Структура файлов модуля page в Cotonti и их описание. Какая роль каждого файла модуля и за что он отвечает.

Назначение модуля page
Модуль page в Cotonti — это основной контентный модуль, отвечающий за публикацию, отображение, редактирование, организацию и управление статичными страницами сайта (новости, статьи, блоги и т.п.).
Он поддерживает:
Добавление и редактирование страниц пользователями и администраторами
Категоризацию (структура)
Валидаторы, черновики и премодерацию
Отображение контента по шаблонам
Расширяемость (экстрафилды, хуки, API)

📂 inc/ — Логика и обработчики

Файл Назначение
page.add.php Обработка формы добавления новой страницы пользователем.
page.edit.php Обработка формы редактирования существующей страницы.
page.list.php Вывод списка страниц по категории (в том числе пагинация, фильтрация и пр.).
page.main.php Просмотр одной страницы (page.php?c=cat&al=alias).
page.counter.php Увеличивает счетчик просмотров страницы. Может быть вызываем через AJAX.
page.resources.php Подключение JS/CSS и других ресурсов (напр. для rich text редакторов).
page.functions.php Общие функции для работы модуля: генерация URL, проверка прав, выборка данных и пр.
PageControlService.php Класс сервисов управления страницами (CRUD через OOP).
PageDictionary.php Объектный словарь (используется для абстракции доступа к полям страниц).
PageRepository.php Репозиторий страниц: выборка, фильтрация и прочая логика доступа к данным.

📂 lang/ — Языковые файлы

Файл Назначение
page.en.lang.php Перевод на английский.
page.ru.lang.php Перевод на русский.

📂 setup/ — SQL-инсталляция

Файл Назначение
page.install.sql SQL-скрипт установки таблиц модуля page.
page.uninstall.sql SQL-скрипт удаления таблиц модуля.

📂 tpl/ — Шаблоны вывода

Файл Назначение
page.add.tpl Форма добавления страницы.
page.edit.tpl Форма редактирования страницы.
page.tpl Отображение одной страницы (front-end).
page.list.tpl Шаблон вывода списка страниц (категория).
page.enum.tpl Шаблон для вывода перечислений (select и т.п.).
page.admin.tpl Админка модуля: управление страницами.
page.admin.home.tpl Главная страница админки.
page.list.unvalidated.tpl Отдельный шаблон для страниц на премодерации.

📄 Основные файлы

Файл Назначение
page.php Главная точка входа в модуль (index.php?e=page). Маршрутизирует запросы.
page.setup.php Установка модуля через админку.
page.structure.php Управление структурой категорий страниц (в админке).
page.admin.php Обработка запросов администратора (модерация, премодерация, удаление).
page.admin.home.php Главное админ-окно управления модулем страниц.
page.extrafields.php Расширенные поля (extra fields) для страниц.
page.header.php Подключается в шаблонах страниц (заголовки, мета-данные).
page.item.getItems.php Получение набора страниц по различным фильтрам (например, для API или компонентов).
page.trashcan.php Управление удаленными страницами (мусорка).
page.extension.getPublicUrl.php Возвращает публичный URL страницы для API и расширений.

 

фактическая карта/схема структуры модуля "page" из репозитория  https://github.com/Cotonti/Cotonti/tree/master/modules/page

modules/page/
├── inc/
│   ├── page.add.php
│   ├── page.counter.php
│   ├── page.edit.php
│   ├── page.functions.php
│   ├── page.list.php
│   ├── page.main.php
│   ├── page.resources.php
│   ├── PageControlService.php
│   ├── PageDictionary.php
│   ├── PageRepository.php
├── lang/
│   ├── page.en.lang.php
│   ├── page.ru.lang.php
├── setup/
│   ├── page.install.sql
│   ├── page.uninstall.sql
├── tpl/
│   ├── page.add.tpl
│   ├── page.admin.home.tpl
│   ├── page.admin.tpl
│   ├── page.edit.tpl
│   ├── page.enum.tpl
│   ├── page.list.tpl
│   ├── page.list.unvalidated.tpl
│   ├── page.tpl
├── page.admin.home.php
├── page.admin.php
├── page.extension.getPublicUrl.php
├── page.extrafields.php
├── page.header.php
├── page.item.getItems.php
├── page.php
├── page.setup.php
├── page.structure.php
├── page.trashcan.php

 

 

Объяснение ключевых элементов:
Элемент - Роль
page.php - Главная точка входа, распределяет маршруты
page.main.php - Вывод одной страницы
page.list.php - Отображение списка страниц по категории
page.add.php / edit.php - Добавление и редактирование страниц пользователями
page.admin.php - Админ-панель управления страницами
PageRepository - Абстракция доступа к данным, выборки, фильтрации
PageDictionary - Управление полями (включая extrafields)
PageControlService - Бизнес-логика: создание, обновление, валидация
page.functions.php - Утилиты, URL-генерация, проверки прав
page.counter.php - Увеличение счетчика просмотров страницы

Как всё работает вместе?

Пользователь открывает страницу → page.php вызывает page.main.php → тот использует PageRepository для выборки данных и PageDictionary для шаблонов.

Админ редактирует страницу → page.edit.php + PageControlService → изменения через PageRepository.

Любой файл, связанный с шаблонами, может вызывать page.functions.php (например, cot_generate_url() или cot_page_read()).

При публикации новых страниц используется page.add.php, а логика сохранения данных идёт через PageControlService.

3 minutes read Sodium Carbonate

Comments (0)

No comments yet
Only registered users can post new comments

Content author

webitproff

Offline

Sodium Carbonate

Last logged: 2026-09-03 18:32

About me briefly
Support and development of web projects on the CMF Cotonti: private messengers via the website, open and closed small social networks, trading platforms and marketplaces, freelance and services exchange portal, catalogs of goods from wholesale suppliers, dropshipping platforms, online stores, and much more.
View developments and download
Public portfolio of my works and developments
Telegram for messages
@webitproff
Telegram channel
@s/aBuyFILE
  • Page published: 2025-05-16 12:27
  • Last update: 2025-05-16 13:02

Similar pages

Файл "page.admin.home.php" модуль "Page" в Cotonti
1 Описание файла "page.admin.home.php" в Cotonti CMF Файл "page.admin.home.php" является частью
Файл page.php в Cotonti
2 описание файла page.php в Cotonti CMF Основное назначение и место в системе Cotonti Файл page.php — это главный
Файл page.setup.php в Cotonti
3 Основное назначение файла и его место в системе Cotonti Файл page.setup.php является конфигурационным файлом модуля
Файл page.header.php в Cotonti
4 описание файла page.header.php в Cotonti CMF  1. Основное назначение и место в системе Cotonti Файл page.header.php
Файл "page.extrafields.php" в Cotonti CMF
5 Файл "page.extrafields.php" в системе Cotonti CMF является частью модуля "page", и он отвечает за