• ワードプレスthe_excerpt(抜粋・概要)タグのカスタマイズいろいろ


    記事本文を全文表示させたくない場合ってありますよね。
    カテゴリページだったり、記事一覧のページってタイトルと抜粋記事と続きを読むくらいでいいや!って時です。

    そんなときは、以下を使います。

    <?php the_excerpt(); ?>

    テンプレートカスタマイズの時は、以下のcontent部分をexcerptに変更すればOK。

    <?php the_content(); ?>

    これで抜粋記事に記載した内容、もしくは本文から110文字が抜粋されるのですが、上手く行かないときは、WP Multibyte Patchプラグインが有効になっているかまずはチェックします。

    するとこんな感じ。全文表示よりスッキリとした表示に変更できましたよね。

    これで満足な人も沢山いると思いますが、私は欲が出て来たのでカスタマイズを続行します。
    最終的にこんな形にしました。

    相違点は、

    ・[…]を…に

    ・表示される文字数を110文字から300文字に

    ・続きを読むリンクを追加

    以上、3点です。

    では、処理していきたいと思います。

    […]の表示を変更して続きを読むを追加

    今回、私は[…]を消すついでに続きを読むに置き換えました。もちろんリンクさせてあります。
    以下のコードを function.php に記述して下さい。

    function new_excerpt_more($more) {
    global $post;
    return '&gt;&gt;<a href="' . get_permalink() . '">' . __('続きを読む') . '</a>';
    }
    add_filter('excerpt_more', 'new_excerpt_more');

    抜粋に表示される文字数の指定

    次は現在自動的に100文字が抜粋されてる文字数を好きな数に変更する方法です。
    以下のコードを function.php に記述して下さい。

    function new_excerpt_mblength($length) {
    return 300;
    }
    add_filter('excerpt_mblength', 'new_excerpt_mblength');

    私は表示される文字数を増やしたかったので300文字にしてみました。
    以上でやりたいことは全て終えたのですが、私の「続きを読む」の書き方だと、抜粋からの表示にリンクはされません。
    なので抜粋に記載してる人は、「続きを読む」は空欄にして、以下のようにphpファイルを書き直してください。

    <?php the_excerpt(); ?><a href=<?php the_permalink()?>>続きを読む ≫</a>

    それから、the_excerptタグが余計なおせっかいをして勝手にpタグが挿入されてしまいます。
    抜粋に記載する人は、必ずpタグを除外するコードをfunction.phpに記載して下さい。
    pタグ自動挿入を免れるためのコードは以下です。

    remove_filter('the_excerpt', 'wpautop');
    Advertisement

    カテゴリー: WPテンプレートタグコメント(1)|2012年2月29日12:50 AM

    コメント

    コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    トラックバックURL: http://wpcollege.info/wp-tag/excerpt.html/trackback