mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2025-10-16 12:05:38 +00:00
Bootstrap/Load: Correct sending the X-Pingback header in WP::send_headers().
The logic for sending the `X-Pingback` header for single posts that allow pings was recently moved from `WP::handle_404()` to a more appropriate place in `WP::send_headers()`. To check whether pings are open for a particular post, that logic relies on the `$wp_query` global, which is declared in `WP::handle_404()`, but not in `WP::send_headers()` This commit ensures that `$wp_query` is globalized in `WP::send_headers()` too, so that the check works as expected. Follow-up to [54250]. Props strategio, sabernhardt, dlh, davidbaumwald, SergeyBiryukov. Fixes #56840. git-svn-id: https://develop.svn.wordpress.org/trunk@54636 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
parent
4bff0ccfe5
commit
3977b6b06d
@ -410,8 +410,12 @@ class WP {
|
||||
* @since 2.0.0
|
||||
* @since 4.4.0 `X-Pingback` header is added conditionally for single posts that allow pings.
|
||||
* @since 6.1.0 Runs after posts have been queried.
|
||||
*
|
||||
* @global WP_Query $wp_query WordPress Query object.
|
||||
*/
|
||||
public function send_headers() {
|
||||
global $wp_query;
|
||||
|
||||
$headers = array();
|
||||
$status = null;
|
||||
$exit_required = false;
|
||||
|
||||
@ -19,4 +19,19 @@ class Tests_WP_SendHeaders extends WP_UnitTestCase {
|
||||
|
||||
$this->go_to( home_url() );
|
||||
}
|
||||
|
||||
/**
|
||||
* @ticket 56840
|
||||
*/
|
||||
public function test_send_headers_sets_x_pingback_for_single_posts_that_allow_pings() {
|
||||
add_action(
|
||||
'wp_headers',
|
||||
function ( $headers ) {
|
||||
$this->assertArrayHasKey( 'X-Pingback', $headers );
|
||||
}
|
||||
);
|
||||
|
||||
$post_id = self::factory()->post->create();
|
||||
$this->go_to( get_permalink( $post_id ) );
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user