Многие блоггеры используют в конце постов ссылки на предыдущий и следующий посты. Эти ссылки можно вывести с помощью функций next_post_link и previous_post_link. Эти функции позволяют вывести ссылки на предыдущий пост и следующий пост, а так же ссылки на предыдущий пост из этой же категории и следующий пост из этой же категории. Но иногда такие ссылки не всегда информативны – по названию не все всегда можно понять, о чем идет речь в постах, и неплохо бы их для пущей ясности дополнить кратким описанием (цитатой). Прямых функций, выводящих цитаты предыдущих и следующих постов я не нашел, зато обнаружил способ вывода цитаты из предыдущего/следующего постов с помощью специальных функций с параметрами.
Откройте файл functions.php и добавьте в него следующий код:
function tl_excerpt($text, $excerpt_length = 32) { $text = str_replace(']]>', ']]>', $text); $text = strip_tags($text); $words = explode(' ', $text, $excerpt_length + 1); if (count($words) > $excerpt_length) { array_pop($words); array_push($words, '[...]'); $text = implode(' ', $words); } return apply_filters('the_excerpt', $text); } function tl_post_excerpt($post) { $excerpt = ($post->post_excerpt == '') ? (tl_excerpt($post->post_content)) : (apply_filters('the_excerpt', $post->post_excerpt)); return $excerpt; } function previous_post_excerpt($in_same_cat = false, $excluded_categories = '') { if ( is_attachment() ) $post = &get_post($GLOBALS['post']->post_parent); else $post = get_previous_post($in_same_cat, $excluded_categories); if ( !$post ) return; $post = &get_post($post->ID); echo tl_post_excerpt($post); } function next_post_excerpt($in_same_cat = false, $excluded_categories = '') { $post = get_next_post($in_same_cat, $excluded_categories); if ( !$post ) return; $post = &get_post($post->ID); echo tl_post_excerpt($post); }
Для того, чтобы вывести цитату из следующего поста, вставьте в шаблон:
</pre> <p>Для того, чтобы вывести цитату из предыдущего поста, вставьте в шаблон:</p> <pre>
За количество слов, выводимых в цитате, отвечает $excerpt_length = 32, все остальное обрезается символами […] – вы можете изменить эти значения. В приведенном примере не учитывается, из каких постов каких категорий выводятся цитаты. Если вам нужно выводить цитаты из постов этой же категории, то поменяйте в приведенном коде $in_same_cat с false на true. Если вам нужно исключить некоторые из категорий, то можете перечислить их ID в $excluded_categories = ” (пример: $excluded_categories = ‘1,2,6,99’).

Не знаю почему, но
не работает. Сокращал до цифры 12 и ничего не меняется. Длина у меня получается произвольная. Где-то длиннее, где-то короче. http://maks-1.com