WordPressのログイン時のツールバー

WordPress

WordPressで記事タイトルの文字数制限をするやり方

WordPressで記事タイトルの文字数制限をするやり方をメモしときます。例えば、記事の下に関連する記事リストを表示する時やサイドバーに最近の投稿リストを表示させる時なんかに役立ちそうです。レイアウト的にバラバラな記事タイトルの文字数を統一したい時って結構ありそうなので。

[ads_center]

やり方

以下のユーザー定義関数をfunctions.phpなどに記述します。

function trim_str_by_chars( $str, $len, $echo = true, $suffix = '...', $encoding = 'UTF-8' ) {
	if ( ! function_exists( 'mb_substr' ) || ! function_exists( 'mb_strlen' ) ) {
		return $str;
	}
	$len = (int)$len;
	if ( mb_strlen( $str = wp_specialchars_decode( strip_tags( $str ), ENT_QUOTES, $encoding ), $encoding ) > $len ) {
		$str = wp_specialchars( mb_substr( $str, 0, $len, $encoding ) . $suffix );
	}
	if ( $echo ) {
		echo $str;
	} else {
		return $str;
	}
}

あとは、記事タイトルを省略したいところで以下を記述すればOKです。

<?php trim_str_by_chars( get_the_title(), 10 ); ?>

上記は文字数が10文字以上の場合は「…」と省略されます。10という数字が表示される文字数となっているので、ここを変更することで自分の好きな文字数にすることができます。

WordPressのフォーラムに載っていました。とても参考になります。

他のやり方としては、mb_substrにthe_titleを入れて指定した文字数を返すというのもあります。

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

上記は30文字で制限されていて、それ以降は…で省略されます。シンプルで良いですね。

ということで、WordPressで記事タイトルの文字数制限をするやり方でした。

関連記事

  1. WordPressで投稿IDを指定した記事をランダム表示

    WordPress

    WordPressで複数の投稿ID(記事ID)を指定した記事をランダムで表示させるやり方

    個人的にやってみたかったので備忘録。WordPressで自分が作った関…

  2. WordTwit

    WordPress

    WordTwitの設定方法や日本語化してからの使い方について

    WordTwitはWordPressで記事を投稿した時に自動でツイート…

  3. WordPressのログイン時のツールバー

    WordPress

    WordPressでプラグインなしで関連する記事を一発で呼び出す関数をfunctions.phpに記…

    WordPressのシングルページで、よく記事の終わりにその記事に関連…

  4. WordPress

    WordPressの公式ロゴマークは公式サイトでダウンロードすることができる

    何気なくWordPress公式サイトを見ていたら、WordPressの…

  5. WordPressの自動バックグラウンド更新

    WordPress

    WordPressで複数のウィジェットを表示させるやり方

    WordPressのウィジェットってとても便利ですよね。ドラッグ&ドロ…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

最近の記事

  1. cheero USB-C PD Charger 60W
  2. DY-S01
  3. OWL-QI10W04
  4. BQ-CC87L

アーカイブ

PAGE TOP