Bo-Blog V2.1.0 到 PJBlog 2.7 的转换程序2 条评论

3月28日更新:尝试兼容 Bo-blog  的多种编码方式。如果知道自己的数据库编码可以在第一页选择好,如果不清楚可以不选,由程序自动识别,但个别空间可能无法支持该功能。

--------------------------------------------

今天上班很无聊,程序没来很多事情做不了。想起曾经答应小陈做个 Bo to PJ 的数据转换程序来,干脆现在写写打发时间。反正利用早先写的 WP to PJ 改改很容易的,于是下载了两个博客程序的最新版本分析了下数据库就着手修改。现在已经完工提供一个测试版本给大家试用。目前程序可转换的数据内容包括日志、评论、分类和标签。

由于转换程序使用的是从 Mysql 数据库读取数据直接写入到 PJ 数据库中的方式,所以该程序只能运行在全能空间中。具体的操作方法如下:

  1. 下载转换程序并同 PJ 数据库一起上传到全能空间中
  2. 通过浏览器访问转换程序
  3. 按照提示填写好表单并提交等待转换完毕既可

由于 Bo-Blog 在日志内容处理方面想要通吃市面上各种编辑器做的有点大而复杂, 所以这里仅仅以官方的 UBB 和 TinyMCE 编辑器为基准,提供较为完美的数据转换,尚不知道 FCK 编辑器插件是否同样有效。欢迎大家帮忙测试并提出宝贵意见,谢谢。

以前写的一段 PHP UBB 函数1 条评论

搬家之前赖电脑面前想整理整理,不想翻出来个以前写的 PHP UBB 函数,额……忘记当初是因为什么来写这个了,只记得这个好像不怎么全,哦对了,没有 list 和 media 部分。管它了,贴出来也好警醒下自己继续完善,不要又封尘了。

<?php
/*
 -----===== PHP 版 UBB 代码转换器 =====-----
          -----          Author:Wady          -----
 -----===== Update:2007-8-31 =====-----
*/

function ubbcode($strContent, $DisIMG, $DisUBB, $AutoURL) {
    if( empty($strContent) ){
        return $strContent;
    }

    //代码标签
    $pattern = "/\[code\](\s\n|\n|)(.[^\[]*)\[\/code\](\s\n|\n|)/ie";
    $replacement = "'<blockquote>'.checkStr('\$2', 'code').'</blockquote>'";
    $strContent = preg_replace($pattern, $replacement, $strContent);

    //链接自动转换
    if( $AutoURL == 1 ){
        $pattern = "/([^\=\]][\s]*?|^)(http|https|rstp|ftp|mms|ed2k):\/\/(.*?)(\>|\<|\"\;|\>\;|\<\;|\)|\(|$| )/iem";
        $replacement = "'\$1<a href=\"'.checkStr('\$2://\$3', 'url').'\">\$2://\$3</a>\$4'";
        $strContent = preg_replace($pattern, $replacement, $strContent);
    }

查看更多

WordPress 2.5 版编辑页面的缩略名栏临时解决插件1 条评论

当 WordPress 2.5 还是叫“2.4 - bleeding”的时候,WPCN 团队以及很多 WP 迷就发现了新的后台界面下,在撰写日志或页面的时候居然没有了缩略名定义窗口,只是在保存之后会在标题下面出现地址并可以即时修改“缩略名”,不过这样无形中就给习惯给自己的日志或页面定义一个英文缩写名来代替系统自动生成的乱码式地址的中文用户平添了一个步骤。自大的 Matt 再一次忽略了广大的双字节语言用户……哦卖糕的!

等到官方 SVN 上的版本号已经变为 2.5 RC1 这个问题依旧没有解决……寒,估计会和以前的 feed 截断问题那般(这次的 2.5 版倒又将这个问题改正了,另外 WP 自带标签查询重复是通过 slug 而不是 name 的错误做法仍旧存在,于是 2.5 新增的 tag 编辑功能完全是无用的,真搞不懂开发组是干什么的)于是乎在朋友的支持下凑了个简单的插件帮助大家临时性解决这个不大不小的问题。整个代码贴在下面,大家可以复制去保存为 php 文件,文件名自定义,然后上传到插件目录并去 WP 后台启用即可。

<?php
/*
Plugin Name: Slug Column Savior
Plugin URI: http://www.voidpage.com/blog/2008/03/find-out-slug-input.html
Description: This is a plugin that enable the post slug option to show out again.
Author: Wady
Version: 1.0
Author URI: http://www.voidpage.com/
*/

function add_sluginput() {
    echo "<div id=\"slugdiv\" class=\"postbox " . postbox_classes('slugdiv', 'post') . "\">\n<h3>";
    echo _e('Post Slug') . "</h3>\n";
    echo "<div class=\"inside\">\n";
    echo "<input name=\"post_name\" type=\"text\" size=\"13\" id=\"post_name\" value=\"" .attribute_escape( $post->post_name ) ."\" />";
    echo "</div>\n";
    echo "</div>\n\n";
}

add_action('dbx_post_advanced', 'add_sluginput');
?>

优化PHP代码的42条建议没有评论

英文原文:http://reinholdweber.com/?p=3

1. 如果一个方法可静态化,就对它做静态声明。速率可提升至 4 倍。

2. echo 比 print 快。

3. 使用 echo 的多重参数(译注:指用逗号而不是句点)代替字符串连接。

4. 在执行 for 循环之前确定最大循环数,不要每循环一次都计算最大值。

5. 注销那些不用的变量尤其是大数组,以便释放内存。

6. 尽量避免使用 __get,__set,__autoload。

7. require_once() 代价昂贵。

8. 在包含文件时使用完整路径,解析操作系统路径所需的时间会更少。

9. 如果你想知道脚本开始执行(译注:即服务器端收到客户端请求)的时刻,使用 $_SERVER[‘REQUEST_TIME’] 要好于 time()。

10. 函数代替正则表达式完成相同功能。

查看更多

这就是生活没有评论

到广州刚好一年了,之前年关时做了颇多工作希望本命年一过能开始顺顺利利的。恩,事实上现在也开始一步步走向正轨,包括工作,自己的事业还有感情。

年前本会想着今年找一个更好的工作单位,计划赶不上变化,在朋友的邀请下组成了美斯特互动网络工作室意图尝试给自己打工——即一直念叨的 soho。为了保险起见,当前所在的这个公司随意散漫的作风倒是给了足够多的时间料理自己的工作室,同时很长一段时间内也可以有稳定的工资收入,所以待工作室的生意稳定下来再考虑辞职了。

计划本月搬家,离开黄埔这个地方和高中同学到番禺洛溪桥头附近合租,那儿离我们两的公司都很近,也能腾出更多的时间来打点自己的生活。和同学一起住还有一个好处,嘿嘿,口味相同我就可以展示自己的厨艺了,才到广州本有机会的,但总是有点怕怕,对老同学就没什么顾忌咯。上个周末去看了两套房子,都很不错价格也实惠,就等朋友将当前的房子转租出去就开始签合同搬家了。

感情的事就不说了,哈哈……丹丹也有新男朋友了,而我也更有了追求的目标,而且是很实在的目标……