Deprecates the_content_rss(). Add the_content_feed() and get_the_content_feed(). Convert places that called the_content_rss() with an excerpt length to the_excerpt_rss(). Remove the rss_excerpt_length option. Use the_content_feed() where the_content() was previously used in feeds. Props Viper007Bond.

git-svn-id: https://develop.svn.wordpress.org/trunk@11980 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
Ryan Boren
2009-09-28 14:36:48 +00:00
parent 9bb3e2ca73
commit 2cb6b5469d
7 changed files with 96 additions and 63 deletions

View File

@@ -1690,4 +1690,70 @@ function the_author_ID() {
the_author_meta('ID');
}
/**
* Display the post content for the feed.
*
* For encoding the html or the $encode_html parameter, there are three possible
* values. '0' will make urls footnotes and use make_url_footnote(). '1' will
* encode special characters and automatically display all of the content. The
* value of '2' will strip all HTML tags from the content.
*
* Also note that you cannot set the amount of words and not set the html
* encoding. If that is the case, then the html encoding will default to 2,
* which will strip all HTML tags.
*
* To restrict the amount of words of the content, you can use the cut
* parameter. If the content is less than the amount, then there won't be any
* dots added to the end. If there is content left over, then dots will be added
* and the rest of the content will be removed.
*
* @package WordPress
* @subpackage Feed
* @since 0.71
* @uses apply_filters() Calls 'the_content_rss' on the content before processing.
* @see get_the_content() For the $more_link_text, $stripteaser, and $more_file
* parameters.
*
* @deprecated 2.9.0
*
* @param string $more_link_text Optional. Text to display when more content is available but not displayed.
* @param int|bool $stripteaser Optional. Default is 0.
* @param string $more_file Optional.
* @param int $cut Optional. Amount of words to keep for the content.
* @param int $encode_html Optional. How to encode the content.
*/
function the_content_rss($more_link_text='(more...)', $stripteaser=0, $more_file='', $cut = 0, $encode_html = 0) {
_deprecated_function(__FUNCTION__, '2.9', 'the_content_feed' );
$content = get_the_content($more_link_text, $stripteaser, $more_file);
$content = apply_filters('the_content_rss', $content);
if ( $cut && !$encode_html )
$encode_html = 2;
if ( 1== $encode_html ) {
$content = esc_html($content);
$cut = 0;
} elseif ( 0 == $encode_html ) {
$content = make_url_footnote($content);
} elseif ( 2 == $encode_html ) {
$content = strip_tags($content);
}
if ( $cut ) {
$blah = explode(' ', $content);
if ( count($blah) > $cut ) {
$k = $cut;
$use_dotdotdot = 1;
} else {
$k = count($blah);
$use_dotdotdot = 0;
}
/** @todo Check performance, might be faster to use array slice instead. */
for ( $i=0; $i<$k; $i++ )
$excerpt .= $blah[$i].' ';
$excerpt .= ($use_dotdotdot) ? '...' : '';
$content = $excerpt;
}
$content = str_replace(']]>', ']]&gt;', $content);
echo $content;
}
?>