get_extended() — возвращает по отдельности контент до и после тега <!‐‐more‐‐>

Функция возвращает массив $content (например), состоящий из трех элементов:

  • $content['main'] — то, что находится до тега <!‐‐more‐‐> (можно назвать это анонсом записи),
  • $content['extended'] часть содержимого поста, которая находится после тега <!‐‐more‐‐>,
  • $content['more_text'] текст ссылки перехода к полной версии поста. Например, если тег <!‐‐more‐‐> у вас имеет следующий вид <!‐‐more подробнее‐‐>, то значением данного элемента массива будет «подробнее». По умолчанию — «(далее…)»
get_extended($post)
$post
(строка) содержимое поста (контент)

Пример

// к примеру выведем 5 постов отсортированных по количеству комментариев
$q = new WP_Query('posts_per_page=5&orderby=comment_count');
while( $q->have_posts() ): $q->the_post();
	$content = get_extended(get_the_content());
	the_title('<h3>','</h3>'); // заголовок в тегах <h3>
	echo '<p>' . $content['main'];
	echo ($content['more_text']) ? '<a href="' . get_permalink() . '">' . $content['more_text'] . '</a></p>' : '';
endwhile;
wp_reset_postdata();

Оставить комментарий / вопрос

phpjsHTMLCSSSQLПросто код
  Для того, чтобы оставить комментарий, пожалуйста, зарегистрируйтесь или авторизуйтесь на сайте.
Получайте новости блога по email или следите за мной в социальных сетях.
  • Миша: Метод тыка хорош, но оснвоы нужно знать в любом случае. Рекомендую почитать это.

  • Миша: Добрый вечер! Если я правильно понял, то: if( $opisanie ) echo '' . $opisanie . '' ;

  • alex morozov: Добрый вечер! у меня возникла следующая проблема. Я делаю фотоальбомы, чтобы они выглядели "как в контакте". Так вот, та...

  • Vladislav: Если эту муть убрать, то исчезает меню, и появляется описание под миниатюрами, которого не должно быть, как вы видите, я...

  • Миша: Либо размеры изображений вам помогут, либо CSS. И строку 14 гляньте, там муть какая-то.