#40789 closed enhancement (duplicate)
pre_get_lastpostdate filter
Reported by: | toddlevy | Owned by: | |
---|---|---|---|
Milestone: | Priority: | normal | |
Severity: | normal | Version: | 4.7.5 |
Component: | General | Keywords: | |
Focuses: | Cc: |
Description
This is line 5530 of
https://github.com/WordPress/WordPress/blob/4.7.5/wp-includes/post.php
Currently, there is no way to filter get_lastpostdate
in advance of it calling _get_last_post_time
.
This creates situations where it's impossible to filter/modify the default post type because...
a) get_lastpostdate
is called without the $post_type
argument (e.g. as happens in get_lastpostmodified
and sometimes in 3rd party plugins), and
b) The _get_last_post_time
function that gets called doesn't allow $post_type
to be filtered as best I can tell
If you take a look at get_lastpostmodified
you can see the pre_get_lastpostmodified
filter, which is great and would solve this problem.
Suggested enhancement is to add a similar pre_get_lastpostdate
filter for get_lastpostdate
with the same naming convention and functionality.
Something like this...
<?php function get_lastpostdate( $timezone = 'server', $post_type = 'article' ) { $lastpostdate = apply_filters( 'pre_get_lastpostdate', false, $timezone, $post_type ); if ( false !== $lastpostdate ) { return $lastpostdate; } $lastpostdate = _get_last_post_time( $timezone, 'date', $post_type ); return apply_filters( 'get_lastpostdate', $lastpostdate, $timezone ); }
Thank you for your consideration of this idea.
The patch in #40790 would fix this ticket as well.
See: https://core.trac.wordpress.org/ticket/40790#comment:4