concrete5でちょっとした処理を実行したいときに便利な site_post.php
Posted by admin at 22:28 日時 2013/09/11
例によってメモ程度に。concrete5で、1回だけ実行できたらいいので、ちょっとした処理を、管理画面やアドオンを作ったりせずさっと実行したい!って時ないですか。たとえば
うっかり消した自動実行ジョブを再インストールしたい!でも管理画面にボタンはない!
うっかり消したブロックタイプを再インストールしたい!でも管理画面には出てこない!
などなど。
そんな時、config/site_post.php がおすすめです。
このファイルは、concrete5のほとんどの初期処理が実行し終わった後に、もしファイルがあれば読み込まれるPHPです。このPHPでちょちょいとジョブのインストール処理を書いて、concrete5にアクセスすると、ジョブが再インストールされています。
他にも、コアファイルが読み終わったあとに呼ばれる site_post_autoload.php、イベントを起動したいときに使う site_events.php、ページの表示の直前に呼ばれる site_process.php など、configディレクトリに置くだけで実行できるPHPの置き場所がいくつかあり、ちょっとしたカスタム処理をconcrete5の実行の間に挟んだり、デバッグに使ったりできますのでおすすめです。
これらのファイルが具体的にいつ呼ばれるかは、concrete/dispatcher.php を参考にしてください。