① 全体の構成要素

WordPressは大きく分けて「WordPress本体(PHPプログラム)」「データベース(MySQL/MariaDB)」「テーマ」「プラグイン」の4つの要素で構成されています。これらがサーバー上で組み合わさることで、1つのWebサイトとして動作します。

② PHPとデータベース(MySQL)の役割

PHP:処理を行うプログラム言語

WordPress本体は、PHPというプログラミング言語で書かれています。訪問者がページにアクセスすると、サーバー上でPHPが実行され、必要なデータをデータベースから取得し、HTMLを組み立てて返します。

MySQL:データを保存する場所

投稿内容・ユーザー情報・設定情報などのデータは、MySQL(またはMariaDB)というデータベースに保存されています。テーマファイルやプラグインファイルとは別に、データベースへのアクセス情報(ユーザー名・パスワード等)は「wp-config.php」というファイルに記載されています。

なぜ重要かこの仕組みを理解しておくと、「サーバー移転時にはファイルだけでなくデータベースも移す必要がある」ということが理解しやすくなります。詳しくはサーバー移管完全ガイドを参照してください。

③ wp-contentフォルダの構造

WordPress本体のファイル群の中でも、「wp-content」フォルダは特に重要です。テーマ・プラグイン・アップロードした画像など、サイトに固有のデータはすべてこのフォルダの中に収められています。

フォルダ役割
wp-content/themes/インストールした各テーマのファイル一式
wp-content/plugins/インストールした各プラグインのファイル一式
wp-content/uploads/アップロードした画像・動画等のメディアファイル
なぜ重要かWordPress本体(wp-adminやwp-includes等)はコアファイルの更新で上書きされますが、wp-contentフォルダの中身は更新の影響を受けません。バックアップを取る際、最低限このフォルダとデータベースさえあれば、サイトの中身を復元できます。

④ テーマ・プラグインの仕組み

WordPress本体には「フック(hook)」という仕組みがあり、決められたタイミングでテーマやプラグインが独自の処理を差し込めるようになっています。これにより、本体のコードを直接改造することなく、見た目(テーマ)や機能(プラグイン)を自由に拡張できます。

要素役割
テーマサイトの見た目・レイアウトを制御
プラグイン本体にない機能を追加
フック(アクション・フィルター)特定のタイミングで処理を追加・変更する仕組み

⑤ ページが表示されるまでの流れ

  1. 訪問者がURLにアクセスする
  2. サーバーがリクエストを受け取り、WordPress(PHP)が起動
  3. URLの内容に応じて、必要なデータをデータベースから取得
  4. テーマのテンプレートファイルに沿って、取得したデータをHTMLに変換
  5. 完成したHTMLがブラウザに送り返され、表示される
キャッシュとの関係この一連の処理(PHP実行・データベース問い合わせ)を毎回省略できるようにするのが「キャッシュ」の役割です。詳しくはキャッシュ機能の解説を参照してください。

⑥ 投稿データの保存構造

投稿・固定ページ・コメント・ユーザー情報などは、それぞれ専用のデータベーステーブルに保存されています。例えば投稿本文は「wp_posts」というテーブルに、投稿に付与されたカテゴリー情報は別のテーブルに保存され、それらが関連付けられて管理されています。

主なデータベーステーブルの例:
wp_posts      … 投稿・固定ページのデータ
wp_users      … ユーザーアカウント情報
wp_comments   … コメントデータ
wp_options    … サイト全体の設定情報
ブロックエディタの内容もここに保存されるブロックエディタ(Gutenberg)で書いた投稿も、従来のクラシックエディタと同じくwp_postsテーブルのpost_content列にテキストとして保存されます。異なるのは中身の形式で、各ブロックの区切りが<!-- wp:paragraph -->のようなHTMLコメント形式のマークアップとして記録され、実際の表示時にこのマークアップからHTMLへ変換される仕組みになっています。
データベース最適化との関係運用が長くなるとこれらのテーブルにデータが蓄積し、肥大化することがあります。詳しくはデータベース最適化を参照してください。

⑦ よくある質問(FAQ)

wp-contentフォルダの中身を直接編集してもよいですか?
themes・pluginsフォルダ内のファイルは、管理画面の代わりにFTP等で直接編集することもできますが、誤って構文を壊すとサイト全体が表示されなくなるリスクがあります。編集前には必ずバックアップを取り、可能であればステージング環境で確認してから本番に反映することをおすすめします。
ブロックエディタで書いた内容もwp_postsテーブルに保存されますか?
はい、ブロックエディタの内容も従来の投稿と同じくwp_postsテーブルのpost_content列に保存されます。異なるのは保存される中身の形式で、ブロックごとの区切りが「<!-- wp:paragraph -->」のようなHTMLコメント形式のマークアップとして記録され、表示時にこのマークアップからHTMLへ変換されます。
プラグインを削除すると保存したデータも消えますか?
プラグインを「無効化」しただけではデータベース内のデータは残りますが、「削除」を実行すると、多くのプラグインは自身が作成した設定データも一緒に削除する仕組みになっています。ただし一部のプラグインは、再導入時に備えてデータを意図的に残す設計になっている場合もあり、動作はプラグインによって異なります。

関連コンテンツ

↑