Как в вордпресс сделать свою функцию the_excerpt?

Решено

Здравствуйте, скажите как написать свою функцию, которая будет работать точно так же как и the_excerpt. Мне нужно для произвольного текста(который я храню в произвольных полях) сделать его небольшое превью. Задача на самом деле простая, очистить теги и обрезать текст(не обрезая слова) и поставить в конце многоточие. Скажите как можно в wp это реализовать?
Заранее спасибо.

Добавить Комментарий
Ответ

Вот пример функции которая повторяет работу the_excerpt

 function wp_trim_all_excerpt($text) {
 // Creates an excerpt if needed; and shortens the manual excerpt as well
 global $post;
 $raw_excerpt = $text;
 if ( '' == $text ) {
 $text = get_the_content('');
 $text = strip_shortcodes( $text );
 $text = apply_filters('the_content', $text);
 $text = str_replace(']]>', ']]>', $text);
 }
$text = strip_tags($text);
 $excerpt_length = apply_filters('excerpt_length', 20); // 20 количество слов
 $excerpt_more = apply_filters('excerpt_more', ' ' . '[...]');
 $text = wp_trim_words( $text, $excerpt_length, $excerpt_more );
return apply_filters('wp_trim_excerpt', $text, $raw_excerpt);
 }
 

Данный код нужно разместить в файле functions.php

Что бы обработать ваш текст, вызовите функцию следующем образом:

 <?php
 echo wp_trim_all_excerpt($post_content);
 // $post_content - содержит текст который нужно обрезать
 ?>
 

Добавить Комментарий

Ваш ответ

Размещая свой ответ, вы соглашаетесь с правилами сайта.