#49698 closed defect (bug) (fixed)
Issue with replacement for filter deprecation
Reported by: | renathoc | Owned by: | SergeyBiryukov |
---|---|---|---|
Milestone: | 5.5 | Priority: | normal |
Severity: | normal | Version: | 5.4 |
Component: | Plugins | Keywords: | has-patch |
Focuses: | Cc: |
Description
The function apply_filters_deprecated
has the default value for the $replacement
argument as false
.
This function uses the _deprecated_hook
, sending the same $replacement
argument. But in the _deprecated_hook
, it considers the default as null
.
So the problem occurs when we use the apply_filters_deprecated
without a replacement, the with no alternative available
message is not shown, but Use instead.
Attachments (1)
Change History (7)
Note: See
TracTickets for help on using
tickets.
Hi there, welcome to WordPress Trac! Thanks for the ticket.
The issue is already fixed for WordPress 5.4 in [46792] / #48817.
That said, I think we should switch the default values for
$replacement
and$message
parameters in these functions to an empty string instead ofnull
, to match the documented type ofstring
. The! is_null()
check for these parameters seems unnecessarily strict, we only need to check for a truthy value.This would affect:
_deprecated_function()
_deprecated_constructor()
_deprecated_file()
_deprecated_argument()
_deprecated_hook()
apply_filters_deprecated()
do_action_deprecated()