備忘録-投稿の全文表示と抜粋表示について
wordpressに投稿記事一覧を表示させた際、
場合によっては抜粋表示ではなく全文を表示したい場合があったり、逆に全文表示になっている部分を抜粋表示にしたい場合がある。時もある(笑
singleやpageのphpを直接編集する方法。
「フロントページの表示」を「最新の投稿」にしている場合、これらのどれかを使って一覧を表示している。
front-page.php、 home.php、 index.php
「フロントページの表示」を「固定ページ」にしている場合、これらのどれかを使って一覧を表示している。
home.php、 index.php
記事ページの場合は、single.phpやindex.phpなどを使って表示させている。
これらのphpをテキストエディターなどで開くと、
<?php the_content(); ?>
や
<?php the_content( sprintf(、
<?php echo wp_strip_all_tags(get_the_content()); ?>
などのような構文を見つけることができる。
共通点は“the_content”で、これは全文を表示する際に記述する。
逆に抜粋にしたい場合は、この the_content を “the_excerpt”に変えてあげると、抜粋になる。
抜粋表示の「・・・続きを読む」の表示を変えたい
抜粋表示にすると、ブラウザ上では“抜粋文章・・・続きを読む”のように表示される。
この続きを読むを消したい場合は、“function.php”に以下の記述を追加すると良い。
function new_excerpt_more($more) {
return '...';
}
add_filter('excerpt_more', 'new_excerpt_more');
return '...';の...の部分を任意の文字列に変更することも可能。
return '...見てみる';とか。
...の部分にリンクをつけたい時は、以下のようにすると良い。
function new_excerpt_more($more) {
return '<a class="moretag" href="'. get_permalink($post->ID) . '">...</a>';
}
add_filter('excerpt_more', 'new_excerpt_more');
次に出てくる編集点は、抜粋表示の文字数。
デフォルトでは110文字なので、この文字数を操作したい場合は“function.php”に以下の記述を追加すると良い。
function new_excerpt_mblength($length) {
return 50;
}
add_filter('excerpt_mblength', 'new_excerpt_mblength');
return 50; の数値を変更することで、管理が可能になる。
function.phpを編集するので、バックアップをお忘れなく!