Создание страницы

Страницы создаются в контроллерах, которые находятся в папке src/Controller/.

# src/Controller/CompanyController.php
namespace App\Controller;
use App\Controller\Appcontroller;

class CompanyController extends AppController
{
    // страница company/
    public function index() {}

    // страница company/about
    public function about() {}

    // страница company/our-works
    public function ourWorks() {}
}

Имя раздела находится в названии контроллера, т.е. «CompanyController.php» означает, что раздел будет «example.ru/company/», а «NewsController.php» означает, что раздел будет «example.ru/news/».

CakePHP автоматически подключает шаблон по названию страницы (метода).

# src/Controller/CompanyController.php

class CompanyController extends AppController
{
    // будет автоматически выводится контент из src/Template/Company/about.ctp
    public function about() {}

    // будет автоматически выводится контент из src/Template/Company/our_works.ctp
    public function ourWorks() {}
}

Также в шаблон можно передавать переменные.

# src/Controller/CompanyController.php

class CompanyController extends Controller
{

    public function about() {
        return $this->set(['message' => 'Текст сообщения']);
    }

}

# src/Template/Company/about.ctp
echo 'Сообщение: '.$message;