get_extended( string $post )
Get extended entry info (<!--more-->
).
Description
There should not be any space after the second dash and before the word ‘more’. There can be text or space(s) after the word ‘more’, but won’t be referenced.
The returned array has ‘main’, ‘extended’, and ‘more_text’ keys. Main has the text before the <!--more-->
. The ‘extended’ key has the content after the <!--more-->
comment. The ‘more_text’ key has the custom "Read More" text.
Parameters
- $post
-
(string) (Required) Post content.
Return
(array) Post before ('main'), after ('extended'), and custom read more ('more_text').
Source
File: wp-includes/post.php
function get_extended( $post ) { //Match the new style more links. if ( preg_match( '/<!--more(.*?)?-->/', $post, $matches ) ) { list($main, $extended) = explode( $matches[0], $post, 2 ); $more_text = $matches[1]; } else { $main = $post; $extended = ''; $more_text = ''; } // leading and trailing whitespace. $main = preg_replace( '/^[\s]*(.*)[\s]*$/', '\\1', $main ); $extended = preg_replace( '/^[\s]*(.*)[\s]*$/', '\\1', $extended ); $more_text = preg_replace( '/^[\s]*(.*)[\s]*$/', '\\1', $more_text ); return array( 'main' => $main, 'extended' => $extended, 'more_text' => $more_text, ); }
Changelog
Version | Description |
---|---|
1.0.0 | Introduced. |
Displaying small excerpts from latest posts
If you want to display the latest posts on your WordPress blog, but only the content which comes before the
<!--more-->
tag, you can use this:Expand full source codeCollapse full source code
Note:
$content_arr['extended']
contains the contents after the more tag.