今天一朋友的WordPress用了wpbus的一個主題,結果中文截斷的部分結尾處總有一個帶問號的黑色方框亂碼(如圖)。

我查看了一下模板,代碼是這樣寫的:
<?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 250,"..."); ?>
解決的辦法有兩個:
1、開啟mb_string extension
如果你是自己的服務器,可以更改apache配置,可以將mb_string extension設置為on。
2、設置字符集
將代碼加上UTF-8參數,代碼就變成了:
<?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 250,"...",'utf-8'); ?>
這樣就解決了這個WordPress中mb_strimwidth函數中文截斷產生亂碼的問題。
