Skip to content

コマンド一覧

プロジェクトで利用するコマンドを一覧にまとめています。ツールの概要・設定は ツール概要・設定 を参照してください。

CI ワークフローとローカルコマンド対応

ワークフロー名内容ローカルで再現するコマンド
PHPCS CheckWordPress Coding Standards・未使用use文・PHPCScomposer lint / composer lint-fix
PHPStan Check静的解析composer phpstan-ci
Deptrac Architecture Checkアーキテクチャ依存関係チェックcomposer deptrac
PSR-4 Compliance CheckPSR-4 準拠チェックcomposer psr4
Format CheckPrettier フォーマットチェックnpm run format:check / npm run format

複数チェックをまとめて実行する例:

  • PHPStan + Deptrac: composer ci-static-check
  • 品質一括(PHPCS + PHPStan + PHPUnit): composer quality

PHP 系ワークフローでは、core_srccomposer install によりオートロードが生成されます。背景は Composer Autoload 運用ガイド を参照してください。

PHPCS(コーディング規約)

用途コマンド
チェック(サマリ)composer lint
チェック(詳細)composer lint-verbose
特定パスのみチェックcomposer run lint-path -- <パス>
詳細レポートcomposer lint-full
ソース表示レポートcomposer lint-source
自動修正composer lint-fix
特定パスのみ自動修正composer run lint-fix-path -- <パス>
Checkstyle 出力composer lint-report
進捗確認composer lint-progress

PHPStan(静的解析)

用途コマンド
解析(推奨)composer analyse
CI 同等(core_src)composer phpstan-ci
メモリ増量時composer analyse -- --memory-limit=2G

Deptrac(アーキテクチャ)

用途コマンド
解析composer deptrac
CI 同等composer deptrac-ci

PSR-4 準拠

用途コマンド
チェックcomposer psr4
CI 同等composer psr4-ci

フォーマット(Prettier)

用途コマンド
全ファイル整形npm run format
チェックのみnpm run format:check
特定ファイルnpx prettier --write <パス>

PHPUnit(テスト)

用途コマンド
全テスト実行composer test
特定テストvendor/bin/phpunit tests/Unit/ path/To/Test.php
カバレッジレポートcomposer test-coverage

まとめて実行

用途コマンド
PHPStan + Deptrac(CI 同等)composer ci-static-check
PHPCS + PHPStan + PHPUnitcomposer quality
ローカル品質チェック(PHPCS + PHPStan + Deptrac、PHPUnit なし)composer quality-check または ./bin/run_local_quality_check.sh

ビルド・デプロイ・ドキュメント

用途コマンド
古いローカルビルド削除./bin/clean-old-builds.sh
古いリモートビルド削除(本番)./bin/clean-remote-builds.sh
古いリモートビルド削除(ステージング)./bin/clean-remote-builds-staging.sh
本番ビルド./bin/build.sh
本番デプロイ(一括)./bin/deploy-all.sh
本番アップロードのみ./bin/deploy.sh [version]
本番 VERSION 切り替え+キャッシュ削除./bin/activate.sh <version>
本番キャッシュ削除のみ./bin/clear-cache.sh
ステージングデプロイ(一括)./bin/deploy-all-staging.sh
ステージングアップロードのみ./bin/deploy-staging.sh [version]
ステージング VERSION 切り替え+キャッシュ削除./bin/activate-staging.sh <version>
ステージングキャッシュ削除のみ./bin/clear-staging-cache.sh
管理画面でビルド一覧/削除WordPress 管理画面 → ツール → ビルド管理
ドキュメント開発npm run docs:dev
ドキュメントビルドnpm run docs:build
ドキュメントプレビューnpm run docs:preview
管理画面 UI ビルド(日報ブロック+ P-WORLD 画像キャプチャ)npm run build

本番デプロイ前バックアップ(DB + サイトファイル)

ConoHa のファイルマネージャーで一式 zip を取ると 504 になりやすいため、サイト一式は SSH / rsync で取得します(デフォルト)。backups/.gitignore 対象です。

用途コマンド
デプロイ前に DB ダンプ + WP ルートのミラー + 復旧メモ./scripts/backup-before-deploy.sh
DB とメモのみ(ファイル rsync なし)./scripts/backup-before-deploy.sh --no-files
wp-content/uploads/ も含める(時間・容量増)./scripts/backup-before-deploy.sh --with-uploads
バックアップした DB を本番へ復元./scripts/restore-db-to-production.sh backups/<日時>/db.sql.gz

デフォルトのファイル取得では wp-content/uploads/ やキャッシュ等を .backup-rsync-excludes で除外します。

設定は config/local.envDEPLOY_* / PROD_DB_* / DEPLOY_REMOTE_PATH)。WordPress ルートを固定で指定したい場合は任意で DEPLOY_REMOTE_WP_ROOT を設定します。復旧手順は各バックアップ内の ROLLBACK.md を参照。

デプロイと myTemplate / scripts: ./bin/deploy.sh / ./bin/deploy-staging.sh(内部で bin/_deploy-core.sh を実行)は _build/core_* に加え、次をリモートの DEPLOY_REMOTE_PATH 配下へ同期します。

  • myTemplate/single-daily-article-template.php … リポジトリルートにファイルがあるときのみ myTemplate/ へアップロード。無い場合は警告のみ(core_* の転送は完了)。
  • scripts/ … リポジトリ直下の scripts/rsyncDEPLOY_REMOTE_PATH/scripts/ に同期(wp eval-file 用の PHP 等。.DS_Store*.bak は除外)。
  • 前提条件scripts/ の同期は rsync に依存します。ローカル環境・リモート環境の双方に rsync がインストールされている必要があり、どちらか一方でも未導入の場合はデプロイがエラー終了します。

