Comments: Correct the $post_id parameter passed to the 'comments_open' and 'pings_open' filters.

Fixes bug where previously the `$post_id` function argument was passed to the '_open' filters, instead of the result of the `get_post()` call. If the current post is not found, the `$post_id` filter parameter will be 0.

Props johnbillion, shulard, rachelbaker.
Fixes #40286.


git-svn-id: https://develop.svn.wordpress.org/trunk@40666 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Rachel Baker 2017-05-14 03:50:01 +00:00
parent aba08a1bf5
commit f2ce983da0
1 changed files with 6 additions and 4 deletions

View File

@ -1191,6 +1191,7 @@ function comments_open( $post_id = null ) {
$_post = get_post($post_id);
$post_id = $_post ? $_post->ID : 0;
$open = ( 'open' == $_post->comment_status );
/**
@ -1198,8 +1199,8 @@ function comments_open( $post_id = null ) {
*
* @since 2.5.0
*
* @param bool $open Whether the current post is open for comments.
* @param int|WP_Post $post_id The post ID or WP_Post object.
* @param bool $open Whether the current post is open for comments.
* @param int $post_id The post ID.
*/
return apply_filters( 'comments_open', $open, $post_id );
}
@ -1216,6 +1217,7 @@ function pings_open( $post_id = null ) {
$_post = get_post($post_id);
$post_id = $_post ? $_post->ID : 0;
$open = ( 'open' == $_post->ping_status );
/**
@ -1223,8 +1225,8 @@ function pings_open( $post_id = null ) {
*
* @since 2.5.0
*
* @param bool $open Whether the current post is open for pings.
* @param int|WP_Post $post_id The post ID or WP_Post object.
* @param bool $open Whether the current post is open for pings.
* @param int $post_id The post ID.
*/
return apply_filters( 'pings_open', $open, $post_id );
}