在WordPress中添加自定义挂钩:自定义过滤器
在这个两部分的系列中,我们正在看WordPress挂钩系统。具体来说,我们正在仔细研究动作和过滤器及其在WordPress开发中所扮演的角色。
>
尽管它们都被定义为钩子,但每个都在WordPress开发中起着特定的作用。而且,如果您想成为一个更具成就的WordPress开发人员,那么重要的是要不仅了解它们之间的区别,还要了解如何实现自定义挂钩。在该系列的第一篇文章中,我们定义了钩子的使用方式,也可以看到它们在其他地方的使用方式,还可以审查包括如何定义我们自己的动作。如果您尚未抓到第一篇文章,我强烈建议您在使用本教程之前阅读。
>
>在开始挂钩之前,我将对上一篇文章中讨论的内容进行快速的复活,然后将从那里开始。事件驱动的设计模式。特别是,我们将其定义为以下内容:该软件具有某些点,它传播了一条事件发生的消息。>
>我们作为开发人员,能够编写聆听此消息的代码,然后用自定义代码响应它。>
>
>我们也认识到一个微妙的区别:>>>动作旨在使用功能,过滤器的旨在使用数据。显示在屏幕上。在本教程中,我们将研究如何在将数据写入屏幕之前使用过滤器,例如如何降低文本。从上一篇文章中回顾了开始
>>>
>我们本地开发环境应包含以下内容:wordpress 6.0.1.1
>您的首选IDE
- php
- MySQL可以轻松安装。如果您更高级,则可能会使用诸如NGINX和替代数据库之类的东西。如果是这样的话,那很好,但是出于本教程的目的,我假设您有前者。
-
>如果您没有设置任何设置,则不用担心:我们已经覆盖了您。链接的教程将为您提供与本地计算机上WordPress一起使用WordPress的一切所需的一切。
>设置后,我们将准备继续进行。
>>理解WordPress Filters
wordpress代码参考为那些希望了解所有有关文件的人提供全面的资源。正如我们已经说过的,它将过滤器定义为以下内容:
自定义过滤器不同于自定义操作,因为自定义操作允许您从现有操作中添加或删除代码。尽管自定义过滤器允许您替换现有操作中的特定数据(例如变量)。
>,但是如果您正在寻找WordPress中可用过滤器的整个列表,则请确保在codex中引用此页面。它具有大约20秒的过滤器,其中许多链接到其自己的文档页面。
>这意味着如果您很好奇是否存在特定的过滤器,则可以参考此页面。同样,您可以访问该特定过滤器的页面,以查看参数的参数,示例函数定义以及如何使用它。
>>关于优先级和参数的一句话
>>
>在我们进一步发展之前,我想确保我们在同一页面上介绍我们在同一页面上介绍的是什么,我们会涉及到nove
<?php<br>add_filter( 'author_edit_pre', 'filter_function_name', 10, 2 );<br>
登录后复制登录后复制>这告诉我们四件事:
- >我们正在挂接的过滤器名称
- >
- >应称为
- 的功能的名称,应调用函数的优先级。前两个点很快被理解。但是,其他两个可以绊倒新的开发人员,但这并不是一个很难理解的概念。请记住,由于给定的挂钩可以具有与之关联的多个功能,因此优先级可以定义调用功能的时间或多晚。数字越低,开火越早;数字越高,较晚的射击。
>
>使用过滤器
开始使用过滤器,让我们继续以二十三个目录的词根创建自己的文件。我们将调用文件the_content滤镜。然后,我们将使用apply_filters
>这是我们开始对str_replace()函数感兴趣的地方。但是,我们需要更改过滤器在WordPress注册的方式,然后我们需要确保在WordPress上注册的函数正确调用
。单独调用全部:Apply_filters <cod> <code>apply_filters
。上述过滤器的输出将看起来像下面的图:
<?php<br>add_filter( 'author_edit_pre', 'filter_function_name', 10, 2 );<br>
登录后复制登录后复制>
>
将它们全部调用
apply_filters
<?php<br><br>add_filter( 'tutsplus_replace_country', 'tutsplus_replace_country_callback', 10, 1 );<br>function tutsplus_replace_country_callback( $content ) {<br> return str_replace( 'Canada', 'U.S.', $content );<br>}<br><br>add_filter( 'the_content', 'tutsplus_the_content' );<br>function tutsplus_the_content( $content ) {<br><br> // Proceed with this function only if we are viewing a particular post.<br> if ( is_single() && get_the_ID() == 66) {<br> return apply_filters( 'tutsplus_replace_country', $content );<br> } else {<br> return $content;<br> }<br>}<br>
登录后复制>请注意,这可以实现以前情况的合并结果,但是通过将它们凝结成单一的代码来实现。还可以通过其他方式来编写,但是本教程的目的是教育您如何编写自己的过滤器以及如何在您的工作中利用
apply_filters<code>apply_filters
。在整个系列中,我们都审查了如何利用现有的动作和过滤器,以及如何创建和实施我们自己的。挂钩系统是WordPress对于开发人员的最强大方面之一,因此熟悉它很重要。这样一来,您不仅能够操纵WordPress提供的行为和数据,而且您还能够定义其他开发人员可以在其整个代码中使用的挂钩。
>本文已通过Nitish Kumar的贡献进行了更新。 Nitish是一家网络开发人员,在各种平台上创建电子商务网站方面具有经验。他花时间在个人项目上工作,这些项目使他的日常生活更轻松或与朋友一起度过漫长的夜间散步。
以上是在WordPress中添加自定义挂钩:自定义过滤器的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

SOLID原则在PHP开发中的应用包括:1.单一职责原则(SRP):每个类只负责一个功能。2.开闭原则(OCP):通过扩展而非修改实现变化。3.里氏替换原则(LSP):子类可替换基类而不影响程序正确性。4.接口隔离原则(ISP):使用细粒度接口避免依赖不使用的方法。5.依赖倒置原则(DIP):高低层次模块都依赖于抽象,通过依赖注入实现。

文章讨论了PHP 5.3中引入的PHP中的晚期静态结合(LSB),从而允许静态方法的运行时分辨率调用以获得更灵活的继承。 LSB的实用应用和潜在的触摸

使用PHP的cURL库发送JSON数据在PHP开发中,经常需要与外部API进行交互,其中一种常见的方式是使用cURL库发送POST�...

如何在系统重启后自动设置unixsocket的权限每次系统重启后,我们都需要执行以下命令来修改unixsocket的权限:sudo...
