Привет, я столкнулся с проблемой с перехватами в Codeigniter. Я написал перехват для 'post_controller' , который вызывает функцию Controller и загружает шаблон (шаблон представления макета). Он отлично работает во всех обычных случаях , Но теперь мне нужно сделать пользовательскую страницу ошибки. Так что я переопределяю функцию show_404 (). В этой функции я использую get_instance (); функция для получения объекта CI. Используя объект CI, я вызываю функцию для установки параметров макета. Теперь проблема, с которой я сталкиваюсь, заключается в том, что когда я пытаюсь загрузить представление в функцию show_404 () моего пользовательского класса исключений, представление является не загружается, так как хук post_controller не выполняется. Я много чего пробовал, но не получилось.
Может кто-нибудь, пожалуйста, предложите мне любой способ сделать это. Или любой другой способ визуализации пользовательских 404 страницы.
function show_404($page = ''){ // error page logic
header("HTTP/1.1 404 Not Found");
$heading = "404 Page Not Found";
$message = "The page you requested was not found ";
$CI =& get_instance();
$metadata[AppContants::META_TITLE] = '404 Page Not Found | Door and Window';
$metadata[AppContants::META_KEYWORDS] = '';
$metadata[AppContants::META_DESCRIPTION] = '';
$CI->setMeta($metadata);
$params['LAYOUT_MAINVIEW']='404_page';
$CI->renderView($params);// this is the function in my controller which sets the parameter for my template.Or it would also be very helpful if i can load the view directly as show below.
$CI->load->view('404_page'); // Loading view directly.
}