Get Recent Comments 中文改良版

注意:转载本文请说明出处,谴责赤裸裸的剽窃行为!

正式弃用了中文工具箱,采用Get Recent Comments插件来显示最新评论。

这个插件可以在后台设置在每隔多少长度插入一个空格来防止因为评论过长破坏页面布局,但是因为中文问题原版插件在插入空格时可能插入到一个中文字符的中间从而导致乱码问题,这里提供一个自己改良了的版本。

原版插件默认使用的是空格来插入评论达到换行的目的,我换成了<wbr />(软换行标签,表示此处可换行)。好处是评论显示时都是连续的而不会产生多余的空格,可能存在的问题是此标签不被某些浏览器所支持,根据需要自己修改一下参数即可。

调用方法:

<?php if (function_exists('get_recent_comments')) { ?>
    <h2>Recent Comments</h2>
        <ul>
        
<?php get_recent_comments(); ?>
        </ul>
<?php } ?>

下载:
Get Recent Comments(based on v2.0.2, for WP 2.3 and later version)
更新日志:
2007-09-26 作者很勤快,我也勤快点,更新至v2.0.2,增加包含/不包含分类的选项设置
2007-09-25 基于原版2.0修改适应WordPress 2.3的最新版本,节约数据库开销,修复若干bug,推荐更新

下载:
Get Recent Comments(based on v1.5.5, for WP 2.2 and earlier version)
更新日志:
更新1:修改了执行utf8_wordwrap的顺序,先截取摘要再插入标签,解决截断标签的问题和因为插入标签影响截取长度的问题。

更新2:有时候最新评论并不马上出现,这是因为使用了cache的原因,对于我这样已经使用了WP_Cache插件的用户来说并无意义,最简单的更改方法是搜索“$use_cache = TRUE;”,将TRUE改为FALSE并保存。

更新3@2007-05-01:删除一句可能导致程序执行错误的语句,不明白原作者的意图

更新4@2007-05-27:修复由于插件调用WP的wptexturize函数导致的乱码问题,改为先截取以后再执行wptexturize

更新6@2007-08-09:完全解决末尾半个字符的问题

更新7@2007-08-10:修正一个以前的错误逻辑,可能导致插入过多的无效标签

更改方法:

  1. function utf8_trim($str) {
  2.  
  3.     $len = strlen($str);
  4.  
  5.     for ($i=strlen($str)-1; $i>=0; $i-=1){
  6.         $hex .= ' '.ord($str[$i]);
  7.         $ch = ord($str[$i]);
  8.         if (($ch & 128)==0) return(substr($str,0,$i));
  9.         if (($ch & 192)==192) return(substr($str,0,$i));
  10.     }
  11.     return($str.$hex);
  12. }
  13.  
  14. function utf8_substr($str, $len) {
  15.     for ($i = 0; $i < $len && $i < strlen($str); $i++) {
  16.         $temp_str = substr($str, 0, 1);
  17.         if (ord($temp_str) > 127) {
  18.             $i ++;
  19.             if ($i < $len) {
  20.                 $new_str[] = substr($str, 0 ,3);
  21.                 $str = substr($str, 3);
  22.             }
  23.         } else {
  24.             $new_str[] = substr($str, 0 ,1);
  25.             $str = substr($str, 1);
  26.         }
  27.     }
  28.     return join('', $new_str);
  29. }
  30.  
  31. function utf8_wordwrap($instr, $width, $s = '<wbr />') {
  32.     $outstr = '';
  33.  
  34.     do {
  35.         $len = strlen($instr);
  36.         if (strlen($instr) > $width) {
  37.             $tmpstr = utf8_substr($instr, $width);
  38.             $outstr .= $tmpstr;
  39.             $outstr .= $s;
  40.         } else {
  41.             $tmpstr = $instr;
  42.             $outstr .= $tmpstr;
  43.         }
  44.         $instr = substr($instr, strlen($tmpstr), $len);
  45.     } while (strlen($instr) > 0);
  46.  
  47.     return $outstr;
  48. }
