端くれプログラマの備忘録 CakePHP [CakePHP] Maintenance – メンテナンス表示プラグイン

[CakePHP] Maintenance – メンテナンス表示プラグイン

fusic/maintenance · GitHub
https://github.com/fusic/maintenance

導入手順

1. ダウンロードしたコードをapp/Plugin/Maintenanceに配置

2. プラグインのロード設定 (app/Config/bootstrap.php)

CakePlugin::load('Maintenance');

3. コントローラへのコンポーネント追加 (app/Controller/AppController.php)

class AppController extends Controller {
    public $components = array(
        'Maintenance.Maintenance' => array(
            'maintenanceUrl' => array(
                'controller' => 'public',
                'action' => 'maintenance'),
            'allowedIp' => array('127.0.0.1'), // allowed IP address when maintanance status
            'allowedAction' => array('posts' => array('index'),
                                     'users' => array('*')) // allowed action when maintanance status
        )
    );
}

4. メンテナンス表示用のコントローラとビューを実装

  • app/Controller/PublicController.php
  • app/View/Public/maintenance.ctp

5. メンテナンスモードを有効化 (app/config/bootstrap.php)

Configure::write('Maintenance.enable', true);

開始/終了日時を指定してメンテナンス表示することも可能。詳しくはReadMeを参照。