SimplePie Plugin for WordPressで文字化け | ユーリの備忘録

ユーリの備忘録

日々の生活で思ったことや仕事の中で見つけたことなんかを記録。

SimplePie Plugin for WordPressというプラグインがある。
他のブログのRSSフィードを拾ってきて表示させることができる非常に便利なプラグイン。
使い方は他のサイトに詳しく載ってるのでここでは割愛。

このプラグイン、ブログ本文から指定バイト数分の文字を抜粋して表示してくれるのだが、この「バイト数」というのが厄介者。日本語は2バイト文字なので末尾が文字化けすることが多い。

というわけでどこかで文章を切ってるはずだと思って探してみたところ、815行目付近に下記のような記述を発見。


if ($length > 0 && strlen($s) > $length)
{
$s = trim(substr($s, 0, $length)) . '. […]';
}

これを、

if ($length > 0 && mb_strlen($s) > $length)
{
$s = trim(mb_substr($s, 0, $length)) . '. […]';
}

と、マルチバイト文字対応にすることで一応解決。文字化けに悩んでいる人は試してみてはどうか。