标签/Tag为[MT]的文章 [ 3/4 ]

[MT4 Hack]针对MT4模板的HTML压缩修改 ,

升级到 MT 4,模板模块化了,但是大量的 SetVar 和 if 让生成的最终页面空行空格大量增多,让人看到实在不爽,小修改了代码,让 MT 程序在发布/重建页面的时候对最终代码进行空格/行的压缩。
办法如下,找到并打开 lib/MT/Template.pm文件,找到 sub build {...},在此函数下面添加以下 Perl 代码

sub easun_html_reduce
{
my ($tmpl ,$res)= @_;
$$res =~ s!\s*\n\s*!\n!isg;
$$res =~ s!(\r|\t|\f| )+! !isg;
return 1;
}

然后转到sub build {...}代码的最后一行
return $res;

在这个之前添加
$tmpl->easun_html_reduce(\$res);

到此完成Hack,保存后重建整个Blog吧:) 相信看见空格和空行明显减少了 :P

--EOF--

[随笔]发现MT3.33可以无改动平滑升级到MT 4.0 正式版 ,

MT 4.0 和 MT 3.3x系列模板相差太大,加上 beta 的时候测试过几次,发现都不能直接无修改升级(总有形形色色的错误出现)。
昨天,再次把现在运行的 MySQL 库导出来,导到一个临时的库里面,然后在这个临时数据库中测试MT4.0正式版本,居然发现没有任何错误提示,原来的模板在没有任何改动下完全没有任何错误。

更值得高兴的事情,是我现在用的几个插件:


AutoIPBan 版本 0.02
随机模块加载插件(RandInclude) 版本 0.01
SimpleComment简单评论防SPAM插件 版本 0.01
TCode 版本 3.3.01
RelatedEntries

都在MT4下正常运行而没有任何问题。

恩。这样以来,可以把 MT4的摸板和CSS修改先放一放,先升级吧:)
准备今天晚上把整个系统移植到 MT4.0下来:)

--EOF--

[随笔]MT4 模板的变化和3.x系列风格移植的注意事项

不知道 6A 出于什么考虑。从 MT3.3x到 MT4,MT 模板的一些定义变化了。导致旧的CSS没有办法直接移植到新的系统(如果你使用新系统带的模板的话)。

主要变化在 页面布局 的变化,基本上对应关系如下:

layout-two-column-right -> layout-wt
layout-two-column-left -> layout-tw
layout-three-column -> layout-wtt(宽-窄-窄) 或者 layout-twt (窄-宽-窄)

另外, 模块Class 名字原来 叫 module 现在改成了 widget , 原来所有以 module 的元素名字也改成了 以 widget 开头。

大概变化就这样,如果要使用旧风格,直接把 CSS 按照上面的进行替换,然后再修改细部就可以了。

--EOF--

Movable Type 4.0 (MT4) 终于发布 ,

恩,让我言中了,MT 4 RC1后,连续有了RC2,RC3,RC4,今天发现终于出正式版本了:)
喜欢新版本风格和追求新功能的兄弟姐妹可以更新了:)

由于是正式版本,下载界面也由 MovableType.org 转移到了MovableType.com, 商业气氛一下子就出来了,笑ing...

另外, MovableType.org 也正式宣布了 New Movable Type Plugin Directory 的存在,这个东西我在以前的 Blog文章 中提到过,显然随着新版本的正式推出,也正式从台后走到台前。至少对我来说,这个 Plugin 管理系统修复了N个Bug,现在我发布的插件在 MovableType.org 显示的漂亮了一点。

从 MT 1.0 到现在的 MT4.0, 6A 走了快6年了。希望新版本给大家带来不一样的感觉。

好了,废话完结,我需要测试下MT4.0正式版本,期待能平滑升级自己的网站.

MT 4 RC1 试用小记 ,

Movable Type 4 终于告别了 beta7 ,但是却迎来了 RC,而且是 RC1。笑ing,估计少不了RC2,RC3。。 到真正的 Release 估计还需要等几天。看来这次 update 真是耗费了 6A 的精力。

周末有空,把测试blog( http://www.syhtcgf.com/temp/mt4/ )升级到了 RC1,也真正的测试了一番,今年由于工作比较忙碌,前几个beta版本虽然也安装了,但是却没有彻底测试,这次一并测试了 :P RC1的确要成熟的多了:)

对于 MT4 系列,其实对我来说最大的亮点如下:

1.Page 的定义:
页面功能。说实在的,在以前版本中这个功能依旧有,只是你需要在 Index Templates 中直接建立新Template而已,这样产生的页面重头开始写起,没有固定的样式和结构。也不可以对之发表评论和引用通告。 而 MT4 系列中,提出了 Page 的定义,说白了就是创立了一个不会出现在归档页面的“Blog文章”而已,可以接受评论和引用通告,可以设定共同的Template来规划相同的样式和结构。 说实在的,对我来说,这个功能最大的好处就是让我的 “Index Templates” List 显的清爽,因为我的 Index Templates List 现在实在太长了(建立了N个页面:P).

2.发表文章的“所见即所得(WYSIWYG)”样式和编辑Template的“代码加色”:
“所见即所得(WYSIWYG)”就不用说了,更重要的是 编辑Template的“代码加色”,实在是方便了很多:) 你说呢?

