Для вывода краткого описания с HTML кодом на сайте WordPress (взятого из полного описания записи) необходимо добавить в файл functions.php следующий хук:
Его можно доработать, добавив в обоих случаях дополнительные html теги.
function oceanwp_custom_excerpt($word_count = 55, $allowed_tags = '<p><br><b><strong><i><em><a><span><div>', $more = '[...]') { global $post; // Если есть рукописный анонс → берем его if (!empty($post->post_excerpt)) { return '<div class="custom-excerpt">' . wpautop($post->post_excerpt) . '</div>'; } // Берем из контента $content = get_the_content(); $content = apply_filters('the_content', $content); $content = str_replace(']]>', ']]>', $content); // Оставляем только разрешённые теги $content = strip_tags($content, $allowed_tags); // Обрезаем по словам $words = preg_split('/\s+/', $content, $word_count + 1, PREG_SPLIT_NO_EMPTY); if (count($words) > $word_count) { array_pop($words); $words[] = $more; $output = implode(' ', $words); } else { $output = implode(' ', $words); } return '<div class="custom-excerpt">' . $output . '</div>'; } // Пример использования в шаблоне: // echo oceanwp_custom_excerpt(30, '<p><a><span><strong>', '...');
А также в файле списка записей закомментировать прежний код вывода и добавить свой
У меня файл: /public_html/wp-content/themes/oceanwp/partials/entry/content.php
<?php if (function_exists('oceanwp_custom_excerpt')) { echo oceanwp_custom_excerpt(50, '<p><br><strong><a><span><div>', '...'); } ?>