1. Such a namespace entry is meaningless.
PHP Code:
'Modules\Site\Home' => ROOTPATH. 'Modules/Site/Home', // here we have added.
'Modules\Site\Student' => ROOTPATH. 'Modules/Site/Student',
Use
PHP Code:
'Modules' => ROOTPATH. 'Modules',
2. This only works for one reason.
The namespace in the StudentController class is specified as
Modules\Site\Home\Controllers instead of Modules\Site\
Student\Controllers
PHP Code:
<?php
namespace Modules\Site\Student\Controllers;
class StudentController
3 The default namespace is Modules\Site\Home\Controllers.
Therefore, for the StudentController controller, you need to specify the appropriate namespace.
PHP Code:
$routes->get('([a-z0-9-]+)\.html$', '\Modules\Site\Student\Controllers\StudentController::proByCate/$1');