サポート » プラグイン » wordpress related postsで記事の抜粋の文字数が設定できない

  • WordPress related postsなのですが、記事の抜粋を入れたいのですが、

    Advanced settingで、

    「Display Post Excerpt ○○ Maximum Number of Characters. 」

    という箇所にチェックを入れて、抜粋したい文字数を入れると、記事が抜粋されずに全部掲載されてしまいます。

    ちなみに、「Display Publish Date」もチェック入れてみたのですが、反映されません。

    カスタムCSSで設定するなど何か方法がありましたら、どなたか教えて頂けましたら大変有難く存じます。

    ちなみに使用テーマは、Llorix One Liteです。

    どうぞ宜しくお願い致します。

    • このトピックはdrteamが7年、 2ヶ月前に変更しました。
4件の返信を表示中 - 1 - 4件目 (全4件中)
  • CG

    (@du-bist-der-lenz)

    数値はいくつにしていますか。日本語は句読点でつながっているので、一文字と解釈されるのはご存知でしょうが英文で確認しましょう。

    init.php の 347行目からが、記事抜粋に関する処理のようですが、
    strlen を使って文字数チェックしています。
    実際の関数 wp_rp_text_shorten においては(274行目〜)、mb_substrとマルチバイト対応の関数を使っているのに、文字数チェックには対応していない strlen を使っているのでおかしくなってるように思います。この2箇所を mb_strlen に直せばいけるような気がします。

    strlen は文字数ではなくバイト数でのチェックのため、WordPressのUTF-8文字だと1つの日本語 = 3バイトと判定されてしまって、

    function wp_rp_text_shorten($text, $max_chars) {
    	$shortened_text = mb_substr($text, 0, $max_chars - strlen(WP_RP_EXCERPT_SHORTENED_SYMBOL));

    の処理部分で、たとえば日本語で10文字(30バイト)とした場合、5文字制限(15バイト)したら、
    $max_chars – strlen(WP_RP_EXCERPT_SHORTENED_SYMBOL) がおそらく 30 – 15 = 15なのですが、mb_strlenが 15文字と判断して、10文字全部が表示されちゃう、、ってことなんじゃないかなーと思います。

    これを逆手に取るなら、投稿文字数を25(バイト)にすれば、日本語で10文字なら 5文字制限になるかなぁ(30-25)とか思います。ややこしい…

    トピック投稿者 drteam

    (@drteam)

    Du bist der Lenz様

    メッセージ有難うございます。
    数値は5にしているのですが、全文表示されてしまうんですよね。。。
    1にしても同じなんです。

    トピック投稿者 drteam

    (@drteam)

    kimipooh様

    教えて頂き有難うございます。
    20文字で […] という表示が出て
    25文字で、4文字と[…]という表示が出てきました!
    大変助かりました。
    本当に有難うございました!!

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「wordpress related postsで記事の抜粋の文字数が設定できない」には新たに返信することはできません。