网站优化

网站优化

Products

当前位置:首页 > 网站优化 >

WordPress插件开发手册

GG网络技术分享 2025-03-18 16:08 0


欢迎使用WordPress插件开发者手册;你准备好跳到WordPress插件的世界吗?

插件开发者手册是所有WordPress插件的资源。无论您是新的WordPress插件开发,还是您是一名有经验的插件开发人员,您应该可以在这里找到许多与插件有关的问题的答案。

如果你刚开始插件开发,首先阅读介绍,然后继续阅读基础知识。第3节将介绍插件的安全性。Hooks是什么让你的插件与WordPress交互。在第4部分中了解它们。要了解有关您可以在插件中使用的WordPress内置功能的更多信息,请参阅第5 - 11节:管理菜单,短节目,设置,元数据,自定义帖子类型,分类法和用户。了解如何在第12节中使用HTTP API获取数据。如果您在插件中使用JavaScript,jQuery或Ajax,则可以在第13部分找到所需的信息。要使用Cron了解基于时间的WordPress任务,请参阅第14节。第15-17节将介绍您将插件国际化,准备在http://WordPress.org上发布,以及您可能会发现的一些开发工具。WordPress插件开发者手册由WordPress社区为WordPress社区创建。我们一直在寻找更多的贡献者;如果您有兴趣,请通过文档小组博客了解更多有关参与的信息。

Part1.WordPress插件开发基础

  1. WordPress插件开发基础
  2. WordPress主题插件头部要求
  3. WordPress主题插件软件许可证
  4. WordPress插件启用 / 停用 Hooks
  5. 卸载WordPress插件
  6. WordPress插件最优做法

Part2.WordPress插件安全

安全问题,其实和主题的安全相似,都是数据的筛选,过滤等等

请参阅WordPress插件和主题的安全最佳做法的完整示例。

  1. 检查用户功能
  2. 数据验证
  3. 保护输入
  4. 保护输出
  5. 随机数

Part3.WordPress插件-钩子Hooks

钩子是一段代码来交互/修改另一段代码的方式。它们构成了插件和主题与WordPress Core交互的基础,但它们也被Core本身广泛使用。

钩子有两种类型:动作和过滤器。要使用它们,您需要编写一个称为回调的自定义函数,然后将其注册到特定Action或Filter的WordPress钩子。

操作允许您添加数据或更改WordPress的操作方式。 Action的回调函数将在执行WordPress的特定点运行,并且可以执行某种任务,例如向用户回显输出或将数据插入到数据库中。

过滤器可让您在执行WordPress期间更改数据。过滤器的回调函数将接受变量,修改它并返回。它们的意图是以孤立的方式工作,不应该有影响全局变量和产出的副作用。

WordPress提供了许多可以使用的钩子,但您也可以创建自己的钩子,以便其他开发人员可以扩展和修改您的插件或主题。

外部资源

过滤器参考行动参考亚当·布朗的数据库操作和过滤器不一样

  1. Actions
  2. Filters
  3. 自定义Hooks
  4. 删除操作和过滤器

Part4.WordPress插件管理菜单

管理菜单是WordPress管理中显示的界面。 它们允许您为插件添加选项页。

注意:有关管理导航菜单的信息,请参阅主题开发者手册的导航菜单一章。

顶级菜单和子菜单

顶级菜单呈现在WordPress管理的左侧。 每个菜单可能包含一组子菜单。

在顶级菜单和子菜单之间决定仔细考虑插件的需求以及最终用户的需求。

警报:我们建议开发人员使用单个选项页面将其作为子菜单添加到现有的顶级菜单之一; 如设置或工具。
  1. 顶级菜单
  2. 子菜单

Part5.WordPress插件开发短代码

作为安全防范措施,禁止在WordPress内容中运行PHP;为了允许与内容的动态交互,短消息在WordPress版本2.5中呈现。

短代码是可用于与内容进行动态交互的宏。即从附加到帖子或呈现视频的图像创建图库。

为什么是短码?

短信是保持内容清洁和语义的一种有价值的方式,同时允许最终用户一些能够以编程方式改变其内容的呈现的能力。

