wordpress中文截断不乱码(代码版)

林继 WordPress 3,083 共写了54个字 (2011-05-08 11:22:29) 没有评论 打印 扫描二维码 百度已收录

直接放在functions.php里面就可以了。

  1. //自动截断不乱码
  2. // jieduan luanma
  3. /////////////////
  4. function Limit_Char($max_char = 200, $more_text = '...', $more_link_text = '', $limit_type = 'content') {
  5.     if ($limit_type == 'title') { $limiter = get_the_title(); }
  6.     else { $limiter = get_the_content(); }
  7.     $limiter = apply_filters('the_content', $limiter);
  8.     $limiter = strip_tags(str_replace(']]>', ']]>', $limiter));
  9.      if (strlen($limiter) > $max_char) {
  10.         $limiter = substr($limiter, 0, $max_char+1);
  11.         $limiter = utf8_conver($limiter);
  12.         echo $limiter;
  13.         echo $more_text;
  14.         if ($more_link_text != '') {
  15.             echo ' <a href="';
  16.             echo the_permalink();
  17.             echo '">'.$more_link_text.'</a>';
  18.         }
  19.     } else {
  20.         echo $limiter;
  21.     }
  22. }
  23.  
  24. function utf8_conver($str) {
  25.         $len = strlen($str);
  26.         for ($i=strlen($str)-1; $i>=0; $i-=1){
  27.                 $hex .= ' '.ord($str[$i]);
  28.                 $ch = ord($str[$i]);
  29.         if (($ch & 128)==0) return(substr($str,0,$i));
  30.                 if (($ch & 192)==192) return(substr($str,0,$i));
  31.         }
  32.         return($str.$hex);
  33. }

历史上的今天

5月
8

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

< >