什么是WordPress?为什么要学习WordPress?

WordPress 是世界上最受欢迎的开源内容管理系统(CMS)。从 2003 年开始的一个简单的博客引擎演变成一个基于可扩展设计系统的完整的Web 开发解决方案。Web 发布者可以使用各种附加组件和小部件扩展WordPress CMS的核心功能,以构建他们需要的功能。在今天的指南中,我们将深入了解 WordPress 的幕后,并了解更多关于流行的网站建设平台的来龙去脉。

什么是WordPress?为什么要学习WordPress?-南华中天

什么是WordPress?

WordPress 由Matt Mullenweg 和 Mike Little 在 2003 年作为博客引擎 B2 的一个分支推出。该脚本是用PHP编写的,并安装在MySQL 数据库中,以HTML、CSS 和 JavaScript编写的页面输出 Web 内容。开发人员可以安装来自第三方PHP 开发人员的插件和主题,这些插件和主题可免费或通过付费订阅许可证获得。

核心 WordPress 功能作为多用户博客平台运行。Automattic 的WooCommerce等解决方案添加了管理完整电子商务商店所需的插件。BuddyPress 发行版允许 WordPress 作为社交网络运行,而bbPress 包可用于论坛站点。总体而言,有数以千计的WordPress 独立开发解决方案可用于构建几乎任何类型的网站。

为什么要学习 WordPress?

WordPress 为超过40% 的在线发布网站提供支持,并支持由数百万专业开发人员组成的生态系统。各种规模的商业出版商都依赖该脚本的易用性、开源许可、大量免费代码资源档案和经过同行评审的安全性。世界上最大的品牌、媒体出版物和非政府组织都使用 WordPress,因为它能够以低成本扩展和满足最高的用户流量水平。

学习 WordPress 为开发人员提供了一致的客户群,用于自定义主题设计、PHP 编程、JavaScript 编码,并提供专业的网络发布解决方案。WordPress 的 Web 服务器优化和运行时支持操作投入了大量时间和组织资源。最重要的是,WP 允许企业和初创组织在开源工具上构建网站和移动应用程序,从而节省在软件开发方面的大量投资。

WordPress是如何工作的?

WordPress 可以在Linux、Windows或BSD 服务器上运行。尽管如此,由于它对PHP 运行环境和 MySQL 兼容数据库的主要要求,该应用程序在 Linux 环境中运行得最好。您还可以在Nginx、LiteSpeed、IIS或Caddy等替代服务器框架上运行脚本,但许多 CMS 设置需要 Apache 的 .htaccess 文件才能运行。大多数用户可以使用Softaculous或替代软件自动安装程序单击安装 WordPress 。

什么是WordPress?为什么要学习WordPress?-南华中天

WordPress 核心

WordPress 核心是 Automattic 在官方发行版中发布的完整文件集。它的当前版本是5.9.2,截至 2022 年 3 月可用。每个主要的 WP 平台版本都包括新特性和功能以及对最新编程标准的支持。

根据“钩子例程:钩子、钩子函数和回调函数”(2022):

  • “操作用于在 WordPress Core 执行期间的特定时间点运行自定义功能。操作由函数定义/创建: WordPress 代码中的'do_action('action_name')' 。”
  • “过滤器用于修改或自定义其他功能使用的数据。过滤器由函数定义/创建: 'apply_filters('filter_name', 'value_to_be_filtered')'在 WordPress 代码中。

WordPress 核心包括管理使用脚本对注册用户进行内容管理所需的所有 PHP 代码。核心通过各种附加组件和小部件进行扩展,站点所有者可以将其安装在管理部分。

WordPress 钩子

Hooks 是 WordPress 中的 PHP 代码片段,允许插件与核心功能交互或通过信息交换协同工作。WP 有数百个预定义的钩子,允许开发人员在 CMS 运行时的特定点插入新代码。

“操作允许您添加数据或更改 WordPress 的运行方式。操作将在执行 WordPress 核心、插件和主题的特定时间点运行。” – WordPress (2022)

动作和过滤器的主要区别在于前者使用钩子将代码应用到WordPress 运行时而不返回任何进一步的数据。相比之下,过滤器应用带有可变信息的钩子,然后在不同的插件或分析中使用这些信息。

“过滤器使您能够在执行 WordPress Core、插件和主题期间更改数据。过滤器的回调函数将接受一个变量,修改它,然后返回它。” – WordPress (2022)

Hooks 允许 PHP 开发人员以集成的方式向 WordPress 添加新特性和功能。您如何在 WordPress 中将 PHP 代码放置在您的主题、插件或网站页面中,将决定 CMS 中显示的结果。

WordPress 功能

