【WordPress】the_title()に文字数制限

2013.10.18 2018.03.15WordPress
【WordPress】the_title()に文字数制限

記事タイトルを一覧表示するときなどに、レイアウトなどの関係で記事タイトルの文字数を制限したいときがあります。

そういうときには

<?php the_title(); ?>

を下記のように書き換えます。

<?php echo mb_substr( $post->post_title, 0, 20) . '...'; ?>

記事タイトルの文字数を20文字に制限しています。「20」の部分を変えれば任意の文字数に変更できます。

しかしこのままだと、タイトルが制限文字数以内の場合でも後ろに「…」が付いてしまいます。

そのため、if文を使って制限した文字数以上のときは省略して「・・・」を、制限文字数以内のときはそのまま表示されるようにします。

制限文字数以上のときだけ省略記号をつける

<?php
if(mb_strlen($post->post_title)>20) {
$title= mb_substr($post->post_title,0,20) ;
echo $title . '...';
} else {
echo $post->post_title;
}
?>
柴田竹思

柴田竹思

ベトナム在住Web系フリーランス。有名企業から個人事業まで、いろんなウェブサイトを制作してます。これまで400弱くらい作りました。一年中WordPressばっかりいじってます。

プロフィールはこちら