Как исключить шорткоды из цитат

Как исключить шорткоды из цитат | n-wp.ru Настройки
Примеры фильтров, исключающих текст шорткодов из текста цитат. Такие фильтры будут не лишними, если вы часто используете шорткоды, которые могут попадать в содержимое цитат на главной странице блога.

При выводе цитаты поста с помощью функции the_excerpt текст цитаты выводится вместе с исходными кодами шорткодов, что выглядит не очень красиво. Можно исключить вывод текста любого шорткода в содержимом цитаты с помощью простого фильтра.

Например, нужно исключить вывод текста шорткода [code inline=»yes»]</pre> из текста цитаты. Для этого добавьте в файл functions.php:

<pre>add_filter( 'the_excerpt', 'remove_embed_shortcode_from_excerpt' );
function remove_embed_shortcode_from_excerpt( $excerpt ) {
return preg_replace ('/]*](.*)
/’, ‘$1’, $excerpt);
}

По аналогии можно создать фильтры и для других шорткодов. Фильтр для шорткода [code inline=»yes»][img]:

add_filter( 'the_excerpt', 'remove_img_shortcode_from_excerpt' );
function remove_img_shortcode_from_excerpt( $excerpt ) {
	return preg_replace ('/[img[^]]*](.*)[/img]/', '$1', $excerpt);
}

Подобные фильтры будут полезны, если вы выводите цитаты из предыдущих и следующих постов, цитаты на главной странице блога.

tiaurus

Автор n-wp.ru — блога о WordPress для новичков.

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