php - WordPress - 向后兼容性
问题描述
所以我正在学习 WordPress 主题开发,并在 WordPress.org 上发现了一些关于向后兼容性的内容。我去看了创建部分模板的函数,例如:wp_body_open()。在此页面上,他们有一条关于向后兼容性的评论。他们有这样的功能:
<?php
if ( function_exists( 'wp_body_open' ) ) {
wp_body_open();
} else {
do_action( 'wp_body_open' );
}
?>
我有点理解它的作用,但是,我想知道它是如何以及为什么被认为是向后兼容的?
提前致谢。
解决方案
该功能wp_body_open()
已在 WP 5.2.0 中引入。如果您尝试运行将调用wp_body_open()
早期 WP 的代码,则会导致致命错误。
您提到的代码首先检查该函数的存在。如果它存在,则调用它。如果它不存在,则仅使用钩子。这样即使代码与旧 WP 一起使用也不会导致错误。这就是向后兼容的意思。
推荐阅读
- python - 从 Selenium IDE 到 Python - 没有这样的元素
- c++ - 专门的模板是否需要专门的声明?
- tomcat - 像 Tomcat 这样的网络服务器是否只能用作 TCP 服务器?
- c# - 将平面列表转换为多级层次结构
- go - 在 Go 中使用 conn.Read() 读取前几个字节后,如何继续读取剩余字节?
- mysql - 如何在 SQL 中删除多个 MySql Apache 表行?
- java - 无法从用于 Spark 的 Java 数据集中的 AWS S3 读取数据
- netbeans - 如何将 propertyChangeListener 转换为 Lookup?
- php - 如何检查ajax调用是否返回一个空数组数组
- r - 构造 x 和 y 函数参数,它们既可以作为公式 (y ~ x),也可以单独使用