当最终用户使用短代码将照片库添加到他们的帖子时,他们使用尽可能少的数据来指示如何呈现图库。

优点:

  • 没有标记添加到帖子内容,这意味着标记和样式可以很容易地在飞行或稍后的状态下被操纵。
  • 短码也可以接受参数,允许用户修改一个实例上的短码行为。

内置短码

默认情况下,WordPress包括以下短节码:

  • [caption] – 简短的代码,允许您围绕内容包装字幕
  • [gallery] – 短码,可让您显示图像画廊
  • [audio] –短码,允许您嵌入和播放音频文件
  • [playlist] – 短码可让您显示音频或视频文件的集合
  • [embed] – 短代码,允许您封装嵌入的项目

短码最佳实践

开发短代码的最佳做法包括插件开发最佳实践和下面的列表:

  • 总是回来
  • 短码本质上是过滤器,因此创建“副作用”将导致意外的错误。
  • 前缀您的短代码名称,以避免与其他插件的冲突。
  • 消除输入并转义输出。
  • 为用户提供有关所有短代码属性的清晰文档。

快速参考

请参阅使用基本的短代码结构,照顾自我关闭和封闭情景,快捷代码和确保输出的完整示例。

外部资源

  • WordPress短码生成器
  1. 基本短码
  2. 封闭短码
  3. 带参数的短代码
  4. TinyMCE增强型短码

Part6.WordPress插件开发设置

WordPress提供了两个核心API,使管理界面易于构建,安全性和与WordPress管理的设计一致。

Settings API专注于为开发人员提供创建表单和管理表单数据的方法。

Options API专注于使用简单的键/值系统管理数据。

  1. 设置API
  2. 使用设置API
  3. 选项API
  4. 自定义设置页面

Part7.WordPress插件开发元数据

元数据根据其定义,是有关信息的信息。 在WordPress的情况下,它是与帖子,用户,评论和条款相关的信息。

一个例子是一个称为产品的内容类型,其中包含元数据字段。 该字段将存储在postmeta表中。

鉴于WordPress中元数据的多对一关系,您的选择是相当无限的。 你可以有你想要的多个元选项,你可以存储任何东西在那里。

本章将讨论管理帖子元数据,创建自定义元框以及呈现后置元数据。

  1. 管理帖子元数据
  2. 自定义元数据
  3. 渲染元数据

Part8.WordPress插件开发自定义文章类型

WordPress将Post Types存储在post表中,允许开发人员按照已经存在的方式注册自定义文章类型。

本章将向您展示如何注册自定义帖子类型,如何从数据库中检索其内容,以及如何将它们呈现给公众。

  1. 注册自定义文章类型
  2. 使用自定义文章类型

Part9.WordPress插件开发自定义分类

分类法是分类/分组事物的一个奇特词。 分类可以是等级的(与父母/孩子)或平坦。

WordPress将分类法存储在term_taxonomy表中,允许开发人员沿着已经存在的分类标准注册自定义分类法。

分类法有条款作为您分类/分组事物的主题。 它们存储在术语表中。 例如。 名为“艺术”的分类将具有多个术语; 他们可以是“现代”和“十八世纪”。

本章将向您展示如何注册自定义分类法,如何从数据库中检索其内容,以及如何将它们呈现给公众。

  1. 使用自定义分类
  2. 在WP 4.2 中使用“split术语”

Part10.WordPress插件开发自定义用户

什么是用户?

每个WordPress用户至少有一个用户名,密码和电子邮件地址。 创建用户帐户后,该用户可以登录到WordPress管理员或以编程方式登录以访问WordPress功能和数据。

用户被分配了角色,每个角色都有一组功能。 您可以使用自己的功能集创建新的角色。 还可以创建自定义功能并将其分配给现有角色或新角色。

最低特权原则

最小权限的主体是指向用户帐户提供对用户工作必不可少的权限的做法。

在WordPress中,开发人员可以利用用户角色来限制人员或脚本执行只允许执行的操作,而不会再执行。

