Если вы пользуетесь цитатами (функция the_excerpt), то наверняка уже оценили все удобства, которые становятся доступны: можно выводить на главной странице или в архивах не содержимое поста, а краткое пояснение к нему, которое может отличаться от основного содержимого записи, к цитате можно добавить вывод первого изображения из поста или миниатюры. Обычно цитата не попадает в содержимое поста, но можно это исправить, создав шорткод, с помощью которого можно выводить цитату в любом месте содержимого текущего поста.
Для этого откройте файл functions.php используемой вами темы, и вставьте в него следующий код:
function tf_get_the_excerpt() { global $post; $post_id = get_post($id); $excerpt = get_the_excerpt(); return '<div class="exc">'. $excerpt . '</div>'; } add_shortcode('exc', 'tf_get_the_excerpt');
Для шорткода я использовал функцию get_post – с ее помощью можно вывести множество данных. Шорткод цитаты текущего поста используется так:
Для оформления текста цитаты можно вставить в style.css: <pre>. exc { font:style:italic; font-size:18px; font-family:Georgia; margin:10px; color:#aaa; }
В начало цитаты можно вставить заголовок текущего поста. Код в этом случае будет такой:
function tf_get_the_excerpt() { global $post; $post_id = get_post($id); $title = $post_id->post_title; $excerpt = get_the_excerpt(); return '<div class="exc"><span class="exc_title">'. $title .': </span><span>'. $excerpt . '</span></div>'; } add_shortcode('exc', 'tf_get_the_excerpt');
Заголовок можно в этом случае выделить другим цветом:
. exc { font:style:italic; font-size:18px; font-family:Georgia; margin:10px; color:#aaa; } span.exc_title { color:#04AEDA; }
Можно заголовок сделать универсальной ссылкой на текущий пост, работающей при любых настройках ЧПУ, даже если вы их потом поменяете. Код будет таким:
function tf_get_the_excerpt() { global $post; $post_id = get_post($id); $title = $post_id->post_title; $url = $post_id->guid; $excerpt = get_the_excerpt(); return '<div class="exc"><span class="exc_title"><a>'. $title .'</a></span><span>'. $excerpt . '</span></div>'; } add_shortcode('exc', 'tf_get_the_excerpt');
Пользуйтесь!