プロジェクト構造
前提条件
WooCommerce は WordPress のコード標準とガイドラインに準拠しているため、WordPress 開発とPHPに精通していることが最善です。現在、WooCommerce には PHP 7.4 以降が必要です。
WooCommerce hooks and filtersの知識と理解を深めることで、コアファイルを編集することなくコードを追加・変更できるようになります。WordPressのフックとフィルターについては、WordPress プラグイン開発ハンドブックで詳しく説明されています。
推薦図書
WooCommerce 拡張機能は、WordPress プラグインの特殊なタイプです。WordPress プラグイン開発の初心者の方は、WordPress プラグイン開発者ハンドブックの記事のいくつかをご覧ください。
WordPress 環境の解剖
開発環境はさまざまですが、WordPress 環境の基本的なファイル構造は一貫しているはずです。
WooCommerce のエクステンションを開発する場合、通常はローカルサーバーのpublic_html/ディレクトリ内でほとんどの作業を行います。
WordPress のインストールには3つのディレクトリがあります。wp-adminとwp-includesディレクトリにはコア機能が含まれており、変更すべきではありません。3つ目のwp-contentディレクトリには、カスタム設定やユーザーが作成したメディアが保存されます。
時間をかけて、wp-contentの中のいくつかの重要なパスに慣れ親しんでください:
wp-content/debug.logは、WordPress がエラーやデバッグに役立つその他のメッセージなどの重要な出力を書き込むファイルです。wp-content/plugins/は、WordPress のプラグインフォルダがあるサーバー上のディレクトリです。wp-content/themes/は、WordPress のテーマフォルダがあるサーバー上のディレクトリです。テーマはテンプレートとスタイルの集まりで、WordPress はアクティブなテーマを1つだけ持つことができます。
最後に、WordPress インストールのルートには、wp-config.phpという設定可能なファイルがあります。このファイルは.envファイルと同様に機能し、重要なセキュリティ認証情報と環境設定を定義する変数を保存します。
WooCommerce プラグインの構造
WordPress のインストールに WooCommerce を追加する場合、WordPress のダッシュボードからプラグインをインストールするか、手動でwp-content/pluginsディレクトリにプラグインディレクトリをアップロードします。
重要: WooCommerce リポジトリは複数のプラグインとパッケージを含む monorepo です。リポジトリから WooCommerce をインストールするには、単純にリポジトリ全体をwp-content/pluginsにクローンすることはできません。WooCommerce プラグインは monorepo のplugins/ディレクトリ内にあるので、リポジトリから開発する場合は、ローカルの WordPress インストール外にクローンし、シンボリックリンクを使ってwp-content/pluginsに「配置」することをお勧めします。
各プラグイン、パッケージ、ツールには、プロジェクト固有の依存関係とスクリプトを含むpackage.jsonファイルがあります。ほとんどのプロジェクトでは、README.mdファイルにもプロジェクト固有のセットアップ手順やドキュメントが含まれています。
- Plugins:私たちのリポジトリには、WooCommerce に関連するプラグイン、またはWooCommerceの開発を支援するプラグインが含まれています。
- WooCommerce Core:WooCommerce のコアプラグインは plugins ディレクトリにあります。
- Packages:packagesディレクトリには、コミュニティのために提供されるすべての PHP と JavaScript が含まれています。これらのいくつかは内部依存であり、
internal-プレフィックスでマークされています。 - Tools:私たちのリポジトリにはツールも増えています。これらの多くは monorepo で使用するユーティリティやスクリプトを意図したものですが、このディレクトリには外部のツールも含まれることがあります。
モノレポの仕組みについてもっと知りたい方は、こちらのガイドをご覧ください。
テーマ設定と機能拡張
WooCommerce のコアに直接貢献しない限り、WordPress や WooCommerce のファイルを直接編集することはありません。すべての機能の変更はカスタム拡張機能を作成するか、アクティブなテーマのfunctions.phpファイルを変更することで行います。
WooCommerce ストアのデザイン*を編集するには、カスタムテーマを修正または作成することをお勧めします。WooCommerce のテーマ作成についてはテーマ開発ハンドブックをご覧ください。
WooCommerce ストアの*機能を編集するには、複数のオプションがあります。まず、Woo マーケットプレイスを利用して、あなたのニーズに合った適切な既成の拡張機能を見つけることができます。簡単なカスタマイズについては、コードスニペット をストアに追加する簡単な方法について詳しく知ることができます。より高度な開発が必要な場合は、カスタム拡張機能(WordPress プラグイン)を作成することをお勧めします。