这使得管理员能够为新用户以非常基本的(Subscriber)访问级别打开注册,而不用担心这些用户不应该做的事情。

  1. 创建和管理用户
  2. 使用用户元数据
  3. 角色和功能

Part11.WordPress插件开发HTTP

##介绍

HTTP代表超文本传输协议,是整个互联网的基础通信协议。 即使这是您第一次使用HTTP的经历,也许您可能比了解更多。 在最基本的层面上,HTTP的工作原理如下:

  • “你好,服务器XYZ,请问我有文件abc.html”
  • “好,你好,有一点客户,是的,你可能,这里是”

在PHP中发送HTTP请求有许多不同的方法。 WordPress HTTP API的目的是支持尽可能多的这些方法,并使用最适合特定请求的方法。

WordPress HTTP API也可用于与Twitter API或Google Maps API等其他API进行通信和交互。

  1. http api

Part11.WordPress插件开发JavaScript

JavaScript是许多WordPress插件中的重要组件。 WordPress附带了与核心捆绑的各种JavaScript库。 WordPress中最常用的库之一是jQuery,因为它是轻量级的,易于使用。 jQuery可以在您的插件中使用来操纵DOM对象或执行Ajax操作。

  1. jQuery
  2. Ajax
  3. 服务器端PHP和入队
  4. Heartbeat API
  5. 概要

Part12.WordPress插件开发计划任务

##什么是WP-Cron

Cron是在UNIX系统上可用的基于时间的任务调度系统。 WP-Cron是WordPress如何处理在WordPress中调度基于时间的任务。使用WP-Cron的几个WordPress核心功能,如检查更新和发布预定的帖子。

WP-Cron的工作原理是:在每个页面加载时,都会检查一个计划任务的列表,以查看需要运行的内容。计划运行的任何任务将在该页面加载期间运行。 WP-Cron不像系统cron那样持续运行;它只是在页面加载时触发。如果您将任务计划在下午2:00,并且在5:00 PM之前没有页面加载,则可能会发生计划错误。

##为什么要用WP-Cron

为什么要用WP-Cron?许多托管服务是共享的,不提供对系统cron的访问,但WordPress核心和许多插件确实需要一个cron系统来执行基于时间的任务。 Cron是一个有用的工具,因此是WP-Cron的开始。虽然在特定时间可能无法运行,WP-Cron将及时完成您的任务。使用WordPress API是一种更简单的方法来设置cron任务而不是在WordPress之外。

使用系统cron,如果时间过去,任务没有运行,它将丢失,永远不会运行。 WP-Cron将运行任务,无论它们多大。任务将坐在队列中,直到加载页面来触发它们,因此任务不会丢失。

  1. 了解WP-Cron计划
  2. 安排WP-Cron 事件
  3. 将WP-Cron挂接到系统任务计划程序中
  4. WP-Cron简单测试

Part13.WordPress插件开发国际化

##什么是国际化?

国际化是开发您的插件的过程,因此可以轻松地将其翻译成其他语言。国际化通常缩写为i18n(因为i和n之间有18个字母)。

##为什么国际化重要?

WordPress用于世界各地,在英语不是主要语言的国家。 WordPress插件中的字符串需要以特殊的方式编码,以便可以轻松地翻译成其他语言。作为开发人员,您可能没有一个容易的时间为所有用户提供本地化;然而,任何翻译器都可以成功本地化插件,而无需修改源代码本身。

阅读更多关于“如何国际化您的插件”。

##资源

视频:i18n:准备您的WordPress主题为世界视频:国际化:全球插件和主题幻灯片视频:大日本:主题和国际化指南视频:丢失在翻译i18n和WordPress国际化和本地化您的WordPress主题国际化:你可能做错了更多国际化乐趣使用wp_localize_script,它是真棒了解_n_noop()语言包101 - 准备工作翻译WordPress插件和主题:不要聪明如何加载主题和插件翻译正确的方式加载WordPress语言文件

  1. 本地化
  2. 如何国际化您的插件
  3. 国际化安全

标签:

提交需求或反馈

Demand feedback