如果您需要将自定义 PHP 代码添加到 WordPress 网站但不想要插件的全部功能,CMS 核心中的functions.php 文件将允许您添加产生所需结果的片段。functions.php 文件允许您将所有自定义代码合并到一个位置,以便对 WordPress 网站进行简单的开发修改。

“WordPress 的文件定义了许多有用的 PHP 函数。一些称为模板标签的功能是专门为在 WordPress 主题中使用而定义的。还有一些与动作和过滤器相关的功能(插件 API),因此主要用于开发插件。” – WordPress 法典(2022 年)

functions.php 文件的另一个有用选项是开发特定于站点的插件。这允许您的代码被划分并通过WordPress 核心 PHP 处理序列运行,从而降低出错的风险。但是,自定义 WordPress 插件开发的成本可能比使用代码片段高得多。

什么是WordPress?为什么要学习WordPress?-南华中天

WordPress 课程

WordPress 类用于跨核心、插件和主题功能实现面向对象的编程方法。一旦在 WordPress 中全局声明了一个类,它就可以被其他插件和主题通过钩子和函数引用以在模块化设计中显示。

“类名应该使用大写的单词,用下划线分隔。类文件名应基于类名加上类前缀,类名中的下划线替换为连字符,例如: 'WP_Error'变为: 'class-wp-error.php' 。此文件命名标准适用于所有当前的和新的带有类的文件。” – 命名约定 (2022)

WordPress 开发的关键之一是,当一个类被创建时,它成为一个依赖于属性的变量定义的对象。WordPress 钩子可以通过从类本身定义的函数中提取信息的自定义代码来实现。

WordPress 方法

为了使在WordPress 类中处理的信息可以通过对其他插件的钩子调用来使用,必须公开声明该函数。这建立了关于可以通过其他代码应用的函数或方法的可变输出范围。

“有许多可调用格式可用于引用类和对象的方法。但是,在所有情况下,引用的方法都必须是公开可见的。当一个方法以 public 关键字为前缀或根本没有可见性关键字(在这种情况下,该方法默认为 public)时,它就是公共的。” – 将类和对象方法挂钩到操作 (2022)

WordPress 插件 API包含一个回调函数,可以使用类定义的任何自定义挂钩进行注册。使用 CMS 设置注册钩子后,任何对象都可以通过运行钩子代码来实现回调。这允许专业的 PHP 开发人员向 WordPress 添加基于其他插件和主题功能的新功能。

WordPress 文档

挂钩与自定义 WordPress 代码一起使用,以实现在插件、小部件和主题元素之间传输数据的回调函数。WordPress 插件 API 保留所有列出的函数的注册表,以及确定处理顺序的运行时权重层次结构。

“在不使用类的情况下,使用函数处理钩子是必要的,但对于面向对象的设计方法也非常有用。回调函数仅用于处理从一个特定上下文到类所需的适当依赖项的转换。这允许该类充当一个系统,用于在任何上下文中基于类别更新帖子元数据,并且该函数成为插件 API 的连接器。” – 扭矩:WordPress 钩子 (2017)

WordPress 主题、插件和小部件设计是一个复杂的过程,受核心分发标准的约束。WordPress.org 上的开发人员资源档案是开始学习专业编程方法的最佳场所。该存档包括代码参考、网络标准、API、块编辑器和用于 WordPress CMS 开发的模型资源。

什么是WordPress?为什么要学习WordPress?-南华中天

WordPress 和 VPS 托管

WordPress 安装在任何具有PHP 编程语言支持和 MySQL 兼容数据库的Web 服务器硬件上。建议为 WordPress CMS 构建插件和主题的专业开发团队采用VPS 托管,因为它为深入定制提供了最合适的环境。

在为分布式团队的网站和移动应用程序构建软件开发管道时,也可以有效地使用虚拟专用服务器。可以使用子域在 VPS 服务器上安装暂存、测试、linting 和生产环境。敏捷开发团队的程序员可以在将更改实时推送到生产环境之前测试自定义插件、主题和平台升级。该系统使用 Git 版本控制进行编排。

结论

WordPress 生态系统包括数百万专业的PHP、HTML、CSS 和 JavaScript 开发人员,他们构建开源插件和主题以供全球使用。有数以千计的博客、课程、视频和教程专门用于向初学者教授 WP 开发的主要原则。相比之下,编写自定义插件和主题可能需要多年的学习时间。WordPress 核心、插件、小部件和主题开发都涉及过去 20 年在开源社区中建立的不同标准。请随意查看WordPress 开发人员手册和官方 WordPress 代码参考以获取更多信息。您可以在 Codex中找到有关 WordPress核心类的特定资源。或者,我们的技术支持团队都接受过最受欢迎的 CMS 培训,很乐意为您提供帮助。