RSSフィードの抜粋をさらに抜粋

RSSフィードの抜粋をさらに抜粋 - 抜粋の長さを調整してみた

説明

RSSフィードはデフォルトでは「全文(HTMLタグを含む)」になっているが、管理画面の「表示設定」では「抜粋のみ(HTMLタグは除外)」を選択できる。それでも投稿記事が長いと、その抜粋テキストも長くなってしまう。ここではそんなRSSフィードの抜粋テキストを調整する方法を紹介する。 RSSフィードの内容は、管理画面の「表示設定」-「RSS/Atom フィードでの各投稿の表示」で指定できる。デフォルトでは「全文を表示」になっていて、この状態では投稿記事の内容がそのままRSSフィードに出力される。ここで「抜粋のみを表示」すると、投稿記事で抜粋が登録されていればその内容が、抜粋が登録されていない場合は投稿記事からHTMLタグを除外した内容がRSSフィードに出力されることになる。そしてこの抜粋テキストは'the_excerpt_rss'フィルターで加工処理が可能だ。 テーマ内で対応するならfunctions.phpに次のような内容を記述すればいい。
add_filter( 'the_excerpt_rss', 'mytheme_the_excerpt_rss' );

function mytheme_the_excerpt_rss( $out ) {
	if ( mb_strlen( $out ) > 100 )
		$out = mb_substr( $out, 0, 100 ).'[...]';
	return $out;
}
ここでは抜粋テキストが100字を超えていた場合に、先頭の100字を切り出し、'[...]'を加えています。字数や改行数など、用途に応じて加工内容を調整してはいかがでしょうか。

関連

お勧めコンテンツ

the_post_thumbnail(2010年7月13日 登録)

void the_post_thumbnail( [ mixed $size = 'post-thumbnail' [ , mixed $attr = '' ] ] )
アイキャッチ画像(サムネイル)を表示する。

add_options_page(2011年5月26日 登録)

mixed add_options_page( string $page_title, string $menu_title, mixed string $capability, string $menu_slug [ , mixed $function = '' ] )
設定メニューにサブメニューを登録する。

get_the_time(2009年11月30日 登録)

string get_the_time( [ string $d = '' [ , mixed $post = null ] ] )
パラメータ$dで指定したフォーマットで投稿時刻を取得する。

wp_add_object_terms(2013年8月6日 登録)

mixed wp_add_object_terms( int $object_id, mixed $terms, mixed $taxonomy )
投稿情報などにタクソノミーを追加する。

post_type_supports(2016年5月25日 登録)

bool post_type_supports( string $post_type, string $feature )
投稿タイプが特徴(≒編集要素)を有しているか調べる。

最終更新日時 : 2011-07-21 18:29