讓WordPress首頁正確顯示中文摘要長度

為了首頁沒有辦法正確顯示中文摘要長度的問題(明明設定55,最後卻全篇列出),我之前曾經找過很多方法,還跑去學佈景修改不過還是沒達到預期效果,仍然時好時壞,最後只好放棄。

沒想到剛剛再查,竟然找到有人分享解決方案了,太感謝了!!!

實際作法如下:

找到/wp-includes/formatting.php這個檔案,找到這段:

if ( strpos( _x( 'words', 'Word count type. Do not translate!' ), 'characters' ) === 0 && preg_match( '/^utf\-?8$/i', get_option( 'blog_charset' ) ) ) {
$text = trim( preg_replace( "/[\n\r\t ]+/", ' ', $text ), ' ' );
preg_match_all( '/./u', $text, $words_array );
$words_array = array_slice( $words_array[0], 0, $num_words + 1 );
$sep = '';
} else {
$words_array = preg_split( "/[\n\r\t ]+/", $text, $num_words + 1, PREG_SPLIT_NO_EMPTY );
$sep = ' ';
}

將’words’改為’characters_excluding_spaces’ (不含空白)或者’characters_including_spaces’(含空白)即可。

讓WordPress首頁正確顯示中文摘要長度,修改formatting.php
修改前
讓WordPress首頁正確顯示中文摘要長度,修改formatting.php
修改為’characters_including_spaces’後

 

參考資料:WordPress升級4.3後無法統計中文摘要字數的解決方法

發表迴響