WordPressコーディング規約の除外ルールをプロジェクトごとに作成する【VSCode & phpcs】
VSCode で拡張機能の「phpcs」と「phpcbf」がインストールされている場合の例です。
phpcs.xml ファイルの作成
プロジェクトのルートディレクトリに phpcs.xml を作成します。※後で編集します。
root/ テーマとかプラグイン
├ functions.php
├ index.php
├ style.css
└ phpcs.xml // ← 新規作成
VSCode の setting.json でパス設定
VSCode でプロジェクト の setting.json 設定を開いて、「phpcs.standard」のパスに “./phpcs.xml” を指定する。


{
"phpcs.standard": "./phpcs.xml"
}
phpcs.xml に除外ルールを記述する
ruleset name は変更してもOKです。
<?xml version="1.0"?>
<ruleset name="WordPress Custom Standard">
<rule ref="WordPress">
<!-- ここに除外ルールを追加していきます -->
</rule>
<exclude-pattern>/node_modules/*</exclude-pattern>
</ruleset>
記述例
除外に使えそうなものを一通り
<?xml version="1.0"?>
<ruleset name="WordPress Custom Standard">
<rule ref="WordPress">
<!-- ファイル名にアンダースコアが使えない。class-ではじめなければならないルールを除外 -->
<exclude name="WordPress.Files.FileName" />
<!-- 三項演算子を使えるようにする -->
<exclude name="WordPress.PHP.DisallowShortTernary.Found" />
<!-- コメントアウトしてもエラーが出ないようにする -->
<exclude name="Squiz.PHP.CommentedOutCode.Found" />
<!-- コメントの末尾にピリオドを付けなくてもいいようにする(日本語だもの) -->
<exclude name="Squiz.Commenting.InlineComment.InvalidEndChar"/>
<!-- Short Array Syntax [] を遣えるようにする -->
<exclude name="Generic.Arrays.DisallowShortArraySyntax.Found" />
<!-- if分を一行に書くことを許可する -->
<exclude name="Generic.ControlStructures.InlineControlStructure.NotAllowed" />
<!-- コメント書かないと許さないってのを無くす -->
<exclude name="Squiz.Commenting" />
<exclude name="Generic.Commenting" />
</rule>
<exclude-pattern>/node_modules/*</exclude-pattern>
<exclude-pattern>/vendor/*</exclude-pattern>
</ruleset>
除外以外の便利そうなもの
<!-- Text Domain が適切なものになっているか ※my_text_domain に 自身のテーマやプラグインの text domainを入れる -->
<rule ref="WordPress.WP.I18n">
<properties>
<property name="text_domain" type="array" value="my_text_domain"/>
</properties>
</rule>
<!-- 関数名や変数名に独自のprefixが付与されているかチェック ※my_prefix に自身のテーマやプラグインの接頭辞を入れる -->
<rule ref="WordPress.NamingConventions.PrefixAllGlobals">
<properties>
<property name="prefixes" type="array">
<element value="my_prefix"/>
</property>
</properties>
</rule>
<!-- サポートするWordPressのバージョン 下記の場合は5.0以上 -->
<config name="minimum_supported_wp_version" value="5.0"/>
関連記事:
phpcs.xml で除外にはしたくないけれど、部分的にエラー除外にしたい時の方法は下記記事で。