Posts, Post Types: Avoid a PHP warning when get_the_content() is called outside of the loop.

This ensures that `$pages` and other globals are only used after they have been set up in `setup_postdata()`.

Follow-up to [44941].

Props tessawatkinsllc, dontdream, spacedmonkey, squarecandy, davidbaumwald, SergeyBiryukov.
Fixes #47824. See #42814.

git-svn-id: https://develop.svn.wordpress.org/trunk@48114 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Sergey Biryukov
2020-06-21 10:34:35 +00:00
parent a7264f196d
commit e8176a19e2
3 changed files with 13 additions and 2 deletions

View File

@@ -75,4 +75,13 @@ class Tests_Post_GetTheContent extends WP_UnitTestCase {
$this->assertSame( 'Bang', $found );
}
/**
* @ticket 47824
*/
public function test_should_fall_back_to_post_global_outside_of_the_loop() {
$GLOBALS['post'] = self::factory()->post->create( array( 'post_content' => 'Foo' ) );
$this->assertSame( 'Foo', get_the_content() );
}
}