0

0

WordPress 在幕后的实际工作原理(信息图)

冰川箭仙

冰川箭仙

发布时间:2025-05-10 13:58:16

|

749人浏览过

|

来源于php中文网

原创

您有没有想过 wordpress 在幕后实际上是如何工作的?

对于典型用户来说,这看起来很简单,因为您输入 URL,页面会在几秒钟内加载,但幕后发生了很多事情。

在本指南中,我们将引导您了解 WordPress 在幕后的实际工作原理,并且我们还创建了一个易于理解的信息图。

WordPress 在幕后的实际工作原理(信息图)

什么是 WordPress?

WordPress 是一个网站构建器和内容管理系统。它是开源软件,任何人都可以使用它来制作任何可以想象的网站。

它于 2003 年最初是一个博客平台,但很快转变为 CMS,后来又转变为成熟的网站建设平台。如今,互联网上超过 43% 的网站均由它提供支持。

要了解有关其演变、历史和优缺点的更多信息,您可以查看我们关于什么是 WordPress以及构建 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.加载advanced-cache.php文件

如果您的网站上存在 Advanced-cache.php 文件,那么 WordPress 接下来将加载它。

该文件充当嵌入式文件,由多个流行的插件使用,特别是WordPress 缓存插件。如果您的网站使用此文件,您将在插件屏幕上看到一个名为 Drop-ins 的新项目。

WordPress 在幕后的实际工作原理(信息图)

4.加载wp-content/db.php文件

WordPress 允许开发人员创建自己的数据库抽象层并将其加载到 wp-content 文件夹内的 db.php 文件中。WordPress 缓存插件通常使用它来提高数据库性能。

如果您的网站存在此文件,那么 WordPress 将加载它。

5.连接MySQL并选择数据库

WordPress 现在有足够的信息来进一步进行。它将连接到 MySQL 服务器并选择数据库。

如果 WordPress 无法连接到数据库,您将看到“建立数据库连接时出错”错误,并且 WordPress 将在此处退出。

如果一切正常,那么它将继续进行下一步。

6.加载object-cache.php或wp-includes/cache.php文件

WordPress 现在将查找 object-cache.php 文件。如果它不存在,那么 WordPress 将继续加载 wp-includes/cache.php 文件。

7.加载wp-content/sunrise.php文件

如果是多站点网络,那么 WordPress 将查找 wp-content 文件夹中存在的 sunrise.php 文件。

8.加载本地化库

WordPress 现在将加载 wp-includes 文件夹中的 l10n.php 库。该文件加载 WordPress 本地化系统、加载翻译、设置区域设置等。

您可以查看我们关于如何使用其他语言的 WordPress 的指南。

9.加载多站点插件

如果是多站点网络,那么 WordPress 将加载多站点插件。详细了解插件如何在 WordPress 多站点网络上工作。

WordPress 在幕后的实际工作原理(信息图)

10.执行“muplugins_loaded”操作

muplugins_loaded 操作现在由 WordPress 运行。此操作仅适用于 WordPress 多站点上的网络激活插件。

11.加载活动插件

WordPress 现在将加载网站上的所有活动插件。它通过查看WordPress 数据库选项表中的 active_plugins 条目来实现这一点。这允许 WordPress 忽略已安装在您网站上但未激活的插件。

12.加载pluggable.php文件

Pluggable.php 文件包含可由 WordPress 插件重新定义的函数。

WordPress 现在将查看另一个插件是否已经定义了该文件中的函数。否则,它将自己定义这些函数。

基于web的网络购物系统附毕业设计论文
基于web的网络购物系统附毕业设计论文

一个用asp+access实现的网络购物系统,商品支持大类和小类操作,每个商品支持图片显示,一般的购物人员在前台登陆系统后可以随便选择商品,当选择去收银台后系统会自动生成订单,管理员登陆系统后可以管理商品分类信息,商品信息,用户信息,订单信息等

下载

13. 执行“plugins_loaded”操作

WordPress 现在将运行“plugins_loaded”操作。

它允许开发人员在加载所有活动插件后挂钩其函数来运行。

14. 加载重写规则

