Отфильтруйте первый <blockquote> из формата отправки сообщения

Я хочу получить первый блок-комментарий из сообщения (даже если пользователь записывает только один или более одного) в формате Quote Post, чтобы показать его в архиве Loop. Например:

$quote = has_post_format( 'quote' ); if ( $quote ) { if ( *the post has no quotes* ){ // Don't show anything } else { // Show the blockquote from the post (if there's only one), // or the first one (if there are more than 1) } } 

Есть что-то вроде этого?

Я наконец нашел решение, которое работает. Если вам это нужно, вот оно:

 <?php if (has_post_format('quote', $post->ID)) { $content = trim(get_the_content()); // Take the first quote from the content $quote_string = extract_from_string('<blockquote>', '</blockquote>', $content); // Make sure there's a quote on the content if (!$quote_string == "") { // Get the first quote and show it on the Loop echo $quote_string; } else { // If not, show nothing } } ?> 

Попробуйте что-то вроде этого:

 <?php // Check is post has quote format if (has_post_format('quote', $post->ID)) { $content = trim(get_the_content()); // Make sure content isn't empty if (!$content == "") { // Take each new line and put into an array (for multiple quotes) $quote_array = explode( "\n", $content); // Get the first quote and do something with it $first_quote = array_shift( $quote_array ); echo $first_quote; } } ?>