Благодаря возможности имея бесчисленное количество тем, я решил создать каталог в /src с именем themes, и внутри него каждый каталог представляет собой отдельную тему с содержимым, имеющим ту же структуру, что и каталог /templates в cakephp.
Все работает отлично. Но из-за необходимости развернуть его и на существующем веб-сайте cakephp я решил преобразовать его в плагин cakephp. Я скачал этот плагин. Я настроил маршруты mysite.com/diary/ для этого плагина. Таким образом, система дневников работает нормально, пока не возникнет ошибка, требующая от меня вернуть персональную страницу с ошибкой, которая находится в выбранной теме.
Раньше она работала нормально, если таковая была. ошибка, он загрузит определенный шаблон в каталоге /Error выбранной темы для отображения сообщения. Но как плагин, при возникновении ошибки, cakephp игнорирует мое пользовательское представление и показывает ошибки в каталоге /templates или в самом ядре.
В плагине я загружаю представление с помощью:
Код: Выделить всё
$this->viewBuilder()->setClassName('diary.myview');
И, возможно, в этом вся суть. В плагине мне нужно указать вид, но в основном приложении вид загружается автоматически. И я не хотел ничего менять в представлении ядра по умолчанию или в самом /src/view/AppView.php, потому что там работает что-то еще. Идея состоит в том, что все должно быть изолировано внутри плагина.
Подробнее здесь: https://stackoverflow.com/questions/787 ... in-cakephp