「if ( ! defined( ‘ABSPATH’ ) ) exit」の意味とは?WordPressファイルの先頭にある理由を解説

WordPressのテーマやプラグインファイルの先頭に次の記述があるのをよく見ます。

if ( ! defined( 'ABSPATH' ) ) exit;

これはWordPressでのセキュリティ対策の1つであり、ファイルが直接実行された際に処理をすぐ終わらす記述です。

「if ( ! defined( ‘ABSPATH’ ) ) exit」の意味

defined()は引数に指定された名前の定数が存在するか確認するPHPのメソッドです。

つまりdefined( 'ABSPATH' )の部分は、定数ABSPATHが定義されているとtrueを返します。

参考:PHP: defined – Manual

論理否定演算子!がついているので、! defined( 'ABSPATH' ) は、定数ABSPATHが定義されていない場合に、trueとなります。

trueの場合に実行されるif文は、exitです。exitはPHPの関数です。

exitは言語構造にも分類される関数であり、カッコの記載なしでも利用が可能です。

exitは現在のスクリプトを終了する処理を実行します。

参考:PHP: exit – Manual

if ( ! defined( 'ABSPATH' ) ) exitのコードの意味は、ABSPATHが定義されていない状態でファイルを実行すると、処理が終了するということになります。

よかったらシェアしてね!
  • URLをコピーしました!