【エンジニア向け】WordPressを学ぼう(2)- WordPressのフォルダ・ファイル構造

【エンジニア向け】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のコアファイルの処理の流れについて解説する。