本テンプレートはWordPressを効率的に開発するためのテンプレートです。WordPressのアップデートが常に行われていくこと、運用が第三者になる可能性を考慮して互換性に特化したものになっています。そのためfunctionsのカスタムは最小限に留めて、必要な機能はプラグインに任せる方針になっています。
また、WordPressは常に最新のバージョンを取得する設定になっています。プロジェクト開始時に .wp-env.json を編集してWordPressとプラグインのバージョンを固定することを推奨しています。
- WP ver latest
- PHP ver 8.1
本番またはテストサーバーでは下記のプラグインをインストールすることを推奨しています。
下記の有料のプラグインを使用したい場合は運用者に連絡をしてください。リンクがダウンロードできるようになるので /plugins配下に設置してください。
- Docker Desktop
- Node.js >= 18
- package install
npm ci or npm install- wp start up & db import
npm run wp:setup- frontend build start
npm run dev- wp login
open http://localhost:3030/wp-admin
user : admin
password : passwordnpm run buildアップロードの際は/dist以下をアップロードしてください。
このプロジェクトでは、Viteサーバーのネットワークアクセスのために .wp-env.json ファイルで VITE_SERVER を指定しています。デフォルトでは 0.0.0.0 が指定されており、ローカルネットワーク上の他のデバイスからアクセスすることが可能です。
"VITE_SERVER": "http://0.0.0.0:3000"ネットワーク経由でのアクセスが必要な場合、npm run devを実行した際にNetwork部分に表示されるIPアドレスをVITE_SERVERの値に一時的に変更する必要があります。
例えば、IP アドレスが 100.00.0.000 の場合は以下のように設定します。
"VITE_SERVER": "http://100.00.0.000:3000"Warning
.wp-env.json は Git 管理されているため、ネットワークアクセスのための変更はコミットしないようにしてください。暫定的な変更として行い、変更が不要になったら元に戻すか、変更を破棄してください。
VITE_SERVERの値を反映するために以下のコマンドを実行します。
npm run wp:restartBrowserSyncを利用して複数デバイス間での同期を実現しています。起動後は3030番でアクセスできます。
open http://100.00.0.000:3030/
npm run lint:checknpm run lint:fixLint は husky でプリコミット時に必ず実行されます。以下の vscode プラグインをインストールすると vscode 保存時にも実行することができるので便利です。
プロジェクト固有のルールについては別途こちらに記載しています。一度目を通していただけると開発がしやすいです。
- 「All-in-One WP Migration」でローカル環境のデータベースをエクスポートしてテストサイトにインポートした際に、テーマファイル名が「src」になる
Warning
WordPressのテーマは通常、Git管理されてCI/CDを通じてデプロイされるため、「All-in-One WP Migration」のエクスポートに含めないことを推奨しています。データベースのバックアップや移行が主な目的であれば、「All-in-One WP Migration」でデータベースのみをエクスポートし、各種環境にインポートすることが推奨されます。
uploads/が肥大化してリポジトリのサイズが大きくなる
Warning
uplopadsが肥大化した場合はリポジトリ管理をやめて、別途外部ストレージを使用して管理することを検討してください。
- main ブランチにマージしたら本番サーバーにアップされた...
Warning
CICDが実装されている場合 main ブランチにマージすると自動デプロイの処理が実行される可能性があるので誤って本番サーバーにアップしないように注意してください。