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();

Миша

В последние годы я долго не знал, что мне делать с сайтом misha.blog, ведь он практически не приносит никакого профита, но недавно я осознал, что моя миссия – способствовать распространению WordPress. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.

Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.