テストされていません。しかし、試してみてください:
<?php echo apply_filters( 'the_content', limit_text( get_the_content(), 15 ) ); ?>
function limit_text($text, $limit) {
if (strlen($text) > $limit) {
$words = str_word_count($text, 2);
$pos = array_keys($words);
$text = substr($text, 0, $pos[$limit]) . '...';
}
return $text;
}
コードの上で文字制限を使用したい場合、および単語制限が必要な場合は、コードの下で使用してください
15は文字制限または単語制限用ですか?単語の場合、strlenの使用は正しくありません。
代わりにWPwp_trim_words()を使用してみてください。
テキストを15語にトリミングします。
<?php echo apply_filters( 'the_content', wp_trim_words( get_the_content(), 15, '…' ) ); ?>