WordPress 现在将加载重写规则。这些重写规则有助于 WordPress 使用SEO 友好的 URL。

15.实例化$wp_query、$wp_rewrite、$wp

此时,WordPress 会加载以下对象:

$wp_query:保存 WP_Query 类的全局实例。它告诉 WordPress 以典型的 WordPress 查询格式请求什么内容。

$wp_rewrite:保存 WP_Rewrite 类的全局实例。它包含您的重写规则和函数,告诉 WordPress 使用哪个 URL 来显示请求的内容。

$wp: WP 类的全局实例包含将解析您的请求并执行主查询的函数。

16.执行“setup_theme”操作

WordPress 现在将继续运行“setup_theme”操作。此操作在加载WordPress 主题之前运行。

17.加载子主题的functions.php文件

function.php 文件充当插件,在 WordPress 主题中使用,以向您的网站添加特定于主题的功能。如果您使用子主题,那么 WordPress 现在将加载子主题的functions.php文件。

否则,它将继续加载当前活动主题的functions.php 文件。

18.加载父主题的functions.php文件

如果您使用子主题,那么 WordPress 现在将加载父主题的functions.php 文件。

19.执行“after_setup_theme”操作

此操作在 WordPress 设置主题并加载主题功能后运行。这是主题可用的第一个操作。

20. 设置当前用户对象

此时,WordPress 加载当前用户对象。它允许 WordPress 根据用户的角色和能力来管理请求。

21. 执行“init”操作

到目前为止,WordPress 已经加载了它需要的所有关键信息。现在它触发“init”操作。此操作还会注册核心中可用的块或由该网站上安装的任何插件提供的块。

此操作使开发人员能够添加在 WordPress 加载所有前面提到的信息后需要执行的代码。

22.执行“widget_init”操作

该widget_init操作允许开发人员注册小部件并运行他们此时需要运行的代码。

23. 运行 wp()

WordPress 现在调用该wp()函数,该函数位于wp-includes/functions.phpfile. 它设置 WordPress 查询全局变量 $wp、$wp_query、$wp_the_query,然后调用 $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 和 the_posts 过滤器。

查询部分以 WordPress 返回帖子结束。

26.执行“template_redirect”操作

WordPress 现在将运行该template_redirect操作。该挂钩在 WordPress 确定要加载哪个模板页面之前运行。

27.加载提要模板

如果请求的内容是RSS feed,则 WordPress 会加载该 feed 模板。

28.加载模板

WordPress 现在将根据 WordPress 模板层次结构查找模板文件。然后它加载模板,该模板通常包含WordPress 循环。

29.执行“关闭”操作

就在结束所有 PHP 执行之前,WordPress 会触发名为 shutdown 的最后一个操作。

WordPress 在这里停止工作。它已运行代码并生成用户请求的网页。

现在,您的网络托管服务器通过向用户发送由 WordPress 生成的网页来回复用户的请求。该页面包含 HTML、CSS 和 Javascript 代码,告诉用户的浏览器如何在屏幕上显示它。

太棒了,不是吗?所有这些事情都在几毫秒内发生。如果您使用的是这些最好的 WordPress 托管服务之一,您的页面理想情况下会在几秒钟内加载。

我们希望本文能帮助您了解 WordPress 在幕后的工作原理。您可能还想查看我们有关如何提高 WordPress 速度和性能的分步指南,以及我们专家精选的最佳WordPress 插件来发展您的网站。

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

1880

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

1236

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

1129

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

948

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

1398

2023.10.23

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

1229

2023.11.03

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1439

2023.11.09

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1303

2023.11.13

俄罗斯搜索引擎Yandex最新官方入口网址
俄罗斯搜索引擎Yandex最新官方入口网址

Yandex官方入口网址是https://yandex.com;用户可通过网页端直连或移动端浏览器直接访问,无需登录即可使用搜索、图片、新闻、地图等全部基础功能,并支持多语种检索与静态资源精准筛选。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

1

2025.12.29

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Sass 教程
Sass 教程

共14课时 | 0.7万人学习

Bootstrap 5教程
Bootstrap 5教程

共46课时 | 2.7万人学习

CSS教程
CSS教程

共754课时 | 17.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号