Можно ли вызвать the_excerpt() с целыми тегами? Я хотел бы создать список выдержек из моих сообщений в определенной категории, но я также хотел бы, чтобы ссылки и форматирование были перенесены из содержимого сообщения.
В настоящее время я использую the_excerpt(), который в остальном работает нормально, однако теги удаляются.
Я не могу найти фильтр для этого в the_excerpt(), поэтому, за исключением этого, можно ли фильтровать the_content(), чтобы вытащить первые 100 слов с тегами и ссылкой «Подробнее» в конце?
это практически невозможно — подумайте обо всех возможных html-тегах в контенте; а: это очень затрудняет подсчет слов; b: остановка после определенного количества слов, скорее всего, приведет к разрыву в середине одного или нескольких тегов html. это может быть возможно в разумных пределах, если вы можете ограничить html-теги, которые вам нужно сохранить. вам все равно нужно будет запустить некоторый код, чтобы закрыть открытые теги html.
На самом деле, я только что сделал что-то подобное для сайта Drupal. Я основал свою функцию усечения на этом: Обрезать текст, сохраняя HTML-теги с помощью PHP.
Используйте окончательный вариант функции в конце комментариев. Функция принимает свой
$length
параметр в символах, а не в словах, но вы, вероятно, можете использовать общее эмпирическое правило 5 символов на слово для оценки, если это необходимо.Подключите свою функцию к
get_the_excerpt
фильтру, и вы должны быть в довольно хорошей форме.