bbPressのトピックタイトルの文字数制限する(WordPress)

Last Updated:2023年07月17日| 1のコメント

WordPressのbbPressフォーラムで投稿(トピック)の文字数は、おそらくセキュリティ上の問題が原因であるかoverflow:hidden;を介してはうまく減らないようです。 この問題が発生した場合は、loop-single-topic.phpファイルで次のコードを使用してタイトルの文字数を減らすことができます。

<?php if (strlen($post->post_title) > 32) {
echo mb_strimwidth(the_title($before = '', $after = '', FALSE), 0, 32, '...', 'utf-8'); } else {
the_title();
} ?>

数字は適切に調整してください。 substr() を使うとハングルから壊れてしまう問題がありますね。 だからmb_strimwidth()に置き換えました。

関数でも可能ですが、上記の方法はもっと簡単なようです:

<?php  function the_titlesmall($before = '', $after = '', $echo = true, $length = false) { $title = get_the_title();

if ( $length && is_numeric($length) ) {
$title = substr( $title, 0, $length );
}

if ( strlen($title)> 0 ) {
$title = apply_filters('the_titlesmall', $before . $title . $after, $before, $after);
if ( $echo )
echo $title;
else
return $title;
}
}
?>
// Source: WordPress.org

関数では、テストしてみました。 ハングルが文字化けした場合substr()をmb_strimwidth()に置き換えてくださいと思われる。

メモ:


1のコメント

コメント

  1. mb_strimwidth() は非標準関数なので、エラーが発生した場合は mb_strimwidth モジュールを有効にしてください。

    応答