Jak modifikovat vzhled a délku anotace

Zdroj: „Improving WordPress’ the_excerpt() template tag“:http://www.aaronrussell.co.uk/blog/improving-wordpress-the_excerpt/

WordPress’ **the_excerpt()** template tag is used in most themes for browsing the archives and categories of a blog. Rather than displaying the full content of the post, the excerpt displays a short snippet of the content. Unless you manually enter in an excerpt when writing each post, WordPress grabs the first 55 words of the post and uses that as the excerpt.

So far so good, but there are problems with the way WordPress does this. These include:

* Word count – 55 words is a good number, but what if you want more or less?
* Formatting – WordPress strips out all HTML tags. This gets rid of images and links, but can also get rid of paragraph formatting, making the entire excerpt one long paragraph without any line breaks.
* JavaScript – Unfortunately JavaScript isn’t stripped out, which can result in some plugins’ messy script appearing in your excepts. Not only does this look rubbish, it can be a vulnerability too.

Stačí z **wp-includes/formatting.php** zkopírovat funkci **wp_trim_excerpt**, přejmenovat ji třeba na **better_excerpt** a vložit ji do **functions.php** (Vzhled > Upravit soubory)

/—code php
function better_excerpt($text) {
global $post;
if ( “ == $text ) {
$text = get_the_content(“);
$text = apply_filters(‚the_content‘, $text);
$text = str_replace(‚]]>‘, ‚]]>‘, $text);
$text = strip_tags($text); // můžu zakázat
$excerpt_length = 55; // můžu změnit délku
$words = explode(‚ ‚, $text, $excerpt_length + 1);
if (count($words)> $excerpt_length) {
array_pop($words);
array_push($words, ‚[…]‘);
$text = implode(‚ ‚, $words);
}
}
return $text;
}
\—

Na závěr je nutno na konec **functions.php** vložit ještě následující 2 řádky, které způsobí, že WP místo vestavěné funkce **wp_trim_excerpt** použije naši vylepšenou **better_excerpt**.

/—code php
remove_filter(‚get_the_excerpt‘, ‚wp_trim_excerpt‘);
add_filter(‚get_the_excerpt‘, ‚better_excerpt‘);
\—

Implementováno na tomto webu.

**Customizing the Read More**
„http://codex.wordpress.org/Customizing_the_Read_More“:http://codex.wordpress.org/Customizing_the_Read_More

změna textu odkazu:

/—code php

\—

„Useful ways to customize and format the WordPress more tag »“:http://digwp.com/2010/01/wordpress-more-tag-tricks/

**Advanced Excerpt Plugin**
„http://wordpress.org/extend/plugins/advanced-excerpt/“:http://wordpress.org/extend/plugins/advanced-excerpt/

This plugin adds several improvements to WordPress‘ default way of creating excerpts.

– Keeps HTML markup in the excerpt (and you get to choose which tags are included)
– Trims the excerpt to a given length using either character count or word count
– Only the ‚real‘ text is counted (HTML is ignored but kept)
– Customizes the excerpt length and the ellipsis character that are used
– Completes the last word or sentence in an excerpt (no weird cuts)
– Adds a read-more link to the text
– Ignores custom excerpts and use the generated one instead
– Theme developers can use the_advanced_excerpt() for even more control (see the „FAQ“:http://wordpress.org/extend/plugins/advanced-excerpt/faq/)