ページ 11

autoload.phpの使い方

Posted: 2017年6月13日(火) 22:00
by yama
MODX(Evo)の設置フォルダに「autoload.php」という名前のファイルを作って配置すると、MODX本体のインスタンスを生成する前に読み込んで実行できます。スパム対策や他CMSとの連携など、MODXを起動せずに処理をスイッチさせたい時に役に立ちます。
また、自分がよく使う関数をまとめておけば、MODXを自分専用の簡易フレームワークとして拡張することもできます。プラグインを作ってもいいのですが、ファイルひとつを作って手軽に使いまわせるため便利です。
以下、参考です

コード: 全て選択

function hsc($string) {
    return htmlspecialchars($string);
}
htmlspecialcharsの関数名を短くしたhsc関数を独自定義

コード: 全て選択

if($_POST) {
	if(!isset($_SERVER['HTTP_ACCEPT_LANGUAGE']) || strpos($_SERVER['HTTP_ACCEPT_LANGUAGE'],'ja')===false) exit;
}
日本語が設定されていないブラウザからのスパム投稿を防ぐ。MODXインスタンスを立ち上げずに強制終了するためDoS攻撃レベルのアタックにも効果がある

コード: 全て選択

if(strpos($_SERVER['REQUEST_URI'],'/posts/wp-json')===0) {
	include_once('wp/index.php');
	exit;
}
/posts/wp-json で始まるURIのリクエストを受け取った時はMODXを立ち上げずにサブディレクトリにインストールしたWordPressにスイッチする