网站地图    收藏   

主页 > 后端 > wordpress教程 >

wordpress页面截取中文乱码解决办法 - WordPress

来源:自学PHP网    时间:2014-11-28 23:42 作者: 阅读:

[导读] 今天提到的程序中截取中文乱码的问题尤其是在首页,对人的第一印象是非常不友好的,现将页面乱码问题的解决方案分享以下所述,实例代码如下:?...

wordpress页面截取中文乱码解决办法

今天提到的程序中截取中文乱码的问题尤其是在首页,对人的第一印象是非常不友好的,现将页面乱码问题的解决方案分享以下所述,实例代码如下:

  1. <?php  
  2. echo mb_strimwidth(strip_tags(apply_filters('the_content'$post->post_content)), 0, 330,"..."); 
  3.  ?> 

以上是wordpress中的源代码,这段代码没有处理好中文的截取问题(老外的开源东西竟然没有考虑到china这个大用户).解决方案如下:

  1. <?php  
  2. echo mb_strimwidth(strip_tags(apply_filters('the_content'$post->post_content)), 0, 330,"...", "utf-8");  
  3. ?> 

涉及到的php文件有:archive.php  category.php  index.php  sidebar-category.php  sidebar-single.php(文件在外观–>编辑里面)

给你一个php中文截取函数,代码如下:

  1. function SubTitle($String,$Length) { 
  2. if (mb_strwidth($String'UTF8') <= $Length ){ 
  3. return $String
  4. }else
  5. $I = 0; 
  6. $len_word = 0; 
  7. while ($len_word < $Length){ 
  8. $StringTMP = substr($String,$I,1); 
  9. if ( ord($StringTMP) >=224 ){ 
  10. $StringTMP = substr($String,$I,3); 
  11. $I = $I + 3; 
  12. $len_word = $len_word + 2; 
  13. }elseif( ord($StringTMP) >=192 ){ 
  14. $StringTMP = substr($String,$I,2); 
  15. $I = $I + 2; 
  16. $len_word = $len_word + 2; 
  17. }else
  18. $I = $I + 1; 
  19. $len_word = $len_word + 1; 
  20. $StringLast[] = $StringTMP
  21. /* raywang edit it for dirk for (es/index.php)*/ 
  22. if (is_array($StringLast) && !emptyempty($StringLast)){ 
  23. $StringLast = implode("",$StringLast); 
  24. $StringLast .= "..."
  25. return $StringLast

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论