get_the_excerpt()
Получает цитату (отрывок) поста. Используется внутри цикла WP.
Чтобы сразу вывести на экран цитату, можно использовать функцию the_excerpt(), которая к тому же добавляет параграф HTML (<p></p>) к цитате.
Текст обрезается функцией wp_trim_excerpt()
Хуки из функции
Возвращает
Строку.
-
Если у поста не указана «цитата» (post_excerpt), то будет получен начальный отрывок текущей записи. Подробнее смотрите код функции wp_trim_excerpt(). Поэтому, чтобы проверить есть ли у записи именно цитата, используйте has_excerpt().
-
Если «цитата» (отрывок) указана, получит значение поля «цитата».
- Для постов защищенных паролем, всегда возвращает строку с текстом: "Нет цитаты, потому что пост защищен паролем.".
Использование
$excerpt = get_the_excerpt( $post );
- $post(число/WP_Post)
- ID или объект записи, цитату которой нужно получить. С версии 4.5.
По умолчанию: null (текущий пост)
Примеры
#1 Вывод цитаты с ограничением символов
Используем функцию get_the_excerpt(), чтобы вывести на экран цитату ограниченную максимум символов:
the_excerpt_max_charlength(140);
function the_excerpt_max_charlength( $charlength ){
$excerpt = get_the_excerpt();
$charlength++;
if ( mb_strlen( $excerpt ) > $charlength ) {
$subex = mb_substr( $excerpt, 0, $charlength - 5 );
$exwords = explode( ' ', $subex );
$excut = - ( mb_strlen( $exwords[ count( $exwords ) - 1 ] ) );
if ( $excut < 0 ) {
echo mb_substr( $subex, 0, $excut );
} else {
echo $subex;
}
echo '[...]';
} else {
echo $excerpt;
}
}
Смотрите также заметку по замене этой функции на свою: Обрезка текста и/или замена стандартной функции the_excerpt()
#2 Пример, проверки наличия цитаты.
Если цитата не указана, то выводим свой текст:
$my_excerpt = get_the_excerpt();
if ( $my_excerpt ){
echo wpautop( $my_excerpt );
}
else {
echo wpautop('Цитата не установлена.');
}
Список изменений
| С версии 0.71 | Введена. |
| С версии 4.5.0 | Introduced the $post parameter. |