WordPressが実際に舞台裏でどのように機能するのか疑問に思ったことはありますか?
一般的なユーザーにとっては、URLを入力して数秒でページが読み込まれるので簡単なようですが、舞台裏では多くのことが起こります。
このガイドでは、WordPressが実際に舞台裏でどのように動作するかを説明し、インフォグラフィックにも簡単に従うように作成しました。
- WordPressとは何ですか?
- なぜWordPressの仕組みを学ぶ必要がありますか?
- 1. Wp-configをロードします。phpファイル
- 2. Wp-configをロードした後、デフォルトの定数
- 3. アドバンストキャッシュをロードします。phpファイル
- 4. Wp-content/dbをロードします。phpファイル
- 5. MySQLに接続し、[データベース]
- 6. オブジェクトキャッシュをロードします。phpまたはwp-includes/cache。phpファイル
- 7. ロードwp-コンテンツ/日の出。phpファイル
- 8. ロードローカライズライブラリ
- 9. マルチサイトプラグインをロード
- 10. Do Action’muplugins_loaded’
- 11. アクティブなプラグインをロード
- 12. ロードプラガブル。phpファイル
- 13. Doアクション’plugins_loaded’
- 14. 書き換えルールのロード
- 15. インスタンス化$wp_query,.wp_rewrite,WordPress wp
- 16. Do Action’setup_theme’
- 17. 子テーマの機能をロードします。phpファイル
- 18. 親テーマの関数をロードします。phpファイル
- 19. Do Action’after_setup_theme’
- 20. 現在のユーザーオブジェクトの設定
- 21. Do Action’init’
- 22. Do Action’widget_init’
- 23. Wp()
- 24. これで、WordPressはユーザー要求を解析するために必要なすべての情報を持っています。 まず、ユーザーの要求に一致するように書き換えルールを確認します。
- 25. クエリ
- 26. Doアクション’template_redirect’
- 27. フィードテンプレートをロード
- 28. Load Template
- 29. Do Action’shutdown’
WordPressとは何ですか?
これは、誰もが想像可能なウェブサイトの任意の種類を作るために使用できるオープンソースのソフ
2003年にブログプラットフォームとしてスタートしましたが、すぐにCMSに変わり、後に本格的なウェブサイト構築プラットフォームに変わりました。 今日では、インターネット上のすべてのウェブサイトの38%以上に電力を供給しています。
その進化、歴史、長所&短所の詳細については、WordPressとは何かに関する包括的なガイドを参照してください。 そして、WordPressサイトを構築するのにどれくらいの費用がかかりますか。
なぜWordPressの仕組みを学ぶ必要がありますか?
WordPressはオープンソースのソフトウェアであり、誰でもコードを勉強し、独自のアプリ(プラグイン)やテンプレート(テーマ)を書くことができることを意味します。
WordPressがどのように動作し、舞台裏で何が起こっているかを学ぶことは、あなたがそれで何ができるかを理解するのに役立ちます。 WordPressのパフォーマンスの向上について学び、独自のプロジェクトのためのより良いコードを書くことができます。
このガイドでは、プロセス全体を段階的に順を追って説明します。 ユーザーがページを要求したときから開始し、そのページが完全にロードされたときに終了します。
準備はできましたか? 始めよう
詳細については、以下の書かれたチュートリアルに従うこともできます。
1. Wp-configをロードします。phpファイル
wp-config.phpはWordPressの設定ファイルです。 WordPressサイトのグローバル変数を設定し、WordPressデータベース情報を含みます。 これは明白な理由のためにWordPressがロードする最初のファイルです。 Wp-configの詳細については、こちらをご覧ください。phpファイルとそれを編集する方法。
2. Wp-configをロードした後、デフォルトの定数
を設定します。phpファイル、WordPressはデフォルトの定数を設定するために移動します。 これには、デフォルトのWordPressのアップロード場所、最大ファイルサイズ、およびwp-configで設定されたその他のデフォルト定数などの情報が含まれます。phpファイル。
3. アドバンストキャッシュをロードします。phpファイル
高度なキャッシュの場合。phpファイルがあなたのサイトに存在し、次にWordPressがそれをロードします。 このファイルは、ドロップインファイルとして機能し、いくつかの人気のあるプラグイン、特にWordPressのキャッシ あなたのサイトがこのファイルを使用している場合は、ドロップインと呼ばれるプラグイン画面に新しい項目が表示されます。
4. Wp-content/dbをロードします。phpファイル
WordPressは、開発者が独自のデータベース抽象化レイヤーを作成し、dbにロードすることができます。wp-contentフォルダ内に配置されたphpファイル。 これは、一般的にデータベースのパフォーマンスを向上させるためにワードプレスキャッシュプラグインによって使用されます。 あなたのウェブサイトにこのファイルが存在する場合、WordPressはそれをロードします。
5. MySQLに接続し、[データベース]
を選択します。WordPressには、さらに進むのに十分な情報があります。 MySQLサーバーに接続し、データベースを選択します。
WordPressがデータベースに接続できない場合、”データベース接続の確立中にエラーが発生しました”というエラーが表示され、WordPressはここで終了します。
すべてが正常に動作する場合は、次の手順に進みます。
6. オブジェクトキャッシュをロードします。phpまたはwp-includes/cache。phpファイル
WordPressはオブジェクトキャッシュを探します。phpファイル。 存在しない場合、WordPressはwp-includes/cacheをロードするために移動します。phpファイル。
7. ロードwp-コンテンツ/日の出。phpファイル
マルチサイトネットワークの場合、WordPressはsunriseを探します。phpファイルがwp-contentフォルダに存在する場合。
8. ロードローカライズライブラリ
WordPressがロードされますl10n.php wp-includesフォルダ内のライブラリ。 このファイルは、WordPressのローカリゼーションシステムをロードし、翻訳をロードし、ロケールなどを設定します。 他の言語でWordPressを使用する方法についての私たちのガイドを参照してください。
9. マルチサイトプラグインをロード
マルチサイトネットワークの場合、WordPressはマルチサイトプラグインをロードします。 WordPressマルチサイトネットワークでプラグインがどのように機能するかについての詳細をご覧ください。
10. Do Action’muplugins_loaded’
アクションmuplugins_loadedがWordPressによって実行されるようになりました。 このアクションは、WordPressのマルチサイト上のネットワーク活性化プラグインにのみ利用可能です。
11. アクティブなプラグインをロード
WordPressは今、サイト上のすべてのアクティブなプラグインをロードします。 それはあなたのWordPressデータベースのoptionsテーブルのactive_pluginsエントリを見ることによってそれをします。 これにより、WordPressはサイトにインストールされているが有効化されていないプラグインを無視することができます。
12. ロードプラガブル。phpファイル
プラグイン可能です。phpファイルには、WordPressプラグインで再定義できる関数が含まれています。 WordPressは、このファイル内の関数がすでに別のプラグインによって定義されているかどうかを確認します。 それ以外の場合は、それらの関数自体を定義します。
13. Doアクション’plugins_loaded’
WordPressはアクション’plugins_loaded’を実行します。 これは、開発者がすべてのアクティブなプラグインがロードされた後に実行するために彼らの関数をフックすることができます。
14. 書き換えルールのロード
WordPressは書き換えルールをロードします。 これらの書き換えルールは、WordPressがSEOに優しいUrlを使用するのに役立ちます。
15. インスタンス化$wp_query,.wp_rewrite,WordPress wp
この時点でWordPressは次のオブジェクトをロードします。
WordPress wp_query:Wp_Queryクラスを保持するグローバルインスタンス。 これは、典型的なWordPressのクエリ形式で要求されたコンテンツをWordPressに伝えます。
$wp_rewrite:Wp_Rewriteクラスを保持するグローバルインスタンス。 これには、要求されたコンテンツを表示するために使用するURLをWordPressに指示する書き換えルールと関数が含まれています。
wp wp:リクエストを解析してメインクエリを実行する関数を含むWPクラスのグローバルインスタンス。
16. Do Action’setup_theme’
WordPressは’setup_theme’アクションを実行するようになりました。 このアクションは、WordPressテーマがロードされる前に実行されます。
17. 子テーマの機能をロードします。phpファイル
phpファイルは、プラグインとして機能し、あなたのウェブサイトにテーマ固有の機能を追加するためにWordPressのテーマで使用されています。 子テーマを使用している場合、WordPressは子テーマの機能をロードするようになりました。phpファイル。
それ以外の場合は、上に移動し、現在のアクティブなテーマの機能をロードします。phpファイル。
18. 親テーマの関数をロードします。phpファイル
子テーマを使用している場合、WordPressは親テーマの機能をロードします。phpファイル。
19. Do Action’after_setup_theme’
このアクションは、WordPressがテーマを設定し、テーマ関数をロードした後に実行されます。 これは、テーマに利用可能な最初のアクションです。
20. 現在のユーザーオブジェクトの設定
この時点で、WordPressは現在のユーザーオブジェクトを読み込みます。 これにより、WordPressはユーザーの役割と機能に応じてリクエストを管理できます。
21. Do Action’init’
WordPressはこれまでに必要なすべての重要な情報をロードしました。 今では’init’アクションを起動します。
このアクションにより、開発者はWordPressが前述のすべての情報をロードした後に実行する必要があるコードを追加できます。
22. Do Action’widget_init’
widget_init
アクションを使用すると、開発者はウィジェットを登録し、この時点で実行する必要があるコードを実行できます。
23. Wp()
を実行すると、WordPressはwp-includes/functions.php
ファイルにあるwp()
関数を呼び出すようになりました。 WordPressクエリグローバル$wp、.wp_query、$wp_the_queryを設定し、calls wp->mainを呼び出します。
24. これで、WordPressはユーザー要求を解析するために必要なすべての情報を持っています。 まず、ユーザーの要求に一致するように書き換えルールを確認します。
を実行し、クエリ変数フィルター、リクエストアクションフックを実行し、ヘッダー要求を送信します。
25. クエリ
を実行しますクエリに一致するコンテンツがない場合、WordPressはis_404変数を設定します。
それ以外の場合、WordPressはクエリ変数をロードします。
その後、Wp_Query->get_posts()を実行します。
次に、WP_QueryオブジェクトでDO_ACTION_REF_ARRAY’pre_get_posts’アクションを起動します。
WordPressはapply_filtersを実行してクエリをクリーンアップし、いくつかの最終チェックを実行します。
これで、データベースから投稿を取得し、posts_resultsと_postsフィルタを適用します。
クエリ部分はWordPressが投稿を返すことで終了します。
26. Doアクション’template_redirect’
WordPressはtemplate_redirect
アクションを実行します。 このフックは、WordPressがロードするテンプレートページを決定する直前に実行されます。
27. フィードテンプレートをロード
要求されたコンテンツがRSSフィードの場合、WordPressはフィードテンプレートをロードします。
28. Load Template
WordPressはWordPressのテンプレート階層に基づいてテンプレートファイルを探します。 その後、通常はWordPressのループを含むテンプレートをロードします。
29. Do Action’shutdown’
すべてのPHP実行を終了する直前に、WordPressはshutdownという最後のアクションを起動します。
コードを実行し、ユーザーの要求されたwebページを生成しました。
今、あなたのウェブホスティングサーバーは、WordPressによって生成されたwebページを送信することによって、ユーザーの要求に応答します。 このページには、HTML、CSS、およびJavascriptコードが含まれており、ユーザーのブラウザに画面に表示する方法を指示します。
すごいですね。 これらのことはすべてミリ秒以内に起こります。 これらの最高のWordPressホスティングサービスの1つを使用している場合は、理想的には数秒でページが読み込まれます。
この記事がWordPressの舞台裏での仕組みを学ぶのに役立つことを願っています。 また、初心者のためのWordPressの速度とパフォーマンスを向上させる方法についてのステップバイステップガイドをご覧ください。
この記事が好きなら、WordPressのビデオチュートリアルのためのYouTubeチャンネルを購読してください。 また、TwitterやFacebook上で私たちを見つけることができます。