Подробное описание функции the_excerpt() – wordpress. Для чего, как настроить – задаем количество выводимых на экран символов.
Функция the_excerpt() используется для вывода отрывка (цитаты) поста (записи). По умолчанию выводит на экран первые 55 слов текста; в конце отрывка добавляется такая конструкция […] ссылка.
Как правило используется внутри Цикла WordPress.
Длину отрывка (количество слов/символов) можно назначить на свое усмотрение! а также возможно настраивать вывод количество символов для каждого блока индивидуально при помощи фильтров (созданных функций).
Подробнее о the_excerpt():
Нужно знать, что “отрывок” можно задавать при публикации каждого отдельно взятого поста (инструменты текстового редактора).
Однако, если “отрывок” не указан, то в этом случае, если используется функция the_excerpt
, функция создает так называемый отрывок (или цитату) самостоятельно – вырезав для этого (по умолчанию) 55 слов контента.
Практически все HTML теги (об этом ниже), шорткоды и присутствующая в тексте контента графика будут вырезаны: все эти теги и т.п. не учитываются при подсчете слов/символов!
Важно помнить: если отрывок указан при публикации, выводится именно он! Ссылка и […] добавлены не будут.
Если, например, запись является вложением (attachment либо типа image.php), – функция выведет добавленный текст в поле описание /к картинке, например/ (caption).
Функция the_excerpt wordpress
Используется как:
<?php the_excerpt(); ?>
Выводит “цитату” (тип описания) записи в соответственных лентах архивов: категориях, метках, архивах авторов, архивы дат и т.п:
Чтобы задавать произвольную (на наше усмотрение) длину цитаты, используем специальные фильтры:
add_filter – фильтры the_excerpt
Напоминаю: по умолчанию длина отрывка 55 слов.
Чтобы изменить параметры, а это значит в нашем случае изменить длину выводимого текста, используем фильтр excerpt_length.
Данные коды размещать в файлах активной темы functions.php (выводим функции в отдельные файлы):
фильтр:
add_filter( 'excerpt_length', function() {
return 20; // 20 слов
} );
Если нужно удалить […] в конце отрывка:
add_filter('excerpt_more', function($more) {
return '...'; // оставим многоточие, либо некое слово
});
Если нужно создать и использовать текст-ссылку Читать статью…
add_filter( 'excerpt_more', 'my_excerpt_more' );
function my_excerpt_more( $more ) {
global $post;
return '<a href="'. get_permalink($post) . '">Читать статью...</a>';
}
Простая обрезка текста ( удаление из него тегов html посредством php функции strip_tags ) – используется внутри цикла WordPress:
$maxword = 202; // количество символов
$text = strip_tags( get_the_content() );
echo mb_substr( $text, 0, $maxword );
обрезаем текст в произвольных типах записей
Создадим фильтр: (что-нибудь типа такого)
add_filter( 'excerpt_length', 'ats_ads_excerpt_length' );
функция фильтра:
function ats_ads_excerpt_length( $length ) {
global $post;
if ( POST_TYPE != $post->post_type ) { // POST_TYPE имя п.т.
return $length;
}
return 50; // число символов для вывода: 25
}
the_excerpt – добавляем ссылку Читать далее, или ещё что-то…
Создадим фильтр:
add_filter( 'excerpt_more', 'ats_ads_excerpt_more' );
функция фильтра:
function ats_ads_excerpt_more( $text ) {
global $post;
if ( POST_TYPE != $post->post_type ) { // POST_TYPE имя п.т.
return $text;
}
return ' ' . html( 'a class="moretag" href="'. get_permalink( $post->ID ) . '"', __( ' читать...', '' ) ); //
}
В ядре WP функция the_excerpt()
находится по пути: wp-includes/post-template.php
Как работать с условными тегами WP: пример на странице пагинации – закрываем в noindex,follow
Как правильно закомментировать на время код HTML, CSS или PHP, JS
mihalica.ru !