--delete の挙動(運用注意): rsync --delete により、除外されていない同期対象ファイルでローカルの scripts/ に存在しないものは、リモートからも削除されます。バックフィルなど一時スクリプトをリモートで実行した後にローカルから削除した場合、次の deploy.sh 実行でリモートからも消えることを意識してください。スクリプトが不要になったことを確認してからローカルで削除し、その後デプロイするのが安全な手順です。

なお、--exclude='.DS_Store' / --exclude='*.bak' を付けているため、これらの除外パターンに一致するファイルは --delete だけではリモートから削除されません。除外対象も含めて完全に揃えたい場合は、リモートで手動削除するか、実装側で --delete-excluded の採用を検討してください。

Web 直接アクセス対策: scripts/ には scripts/.htaccessRequire all denied)を同梱しており、Apache 経由のブラウザアクセスをブロックします。ただし nginx 等の場合は Web サーバー設定側で scripts/ への直接アクセスを遮断してください。

日別記事が環境で表示されないとき(確認手順)

ローカルでは表示できるがステージング等で一般ユーザー向けに本文がほぼ出ない場合の切り分け。該当環境の DB・ファイル・HTML を確認します。

post meta(レイヤー A)

  • 対象の daily_article 投稿 ID を決める。
  • wp_postmetakousatsu_date / halls非空の文字列か確認する(配列として保存されている・空文字のみ等だとテンプレート側で一般ユーザーには出力されない)。
  • テーブルプレフィックスは環境に合わせて読み替える。
sql
SELECT meta_key, meta_value
FROM wp_postmeta
WHERE post_id = ? /* 投稿ID */
  AND meta_key IN ('kousatsu_date', 'halls');

HTML とログ

  • ログアウト状態で記事 URL を開き、HTML ソースに DailyArticleTemplate 関連のコメントやバリデーション文言がないか確認する。
  • WP_DEBUG / WP_DEBUG_LOG を有効にできる環境では debug.log[ERROR] DailyArticleTemplate や TemplateHooks のデバッグログを確認する。

DOM と台データ(レイヤー B)

  • 開発者ツールで、日別結果ショートコード由来のマークアップ(ランキング・ヒートマップ等)が DOM に存在するか確認する。本文枠がまったく無い場合はレイヤー A やテンプレート未配置を先に疑う。
  • 台データなどアプリ用テーブルに、該当する考察日・ホールのデータが揃っているか(DB インポート範囲・バッチの有無)。

テンプレートと VERSION

  • リモートの子テーマに myCustom/myTemplate/single-daily-article-template.php があるか(上記デプロイで myCustom/myTemplate/ に同期するか、手動で配置)。
  • リモートの connector.phpVERSION と、実際に存在する core_YYYYMMDD_HHMMSS ディレクトリが一致しているか。

Transient

  • 必要に応じ daily_article_template_ プレフィックスの transient を削除し、表示が変わるか確認する(DailyArticleTemplateDataService 経由のキャッシュ)。

古いビルドの削除

_build/ 内に蓄積した古いビルドディレクトリ(core_YYYYMMDD_HHMMSS)を削除します。

用途コマンド
一覧表示./bin/clean-old-builds.sh --list
最新1件を残して削除(デフォルト)./bin/clean-old-builds.sh
最新 N 件を残して削除./bin/clean-old-builds.sh --keep N
指定バージョンを削除./bin/clean-old-builds.sh --version YYYYMMDD_HHMMSS
ドライラン(削除対象の確認のみ)./bin/clean-old-builds.sh --dry-run
ドライラン(最新2件残す場合)./bin/clean-old-builds.sh --keep 2 --dry-run

注意: ./bin/build.sh は実行のたびに _build/* を全削除してから新規ビルドするため、通常は core_* が1件のみ残ります。複数ビルドが存在する場合(手動コピーなど)に本コマンドを利用してください。

リモート(本番・ステージング)の古いビルド削除

デプロイ先サーバーの DEPLOY_REMOTE_PATH 配下にある core_YYYYMMDD_HHMMSS を削除します。

用途本番コマンドステージングコマンド
一覧表示./bin/clean-remote-builds.sh --list./bin/clean-remote-builds-staging.sh --list
最新1件を残して削除(デフォルト)./bin/clean-remote-builds.sh./bin/clean-remote-builds-staging.sh
最新 N 件を残して削除./bin/clean-remote-builds.sh --keep N./bin/clean-remote-builds-staging.sh --keep N
指定バージョンを削除./bin/clean-remote-builds.sh --version VER./bin/clean-remote-builds-staging.sh --version VER
ドライラン(削除対象の確認のみ)./bin/clean-remote-builds.sh --dry-run./bin/clean-remote-builds-staging.sh --dry-run
ドライラン(最新2件残す場合)./bin/clean-remote-builds.sh --keep 2 --dry-run./bin/clean-remote-builds-staging.sh --keep 2 --dry-run

注意: アクティブに利用中の core_* を削除するとサイトが動作しなくなる可能性があります。削除前に、リモート環境の connector.php などで VERSION 定数を参照し、現在参照中のバージョンを必ず特定してください。

管理画面でのビルド管理

WordPress 管理画面の ツール > ビルド管理 から、サーバー上の core_YYYYMMDD_HHMMSS を一覧表示・削除できます。

  • 稼働中のバージョン(VERSION が参照中の core_*)は削除不可
  • チェックボックスで選択したビルドを一括削除可能

関連ドキュメント