我建议如下:
/**
* @deprecated Please use good_function_name() instead
* @since x.y.z Marked deprecated in favor of good_function_name()
* @see good_function_name()
*/
function bad_function_name() {
trigger_error(
\'The \' . __FUNCTION__ . \' function is deprecated. \' .
\'Please use good_function_name() instead.\',
defined( \'E_USER_DEPRECATED\' ) ? E_USER_DEPRECATED : E_USER_WARNING
);
return good_function_name();
}
这会在日志中显示弃用警告以及堆栈跟踪。当然,只有在WordPress中启用了日志记录,这才有效。
之所以有三元运算符,是因为PHP 5.3.0中才引入了E\\u USER\\u弃用常量。在旧版本中,我们可以使用简单的用户警告。
从PHP manual on error constants:
E_DEPRECATED 运行时通知。启用此选项可接收有关在未来版本中无法工作的代码的警告。
我不喜欢使用的原因_doing_it_wrong 或__deprecated_function 这些功能仅用于WordPress核心。从这些函数的代码参考中:
此函数的访问被标记为私有。这意味着它不适用于插件或主题开发人员,仅用于其他核心功能。为了完整起见,这里列出了它。