[随笔]MT 4.0 杂谈 - 模板篇

| 9 Comments | 2 TrackBacks | WebBlog Articles

升级到 MT 4.0 好几天了,模板依然用的 3.3x系列的。不是不升级模板,而是在 MT 4.0 默认模板基础上测试和重新设计风格而已:)

MT 4.0 模板设计的很优秀,在测试中发现了一些不同和技巧,特和大家共享之。

一: 强大的 MTIf 和 MTSetVar。
因为有了SetVar 和 if ,模板也有了简单的判断和设定功能。所以MT4.0模板才变的更加简单和模块化。通过在主模板顶部设定不同变量的数值,可以方便而简单让模板生成的页面任意在 3栏,2栏变化,也可以方便让侧边栏显示或不显示某个模块。实在是节省了设计人员的工作量。仔细研究每个主模板顶部变量(SetVar)的设定,会让你受益非浅。
我的页面上面的导航条自动加重原来靠自己写的插件实现的,在现在MT 模板中完全可以利用 MTSetVar 和 MTif 实现,简单介绍如下:
修改头部模块(导航条),假设名字为 "Header" 为:

<div id="header">
<h1><a href="/" accesskey="1" title="Return to HomePage of easun.org" >Easun.org(路杨)</a></h1><h3><$MTBlogName encode_html="1"$></h3>
<h2><$MTBlogDescription$><a href="/links.html" title="Some Good Sites">链接</a></h2>
<ul>
<li id="top_ossu"><a href="/ossu/" title="Go to Easun OS Switch Utility HomePage">软件站</a></li>
<li id="top_perl"><a href="/perl/" title="Perl Site">Perl Site</a></li>
<li id="top_blog_bookmarks" <MTIf name="blog_bookmarks">class="notice"</MTIf>><a href="/Bookmarks/" title="Easun's Bookmarks,朋友的Blog RSS聚合">Bookmarks</a></li>
<li id="top_blog_tags" <MTIf name="blog_tags">class="notice"</MTIf>><a href="/blog/tag/" title="Tag cloud of Easun's WebBlog">Tags</a></li>
<li id="top_blog_archives" <MTIf name="archive_index">class="notice"</MTIf>><a href="<$MTLink template="archive_index"$>" title="Easun's All Articles Archives">Articles</a></li>
<li id="top_blog_index" <MTUnless name="is_not_blog">class="notice"</MTUnless>><a href="<$MTLink template="main_index"$>" title="Easun's Blog">WebBlog</a></li>
<li id="top_blog_home" <MTIf name="site_home">class="notice"</MTIf>><a href="/" title="Easun's HomePage">Home</a></li>
</ul>
</div>

在一般情况下,WebBlog 都是粗的,如果要加粗其他页面,比如Site Home 页面,只需要在此模板顶部写入:

<MTSetVar name="site_home" value="1">
<MTSetVar name="is_not_blog" value="1">
。。。
<$MTInclude module="Header"$>

就可以了:) 是不是被专门写插件处理方便多了? 呵呵。

二。 按分类归档有所变化。
这次MT4.0的重建速度要比以前版本快了很多,但是我怀疑和 "按分类归档" 有所变化。 以前"按分类归档" 是个大问题,严重拖慢速度,因为要重写的数据太多了。
这次, MT 默认模板对 "按分类归档" 只输出最近的几篇文章(就像Blog首页那样),所以节省了大量时间。但是作为补偿, MT4 推出了新的归档类型: Category Monthly Archives(分类的按月归档),这个主意的确不错,既方便了读者,也节约了重建速度。

三。大量的 SetVar 和 if 让生成的最终页面空行空格大量增多。
这个也许是模板化的代价,也许是 官方 的疏忽?虽然不影响什么。但是给人感觉很不舒服,我自己修改了下程序,让 MT 自动对页面进行了空格/空行压缩,但是发现速度明显变慢。。也算一郁闷事情吧:)


引用通告|TrackBacks (2)

本日志的TrackBack URL: http://easun.org/cgi-bin/mtos/tb_mt_41.pl/144.

