【エンジニア向け】WordPressを学ぼう(2)- WordPressのフォルダ・ファイル構造
前回は、Wordpressの基本構造について解説した。
今回は、そのWordpressを学ぼうシリーズの第二弾、Wordpressのファイル本構造についてお伝えする。
WordPressのフォルダ・ファイル構造
まず最初に、Wordpress(Ver5.1を参考)のファイル構造は、以下のようになっている。
※主なファイルやフォルダのみ抜粋
- (WordPressルートフォルダ)
- ∟wp-admin
- ∟wp-content
- ∟languages
- ∟plugins
- ∟themes
- ∟upgrade
- ∟uploads
- ∟wp-includes
- ∟index.php
- ∟wp-blog-header.php
- (中略)
- ∟wp-config.php
- ∟wp-cron.php
- (中略)
- ∟wp-load.php
- ∟wp-login.php
- (中略)
- ∟wp-settings.php
- …
wp-adminフォルダ
wp-adminフォルダは、Wordpressの管理画面の処理に関するPHPファイル等が保存されている。基本的に、内部のファイルを編集したりすることはない。
このフォルダは、Wordpressの本体のバージョンアップ時に自動的に更新されることがある。
wp-contentフォルダ
wp-adminフォルダは、Wordpressを運用する人にとっては、もっとも重要なフォルダである。Wordpressのサイトデザインに関するファイル(画像、CSS)や、アップロードしたファイル、また言語切り替え時に利用される翻訳ファイルが保存されている。
- languagesフォルダ
Wordpressの各言語ごとの翻訳ファイル(poファイル)が保存されている。UIやエラーメッセージは、原則このフォルダ内のpoファイルを参照し、閲覧している言語に紐づくpoファイルを参照し出力している。 - pluginsフォルダ
Wordpressの機能を拡張するプラグインの保存先フォルダ。
Wordpress上でプラグインをインストールすると、このフォルダ以下に保存される。
独自でWordpress用プラグインを開発する場合は、FTP等を活用してこのフォルダにアップロードすると、
プラグインを組み込みできるようになる。 - themesフォルダ
Wordpressで構築するサイトのデザインを管理するテーマが保存されている。
独自でWordpress用テーマを作成する場合は、FTP等を活用してこのフォルダにアップロードすると、
自作テーマを選択・公開できるようになる。 - upgradeフォルダ
Wordpressをアップロードする際に利用されるフォルダ。原則気にしなくてもOK。 - uploadsフォルダ
Wordpressの管理画面(メディア)でアップロードしたファイルを保存するフォルダ。
wp-includesフォルダ
wp-includesフォルダは、Wordpressを構成する様々な処理(クラス、関数、API)が含まれるPHPファイルが保存されている。wp-adminフォルダと同じく、基本的に内部のファイルを編集したりすることはない。
このフォルダは、Wordpressの本体のバージョンアップ時に自動的に更新されることがある。
index.phpファイル
WordPressで構築したサイトにアクセスした際に、一番最初に処理されるファイル。
処理は記載されておらず、wp-blog-header.phpを読み込むだけである。
wp-blog-header.phpファイル
index.phpが読み込まれた後に処理されるファイルである。
このファイルは、Wordpressの設定(データベースへの接続情報、デバッグオプション等)や、テーマファイルを読み込むための関数が処理される。
wp-config.phpファイル
wp-load.phpが読み込まれた後に処理されるファイル。上述の通り、Wordpressの記事などを保存するデータベースへの接続情報や言語、デバッグ設定が含まれている。レンタルサーバーはこの設定ファイルを自動で更新してくれるが、自力でWebサーバーを構築した場合は、設定も自力で編集する必要がある。
wp-cron.phpファイル
WordPressで定期処理を行う場合に必要とするファイル。Wordpressには、独自の定期(Cron)処理が存在する。Wordpressで定期処理を行う場合は、wp_schedule_event()という関数で定期処理を登録すると、自動で実行される。
参考:WordPressでWP-Cronを使った自動実行をする方法:wp_schedule_event()
wp-load.phpファイル
wp-config.phpを探すためのファイル。wp-blog-header.phpが読み込まれた後に自動的に読み込まれる。
wp-login.phpファイル
管理画面へログインするときに読み込まれるファイル。標準ではファイル名はそのままなので、不正アクセスの温床になりやすい。そのため、私はLogin Rebuilder等でログインURLを変更することを強く推奨している。
wp-settings.phpファイル
wp-includes内のPHPファイルを読み込み、Wordpressの動作に必要な処理(クラス、関数)をWebサーバーのメモリ上に展開する。基本的に触らないでOK。
最後に
ここまで、Wordpressのフォルダ・ファイル構造について解説した。テーマ開発やプラグイン開発をやってみたい人は、是非一度上記のフォルダやファイルの機能・役割について理解しておくことをおすすめする。
次回は、Wordpressのコアファイルの処理の流れについて解説する。