3.导出的格式包含了tags
好不容易来临的功能,当初可是耗费了精力,还专门给6A写了 email :) 当然,这次 MT 的备份方式不再只是 "导出",还有了"Buckup",可以备份包括Templates,Users在内的所有信息。比"导出"方便多了 :P

The New Movable Type Plugin Directory

今天上班的时候收到 plugins@sixapart.com 的通知邮件:)
看来 www.movabletype.org 的整合的差不多了。 尝试点 email 上的地址,发现是 "找不到服务器",看来在单位是无法访问 www.movabletype.org 了:)
把Email 贴到这里,回家再看吧:)
全文如下:

Dear EasunLee,

We're on the cusp of releasing a completely redesigned and enhanced Plugin Directory for Movable Type. We are emailing every developer, including yourself, who has previously submitted a plugin to the directory and asking that they update or remove their listing from the directory. Doing so will ensure the highest quality directory and the best possible experience to visitors of the directory when we officially launch it.

There are a few things you should know in order to update any plugins you might have registered. First, to ease the transition to the new system we have migrated your plugins and account data into the new system. However, because the old plugin directory used TypeKey to manage account access we have had to generate new login credentials for your new plugin directory account. The credentials and information below will help you login to the directory for the first time, edit your profile and update your plugins.

URL: http://www.movabletype.org/cgi-bin/mt4community/plugins/ProNet/pronet.cgi
Username: easunlee
Password: *********

Once you have logged in you are free to change your password to one that is easier to remember.

We apologize for the inconvenience this may cause. Thank you very much for your continued support.

Sincerely,
The MT.org Team

--EOF--

[笔记]巧用Plugin管理模板导航条

This is a SiteLog of Easun's WebBlog.

其实就是说本站上面的无序行表导航条:)
但是有个 加重 的选择。根据不同页面加重的部分不一样,比如主页加重的就是 "Home" ,而 BookMarks 选种的就是 "Bookmarks";
我的 Blog 采用的模块化设计,整个头部都是一样的,原来的加重是用一段 JS 来实现的,但是自己觉得不太满意,既然是静态化设计,何不彻底静态化?既然后台是 MT ,那就 MT plugin实现吧。
分析了一下,最简单采用add_global_filter来过滤:)
我的顶部模块名字为 Blog:header 模块,原来加载的办法是 MT 的 MTinclude 办法,如下:

<$MTInclude module="Blog:header"$>

修改后的代码如下

<$MTInclude module="Blog:header" do_notice_id="top_blog_home"$>

添加的 global_filter 名字为 do_notice_id ,其中"top_blog_home" 是我导航菜单中需要加重的部分,可以根据不同页面来换成你加重的id。

[MT]MT4, Template Tag 的改进是进步还是后退?

MT beta 3 也出来了。
6A 花了数月时间推出的这个较大改动的版本如同给 Blog 界投放一个深水炸弹,一时间,叫好的有,因为Bug而对 MT 失望的也有,甚至有因为升级而导致原来的 Database 完蛋的。。

作为 MT 使用者,我也测试了新版本。结论是这次的 beta 的确是个 beta 。也许是 6A 一向表现的太稳健了,原来的bata版本基本都是很稳定了,所以很多人急的升级,导致问题多多。

不说这个了,通过测试,我发现 MT 4b 对 Template Tag 的处理有了很多变化,一个最重要的,我认为也是很危险的变化就是: MT 在build的时候不在对 Template 中出现的不存在的 Template Tag 做 忽略 处理,而是直接停止 build .

[SiteLog]谁在占用我大量的带宽?

似乎 www.syhtcgf.com 站点越来越慢。。。
启用了 Fast-CGI 换来的结果不是速度的提升,而是经常的 500 error ,看来 DreamHost 的 Fast_CGI 还是不完善。 so 又换回了 normal-CGI 模式,虽然慢一点,至少不会莫名其妙的出现 500。 PS:幸好偶的 MT 还是静态HTML。。。

谁在占用我大量的带宽?今天查了一下 access.log ,结果大吃一惊: 原来我已经被 Cracker 和 Spamer 严重盯上了。

[随笔]近日生活小记