以下罗列的是网络上引用了本日志 [[随笔]MT 4.0 杂谈 - 模板篇] 的 Blog 连接。

This is a SiteLog of Easun's WebBlog. 其实就是说本站上面的无序行表导航条:) 但是有个 加重 的选择。根据不同页面加重的部分不一样,比如主页加重的就是 "Home" ,而 BookMarks 选种的就是 “Bookmarks”; 我的 Blog 采用的模块化设计,整个头部都是一样的,原来的加重是用一段 JS 来实现的,但是自己觉得不太满意,既然是静态化设计,何不彻底静态化?既然后台是 MT ,那就 MT plugin实现吧。 分析了一下,最简单采用add_glo... [阅读更多...]

MT 4 模板功能强大,从代码分析来看,加了一系列小的功能,并没有从默认的模板(Template)中体现出来:) 这些功能,有些来自MT4程序本身,有些来自自带的插件(plugin),还是挺实用的,如果再结合 MTIF ,MTElse, MTUnless 等模板自身的选择流程,肯定让设计界面的朋友心动:) 我简单的说两个自己偶然发现的,抛砖引玉。 1. MTIfCommenterIsEntryAuthor 这个标签目的是判断回复评论的人是否就是这个主题的发布者:) 我偶然发现这个标签,然后Blog中... [阅读更多...]

本文相关评论|Comments (9)

还是用回到3.34了么,呵呵~~
不过貌似回复丢了不少了~~~:P

是啊。评论丢失了好多,因为旧的Buckup没有新评论。
PS:没有兴趣研究MT4那个Bug的原因了,先恢复到3.34,只是。。可惜了我设计的模板和CSS。

呵呵~~~留着说不定以后用得着~看有没有其他人解决呢~
半天没能上来……哎……谁让接的路由器在别人屋里。。。网线就牵了二十多米。。。

数据库当然保留了:)

咳嗽~~翻了几篇老文,忽然发现以前的文章回复里面,U自己的回复不见了?汗~~~

是不少,因为老数据库里面没有最新的留言。

汗……不是最新留言,而是以前的。。似乎所有U自己的留言都消失了。。。比如
http://easun.org/archives/movable_type_4_release.html

寒。。真的啊。
看来是我手动改MySQL库出现的原因,不过数据库已经被我“优化”过了,多余数据已经清理,看来恢复不了了。

汗……“优化”得还真是彻底啊。。。横横。。。

发表该文评论|Leave a comment

最近发表|Recent Entries

[MT Tips]如何让某个日志在Blog首页固顶?

貌似最简单的办法就是修改日期到一个很遥远的日期,比如 AnySQL 那样:) 但是带来的问题的很多,比如导致Feed阅读器犯糊涂或者影响搜索引擎的收录等等,更糟糕的是对于 日志来说,最主要的就是发布日期。也许大家都已经发现了,我的主页模仿 MT Forum 搞了一个固顶日志(也是为了风格统一)出来,这个固顶日志是后台通过自己设置实现的。是怎么设置的。答案是利用 <mt:Entries> 的tags 功能。 具体概念代码如下:<mt:Entries tag="@top" sort_by="authored_on" sort_order="descend" limit="1" blog_ids="1,5"> dosthing.....</mt:Entries> 这样我们只要要在固定的主题 加上…

北京 Perl Workshop 2008 网站开张 - 接受大会注册,演讲报名

网站开张了, 地址是 http://conference.perlchina.org/bjpw2008/ 由 PerlChina 和 Postgresql China 合办,2008 年 11 月 8 号举行的 Beijing Perl Workshop 是一个免费的 Perl 交流会,向所有对…

好玩的 MT Forum 的按作者归档

Perl Forum 用 MT4 的 MT Forum 的功能搭建起来了好几天了,一直没有发现什么意外,今天突然发现 按作者按月归档 貌似找完了整个发布完的 Perl Forum 也没有找到 link ,查看作者个人信息貌似也没有 link ? 真是好玩的 归档方式。从后台看,给每个用户(作者)都建立了按月的归档页面,估计是为了便于各用户归档自己的文章吧? 后台抓图如下:…