@Rushino У вас є два "додатки" - передній (для читачів) і бекенд (для адміністраторів). Для кожної групи функцій у вас є контролер.
Увійти в систему - така група, яка включає генерацію HTML форми (поля, що викликає перегляд) та обробку форми (перевірка, з'єднання з моделлю). Отже, "login" - це контролер з двома діями - createForm та handleForm.
Сторінки поділяються між додатком на передньому кінці - який відображає лише сторінки - та додатковою програмою, яка дозволяє редагувати, видаляти, створювати та, можливо, переглядати їх по-іншому. Домашня сторінка - це "лише інша сторінка", щонайменше, на лицьовій стороні, тому вписується в контролер сторінок. На бекенді його логіка може бути досить різною, що виправдовує наявність цілком іншого контролера.
Для користувачів - якщо користувачі можуть зареєструватися самостійно, їм знадобиться контролер інтерфейсу, але якщо ні, то все, що стосується користувачів, просто йде в сервісному центрі.
Зауважте, що кожна з функцій доповнення може вимагати і генератора, і обробника. Ці речі можна розділити на конфігураційні файли, але плагін, який є генератором форм.
Підсумовуючи це, це виглядає приблизно так:
Frontend
Pages
View, Handle
Login
View, Handle
Users
Register (note that the handler can be the same as 'create' on the backend)
Contact
View
Handle
Backend
Users
Create, Delete, Edit, Update, View
Pages
Create, Delete, Edit, Update, View