最近最火的是什么? 是 6AMT4.0b 横空出世,华丽的Web2.0让人心动。 上前天晚上,当 MT teams 的邮件来临的时候,我正在拿着小刀和签字笔和图纸做最后的斗争。。 半夜3点休息的时候,又犯了失眠的老毛病,几乎是盯着天花板到6点才迷迷糊糊的睡着,然后7点半起床。
前天,晚上下班后关机早早休息,算是补充了一下休息。
值得高兴和兴奋的是收到了 小妹 寄来的生日礼物--一只骆驼,呵呵:) 这个是我这么多年收到的最另人happy 的东西,小妹真是耗费的心思 :) 虽然说谢字有点多余,我这是还是表示偶最大的谢意:) (老了,又老了一岁。)
这个周末是不能歇了。周一还要出一批图纸,恩恩,,下个周一也要出一批图纸,也就是下个周末也不能歇。。
生活总是这样。。北京的天气。。37~40度之间吧,我觉得我好象有点中暑:(

PerlChina Wiki 的CSS,我有了个大体的框架,但是是建立在重写摸板的基础上。。。慢慢来吧:)

PS: 今天我的3个信箱同时收到3份 Yapc:: Beijing 2007 的邀请函。他们的干什么?群发? 笑ing。。看来我是去不了 :) 祝贺大会圆满成功吧 :)

PS:下载了MT4.0b,在本地安装了,发现其对模板中不存在的标签处理采取了直接报错而不是3.3x系列的忽略的处理办法,这个对喜欢装/卸插件,而对模板中的遗留的插件自定义标签没有清理的用户来说,是个灾难,你会发现自己升级完成后,根本无法”重建 Blog“ :) 慎之。。这个究竟是 beta 版本:)

--EOF--

[笔记]Ubuntu下架设MT服务全过程及MySQL导出数据乱码的解决

用上了 Ubuntu ,自然想把 MT 本机的服务架设起来,另外也是给外网 http://www.syhtcgf.com 的数据给个备份和对网站程序的本地测试环境。
步骤如下:
1。当然是安装 Apche2服务器了:)
a:)利用“新立得”或者如下命令:

sudo apt-get install apache2

b:)安装完成后可以编辑 /etc/apache2/apache2.conf,/etc/apache2/sites-available/default来做一点配置,这个配置我就不多说了,网络上都有,如果你懒的话,可以使用默认。
c:)设置/var/www/ 和 /usr/lib/cgi-bin/的权限,这两个是上一步中设定的目录,分别是网站的主目录和 cgi-bin目录(在没有修改的情况下), Ubuntu的默认登陆并不是 root,所以这两个目录对于登陆者来说,在GUI模式下是没有写权限的,所以,对于我这样的懒人来说,还是改变权限和所有者比较好:)命令如下

sudo chown -hR easun /var/www
sudo chmod -R 777 /var/www #懒人的办法,777
sudo mkdir /usr/lib/cgi-bin/ #如果 程序没有自动建立的话
sudo chown -hR easun /usr/lib/cgi-bin
sudo chmod -R 755 /usr/lib/cgi-bin

2.安装 MySQL并且配置,
a:)利用“新立得”或者如下命令:

sudo apt-get install mysql-server

这一步下载的东西较大,也许等的时间比较长。
b:)配置,配置文件在/etc/mysql/my.cnf,有兴趣的可以研究下,我就使用默认值了,但是需要给root加上密码,命令如下
mysqladmin -u root password 'passwordmima'

给MT建立数据库:
mysql -u root -p
mysql>create database mtdb;
mysql>quit

3.安装 MT
Six Apart 下载 MT的最新版本,解压缩,将 mt-static 目录放在 /var/www/下,把 其他文件放在 /usr/lib/cgi-bin/mt/下,设置好权限:) 报纸 /var/www/可写,(上面已经设置好了)
在 fireFox中 输入 http://127.0.0.1/cgi-bin/mt/mt.cgi 进行安装,输入MySQL的设置等等,就可以等待安装完成了,注意的是要编辑 /usr/lib/cgi-bin/mt/mt-config.cgi 中的 StaticWebPath 行这个样子:
StaticWebPath http://127.0.0.1/mt-static/
来保证MT程序能找到其必须的静态文件(如css和img)
4。导入网上的数据库。

[SiteLog]简单修改模板实现 MT Ajax方式的"评论预览" ,,

本站的SiteLog,也算是对MT的一个小Hack吧:)

