Appearance
ツール概要・設定
各ツールの概要・設定ファイル・エディタ連携をまとめています。コマンド一覧は コマンド一覧 を参照してください。
ツール一覧
- コード品質: PHP CodeSniffer (PHPCS) / PHPCBF、PHPStan
- フォーマット: EditorConfig、Prettier(JS/CSS)
PHPCS
- 設定:
config/phpcs.xml(WordPress-Core / Docs / Extra 採用。一部のWordPress.Filesや Commenting 系 sniff は除外) - VS Code:
.vscode/settings.jsonで保存時自動フォーマット・リアルタイムエラー表示(phpcs/phpcbf 有効)
PHPStan
- 設定:
config/phpstan.neon(レベル 4 使用)、config/phpstan_bootstrap.php - レベル: 0〜9。レベル 4 で型チェック・未定義メソッド検出等を実施。CI では
phpstan-check.ymlから実行(依存関係チェック用の Deptrac はdeptrac-check.ymlで別途実行)
EditorConfig
- 設定:
.editorconfig(UTF-8 / LF / 末尾改行・行末空白削除。PHP は tab/4、JS・JSON・YAML は space/2) - VS Code: 拡張
editorconfig.editorconfigを推奨
Prettier
- 設定:
.prettierrc、.prettierignore - VS Code: 拡張
esbenp.prettier-vscodeを推奨
Git Hooks(Husky)
pre-commit(コミット時)
- 役割: ステージされたファイルのみ整形・チェック(Husky + lint-staged + Prettier + PHPCS/PHPCBF + PHPStan)
- セットアップ:
composer installの後にnpm installを実行するとprepareで Husky が有効化される。必ず composer を先に実行すること - 動作:
git commitで PHP は phpcbf → phpcs → phpstan、JS/CSS/MD 等は Prettier が実行。修正不可の規約違反があるとコミット失敗 - 手動: コマンドは コマンド一覧 の各ツール表を参照。エディタの「保存時フォーマット」有効化を推奨
pre-push(プッシュ時)
- 役割:
composer phpstan-ciを実行し、core_src/ディレクトリ全体の静的解析を通す。pre-commit はステージされたファイルのみが対象だが、pre-push ではcore_src/全体を解析するため、ファイル間の不整合も検出できる - 動作:
git push時に自動実行。エラーがある場合は push が失敗する - スキップ: 緊急時は
git push --no-verifyで回避可能(非推奨)
PR 前の推奨チェック
PR を作成する前に、以下を手動で実行してローカルで CI 相当の検証を済ませることを推奨する。
bash
# PHPStan(CI 同等・core_src 全体)
composer phpstan-ci
# PHPCS(コーディング規約)
composer lint
# まとめて実行
composer quality-checkIDE と CLI の診断差異
IDE(Intelephense 等)と PHPStan の診断結果が食い違う場合がある。
| 症状 | 原因 | 対処 |
|---|---|---|
| IDE で「Undefined type」だが PHPStan は通る | Intelephense のインデックス未更新、またはワークスペース設定の差異 | Intelephense: Index workspace を実行(コマンドパレット) |
| PHPStan でエラーだが IDE は無警告 | PHPStan のレベル・設定が IDE より厳密 | composer phpstan-ci の出力を優先する |
| 特定ブランチのみエラー | ブランチ間のファイル不整合 | ルートと core_src 双方で依存関係を再インストールし再確認(composer install && cd core_src && composer install && cd .. && composer phpstan-ci) |
診断の優先度: CLI の PHPStan 結果 > IDE の表示。CI で実行されるのは PHPStan であるため、CLI の結果を正とする。
Issue / PR でエラーを報告する際は以下をセットで記載すること:
composer phpstan-ciの実行結果(エラーの有無・件数)- IDE のスクリーンショットまたはエラーメッセージ(差異がある場合)
進捗追跡
- スクリプト:
scripts/track-phpcs-progress.sh。実行はcomposer lint-progressまたは上記スクリプトを直接実行
GitHub Actions
- ワークフロー例:
.github/workflows/phpcs-check.ymlなど。PR 作成時・developへの push 時にチェック(チェックアウト → composer install → PHPCS / PHPStan 等)
関連ドキュメント
- コマンド一覧 — 実行コマンドの一覧
- CI/CD ワークフロー概要 — 各ワークフローの詳細