Удалить шорткод [...] из предварительного просмотра блога
При использовании шорткода (плагина и т.д.) в верхней части страницы шорткод плагина отображается в предварительном просмотре. Есть ли способ скрыть текст в скобках [подобный текст] из предварительного просмотра на странице типа "Последние публикации"?
В следующем примере показан шорткод в предварительном просмотре записи в блоге:
4 answers
Вы можете сделать это с помощью PHP. Просто удалите часть, где находится get_content()
, и добавьте это:
<?php
$content=get_the_content();
$content = preg_replace('#\[[^\]]+\]#', '',$content);
echo apply_filters('the_content', $content);
?>
Это регулярное выражение, добавленное внутри содержимого. Это регулярное выражение удалит все теги внутри содержимого.
Используйте это вместо этого, если вы не хотите каждый раз вручную записывать выдержки:
function wpse205632_filter_excerpt( $excerpt ) {
$excerpt = strip_shortcodes( $excerpt );
return $excerpt;
}
add_filter( 'get_the_excerpt', 'wpse205632_filter_excerpt' );
Просто добавьте этот фрагмент в functions.php
, и все готово.
Отрывок не был показан, но сделал бы свое дело. На странице редактирования публикации доступ к "Параметрам экрана" и выбор "Отрывка" позволяет вручную заполнить отрывок.
Это то, что я использовал, чтобы получить контент в виде отрывка с ограниченным количеством слов и исключить короткие коды из Visual Composer
<?php $content=get_the_content(); $content = preg_replace('#\[[^\]]+\]#', '',$trimmed_content = wp_trim_words($content, 20)); echo apply_filters('the_content', $content, $trimmed_content); ?