一直觉得 MT 的"评论预览" 不够人性化,这样的东西当然是用 Ajax 方式好一点。网上也有现成的修改成 Ajax 发表评论和进行评论预览的插件,但是简单了看了看,总觉得太烦琐,太复杂,不利于将来的升级和增加服务器的负荷(不是玩笑,本来Ajax方式是减少负荷的,但是根据某个老外的Hack教程做了后,负荷反而增加了 -_-bbb)。
既然 Ajax 没有什么太多的技术含量,而我自己又不是想写个标准,通用的Ajax函数库出来,那么为什么不仅仅自己动手改改模板而来个"轻量级"的 Ajax方式的"评论预览"呢(至于发表评论还是传统模式吧)?
关于 Ajax ,我以前写过一些东西,在这里 http://www.syhtcgf.com/blog/archives/3_50.html。这次修改模板就是以这个为基础的 :P

久违了,MT新版本信息。。Movable Type 3.35

官方转了转,发现Movable Type 3.35发布了。
仔细看了看,似乎没有什么大的更新。
按照业内版本号的划分,这样的小版本号一般只是fix bug而已。
所以,建议不是很 "追星(新)”的人就别跟进了。等4.0吧:)

主要的 bug fixes 信息如下:

  • Movable Type Enhanced Installation Process
  • XSS Vulnerability fix: script injection is allowed in author and email parameter of mt-comment.cgi
  • Fixed broken help links
  • Fixed MTDate tags to display correct timestamp under daylight savings
  • SQLite BerkeleyDB to MySQL migration script fixed
  • 48741: convert-db garble characters sometimes
  • Increased the size of "template_name" column

--EOF--

我的 随机模块加载插件(RandInclude)被6A收录了 ,

随笔,算是个好消息吧。
今天无意中在Google上搜索,发现6A的官方有RandInclude的连接。跟踪过去是果真是我的插件。
而且登陆到6A的插件首页,直接在后边的 LATEST PLUGINS 下面就可以看见连接:)
RandInclude 是我10月底写的 MT 插件,是对"MTInclude 标签"的加强,当时抱着尝试性质的在6A那里登记过,此后就再也没有理会过, 今天无意中居然发现收录了。只是不知道大家使用后感觉如何?

PS:无意中发现我的WebBlog的PR数值是3了。一直都没有注意到,呵呵。

--EOF--

升级到MT3.34和FastCGI的开启 ,

Movable Type 3.34出来好几天了吧?终于决定给自己的WebBlog升级了。
升级的热点是近来SPAM猖狂和新版本对FastCGI的支援。而我的WebBlog是在DreamHost上,刚好支援FastCGI

升级很容易,简单覆盖,看的出来,似乎 Six Apart 这次只是修改了 Bootstrap.pm 让它支援FastCGI而已,其他的修改基本上忽略不计。

说实在的,对于 FastCGI 技术我并不看好,觉得其不稳定性太高,程序写的稍有不好就会使apache崩溃,相对来说,我青睐于mod_perl,这个稳定点,性能也好点,MT程序标准的OOP编写方式在mod_perl跑的很稳定的,但是似乎支援mod_perl的空间除了自己作主机商外几乎是不可能的:)

[SiteLog]又见SPAM

This is a SiteLog of Easun's WebBlog.
今日进后台,发现SPAM评论已经累计到了以千为单位的程度(我还设置了系统自动删除3天以上的SPAM功能),虽然都被 SpamLookup 本身拦截没有显示出来,但是这样的疯狂的SPAM轰炸不知道多占资源?
前段时间偶装了阿郎TCode for MT,由于SPAM评论不突出,故而没有安装CCode for MT。看来改日也要把这个CCcode装上去了。
现在,只好Ban掉一大批IP地址来防范了。

PS: SpamLookup 防范 SPAM只是把这个放在“垃圾”里面,而并不拒绝接收,也许,改日改下程序,让它直接决绝接收?

--EOF--

[MT plugin]TCode for MT的应用,分析和注意事项

TCode for MT 是 CCode and TCode for MT的关于 防范 TrackBack SPAM 的组成部分。
随着最近网络上的 TrackBack SPAM 大规模卷土重来,装这个 MT plugin 的同好者越来越多,偶也 TrackBack SPAM 受害者之一,也装了这个plugin,在安装和使用中有些体会,写下来于各位同享之。

[MT plugin]随机模块加载插件/RandInclude plugin

# RandInclude 0.01
# Random template modules Include plugin for Movable Type

路杨原创MT 插件(plugin),功能在于在重建的时候随机选择一个你所需要的模块插入到文章或者索引中。

添加的标签为: <$MTRandInclude$>
用法为

<$MTRandInclude module="xxx,yyy,zzz" $>

其中 xxx,yyy,zzz等为你所要选择的模块,中间用逗号分开,在重建的时候程序会随机从xxx,yyy,zzz等中选择一个:)

该插件(plugin)支持多语言,语言根据你的MT选择的语言而定,目前支持简体中文和英文两种语言。需要其他语言的可以自行翻译 Easun:L10N下的语言包。

   1   2   3   4