找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
积分等级发帖收益的说明江阴论坛帮助汇总江阴论坛管理规则(必看)江阴论坛版主招聘中江阴论坛已运行
查看: 1707|回复: 0

[WordPress] 彻底解决wordpress中文截断产生乱码的方法

[复制链接]
发表于 2010-4-15 11:57:24 | 显示全部楼层 |阅读模式
将以下两个函数写进主题所附带的functions.php文件中

  1. function Limit_Char($max_char = 200, $more_text = '...', $more_link_text = '', $limit_type = 'content') {
  2.     if ($limit_type == 'title') { $limiter = get_the_title(); }
  3.     else { $limiter = get_the_content(); }
  4.     $limiter = apply_filters('the_content', $limiter);
  5.     $limiter = strip_tags(str_replace(']]>', ']]>', $limiter));
  6.      if (strlen($limiter) > $max_char) {
  7.         $limiter = substr($limiter, 0, $max_char+1);
  8.         $limiter = utf8_conver($limiter);
  9.         echo $limiter;
  10.         echo $more_text;
  11.         if ($more_link_text != '') {
  12.             echo ' <a href="';             echo the_permalink();             echo '">'.$more_link_text.'</a>';
  13.         }
  14.     } else {
  15.         echo $limiter;
  16.     }
  17. }

  18. function utf8_conver($str) {
  19.         $len = strlen($str);
  20.         for ($i=strlen($str)-1; $i>=0; $i-=1){
  21.                 $hex .= ' '.ord($str[$i]);
  22.                 $ch = ord($str[$i]);
  23.         if (($ch & 128)==0) return(substr($str,0,$i));
  24.                 if (($ch & 192)==192) return(substr($str,0,$i));
  25.         }
  26.         return($str.$hex);
  27. }
复制代码
把模板文件中比如index.php中将截断函数替换成新的。
  1. <?php Limit_Char(200); ?>
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|江阴人家

GMT+8, 2024-3-29 21:43 , Processed in 0.016864 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表