CakePHP 2.0では、次のコードを試して、必要なものと同じものを実現できます。
これを試して:
/app/Config/core.php
例外レンダリングはとして設定する必要がありますAppExceptionRender
。例:
Configure::write('Exception', array(
'handler' => 'ErrorHandler::handleException',
'renderer' => 'AppExceptionRenderer',
'log' => true
));
/app/Controller/ErrorsController.php
class ErrorsController extends AppController {
public $name = 'Errors';
public function beforeFilter() {
parent::beforeFilter();
$this->Auth->allow('error404');
}
public function error404() {
//$this->layout = 'default';
$this->set('title_for_layout', 'Vyskytla sa chyba');
}
}
/app/Lib/Error/AppExceptionRenderer.php
App::uses('ExceptionRenderer', 'Error');
class AppExceptionRenderer extends ExceptionRenderer {
public function notFound($error) {
$this->controller->redirect(array('controller' => 'errors', 'action' => 'error404'));
}
}
/app/View/Errors/error404.ctp
<div class="inner404">
<h2>404 Error - Page Not Found</h2>
</div>
必要な場所に挿入します。throw new NotFoundException();
参照:CakePHP 2.0-カスタムエラーページを作成する方法は?
<CakePHP 2.xの場合:
app / views / errorsでカスタムエラーページビューを作成する場合は、そのエラービューページのphpセクションで次を使用できます。
$this->setLayout("Title for the error page here");
次に、エラーページが表示されると、タイトルが表示されます。繰り返しますが、それはカスタムエラーページを設定した場合です。
これがあなたが必要とした同じことをする別の方法です。
// Create an error.php file in your /app folder with the following code:
<?php
class AppError extends ErrorHandler {
function error404($params) {
$this->controller->layout = "error";
$this->set('title_for_layout', 'Vyskytla sa chyba');
parent::error404($params);
}
}
?>