标签:, , , , , , , , ,

相关日志

[转载]优化firefox的方法

修改Firefox 的缓存位置——比如修改到RamDisk上面
1、打开Firefox浏览器
2、在地址栏输入 about:config
3、查找 browser.cache.disk.parent_directory
4、如果没有找到 browser.cache.disk.parent_directory ,则新建这个“字符串”
5、修改到你需要存放的位置,例如我修改到RamDisk位置 B:\firefox
6、重新启动 Firefox 程序
7、在地址栏输入 about:cache ,可以发现Cache位置已经成功修改

1、打开Firefox浏览器
2、在地址栏输入 about:config
3、查找 config.trim_on_minimize
4、如果没有找到 config.trim_on_minimize ,则新建这个“布尔”
5、设置为true——好处:在最小化时自动释放内存
6、重新启动 Firefox 程序

1、打开Firefox浏览器
2、在地址栏输入 about:config
3、查找 browser.cache.memory.capacity
4、如果没有找到 browser.cache.memory.capacity ,则新建这个“整数”
5、设置为固定值16384——好处:据说是最优化的大小
6、重新启动 Firefox 程序

原文地址:http://www.linwan.com/archives/2351.html

补充:
@20070619
1、修改browser.sessionhistory.max_total_viewers修改值为5或更小{页面快进/快退功能中保存的页面总数,默认是-1(无限)}。
2、network.prefetch-next,这个属性也设置为false,关闭预读取网页的功能

标签:,

相关日志

让Firefox使用Google网页快照

由于众所周知的原因
在中国大陆不能直接使用Google提供的网页快照服务
刚才在水木NS版看了一些讨论解决了这个问题

发信人: mihiro (Lovely_mihiro), 信区: NewSoftware
标 题: Re: 为啥我的GOOGLE搜索,点击“网页快照”以后显示找不到服务
发信站: 水木社区 (Fri Feb 2 09:59:46 2007), 站内

ip改为72.14.203.104

/search?q=cache: 改为/search?&q=cache:

就可以看了

需要做的就是让脚本来替我们自动完成这些操作

首先安装Firefox扩展:Greasemonkey
这是一个可以通过执行JS脚本来自定义客户端显示的插件
安装完插件重启FF,文件–打开文件,选择脚本安装即可

下载脚本:googlecache.user.js

脚本是网上找的,源代码如下:

  1. // --------------------------------------------------------------------
  2. //
  3. // This is a Greasemonkey user script.
  4. //
  5. // To install, you need Greasemonkey: http://greasemonkey.mozdev.org/
  6. // Then restart Firefox and revisit this script.
  7. // Under Tools, there will be a new menu item to "Install User Script".
  8. // Accept the default configuration and install.
  9. //
  10. // To uninstall, go to Tools/Manage User Scripts,
  11. // select "googlecache", and click Uninstall.
  12. //
  13. // --------------------------------------------------------------------
  14. //
  15. // WHAT IT DOES:
  16. // turn highlighted search terms into links to the next instance.
  17. // --------------------------------------------------------------------
  18. //
  19. // ==UserScript==
  20. // @name            Google Cached Pages
  21. // @description     Use different URLs to visit Google cached pages over China's Great Fire Wall (GFW)
  22. // @include         http://*.google.*/search*
  23. // ==/UserScript==
  24.    
  25. (function() {
  26.  var allLinks = document.links;
  27.  if (allLinks  != null)
  28.    {
  29.       for (i = 0; i <allLinks.length; ++i)
  30.       {
  31.          if (allLinks [i].href.indexOf ("/search?q=cache:") > 0)
  32.          {
  33.              allLinks [i].href = allLinks [i].href.replace ("/search?q=cache:", "/search?&q=cache:");
  34.              allLinks [i].href = allLinks [i].href.replace ("72.14.235.104", "72.14.203.104");
  35.          }
  36.       }
  37.    }
  38. }
  39. )();

Greasemonkey貌似是个很强大的插件
嘿嘿以后可以弄些好玩的

标签:, , , ,

相关日志

京ICP备05059555号