Movable Type: June 2006 Archives

我找回来了MT的IP Banning

| | Comments (0) | TrackBacks (0)

使用了那么久的MT,直到今天才发现一个奇怪的问题:

我的两个MT上的 "SETTINGS" 居然不一样:


在“设置”这一栏里,一个有 "IP Banning",一个没有。我知道MT有IP BAN 这个功能,也用过,但真的没注意到我的另外一个MT上竟然没有这个标签。平常看惯了没觉得有什么不正常的地方。

两个MT都是3.2版的。奇了怪了。开始有点怀疑是免费版和付费版的区别 (我的程序包一个是在付费区下的另一个是在免费区下的),但马上我就否定了这个想法,因为我知道免费版和付费版在功能上没有任何区别。难道是安装不完全? 也不可能。

我是找不到答案了,只得去问他们的客服,哈,10分钟不到我收到了答复(他们总是又快又准)。他们叫我到config 文件中加上一行:

ShowIPInformation 1

我加上去后马上MT的 "SETTINGS" 里就出现了那个 "IP Banning" 的标签了。

看看你的MT是不是也漏了?

在给我的回复中,原因说的很清楚:

In earlier versions of Movable Type, the IP Ban List was available by default. If you did not have any IP addresses in your ban list when you upgraded to Movable Type 3.2 (or did a new installation), the option would not be visible.
...... ...... ......
It's possible that one of your installations has this tab visible because you had previously had an IP address banned (either manually, or automatically due to excessive commenting within a short period). This might explain why you see the option now in one installation and not the other.


最后还说之所以默认情况下没让这个标签出现是因为它的作用逐渐降低转而使用 SpamLookup。但我觉得还是有点不太一样的。

上篇 谈的是MT模板的一些大致特征。如果看完后不是很明白也没有关系,因为那只是一个大概的“纲要”,并没有细致和深入的分析。

要设计或修改你的MT样式,你必须从MT的各种模版入手,观察他们,了解他们,以便更好的驾驭他们。

这是一套功能强大的模板,是 Six Apart 三套发布系统包括 Movable Type 在内的总共1000多万用户共同使用的一套模版。

观察Movable Type模板的结构布局

在所有的Movable Type的页面模版当中,最重要的应该是 Main Index 和 Individual Entry Archive 两个,他们包括了所有页面的绝大多数设计元素。在个性化设计中,完成了这两个模版也就意味着完成了整个网站中最重要的部分,其他的页面模版设计可以通过把上面那两个页面的相关部分照搬过来就是(相对来说就是件比较简单的事了)。而样式模版只有一个那就是 Stylesheet,它控制着所有的页面模版的样式。

首先通览一下所有的页面模版,看看他们的布局。

查看默认模板可以到官方的这里,在浏览器上看要比在后台的模版编辑框中看更方便 (如果你用IE,你打开的每个模版看到的是莫名其妙的东西,与你在后台模板编辑器上看到的不一样,要“查看源文件”才能看到模板的真面目。如果你用Firefox,立即就出来了)。

看到了吗,每个模板的 </head> 下面一行,有的是: <body class="layout-two-column-right">,而有的是:<body class="layout-one-column">; ,这是对 body 的不同的定义,即不同页面的 body 标签用不同的 class 来定义。前者说的是“这个页面采用‘导航在右边’的两栏布局”,后者说的是“这个页面采用单栏(或者一栏)布局”。

在 Stylesheet 的最末尾处你还可以找到有关 layout-two-column-left layout-three-column 的相关定义,也就是“导航在左边的两栏布局”和“三栏布局”。

因此在默认模板中的设计不光是你初装时看到的那个“导航在右边的两栏”的默认设计,而且还包括了“导航在左边的两栏”和“三栏”几种布局并预留了“四栏”。当然你也可以使用单栏的。你可以随意挑选。不管你把 body 标签定义成上面所列的哪种形式,在 Stylesheet 中都有相对应的CSS定义。(别忘了到 Stylesheet 中去看看 #alpha,#beta,#gamma 和 #delta 的相关CSS )

你可以这样来体验一下上面说的这些话的含义,便于你理解,也更直观:

你到 Main Index Template 看到的是: <body class="layout-two-column-right">,那么你到你的首页看看,页面是两栏的,并且导航在右边。

你再到 Individual Entry Archive 模板,看到的是: <body class="layout-one-column">,然后你到博客中打开任何一篇文章(从Permalink),看到的是单栏的吗?

你还到 Comment Preview Template 模板看看也是:<body class="layout-one-column">,然后你自己到 Comments (评论) 区去粘贴点什么,然后按"Preview" (预览),预览页是不是也是单栏的?

现在你明白了定义 body 的这个 class 是做什么的了。

在MT的默认页面模板中,关于“栏”的命名是按希腊语的 "alpha","beta", "gamma" 和 "delta" 的顺序来命名的,而不同于以往版本所采用的 "left","right", "center" 等命名方法。这样就使你在调整“栏”的顺序时更容易理解和区别。并且给每个栏一个独立的 ID :<div id="alpha">,<div id="beta">,<div id="gamma">,<div id="delta"> 等 (而不是 class !)。

有的是两栏,而有的又是单栏,我们怎么把单栏的页面都改成两栏的以使站点看起来更一致呢?很简单。

当你到两栏页面的模版 Main Index 时,先找到 <div id="banner">,<div id="alpha">,<div id="beta"> 这几个部分。第一部分 "banner" 就是“题头”或“LOGO”。"alpha" 是页面的左边,也是文章内容的主体。"beta" 就是右边的导航了。

好,这是首页的三个大的组成部分。你再到刚才那些单栏的页面模板看看结构,比较一下它与首页有什么不同?只有 "banner" 和 "alpha",却没有 "beta" ,是吗?正因为没有 "beta" 才没有右边的导航部分,才是单栏嘛。

现在我们来把单栏的改成导航在右边的两栏布局页面:

1 - 先把单栏的 <body class="layout-one-column"> 改成 <body class="layout-two-column-right">。
2 - 到首页模版中把 "beta" 部分完整的复制然后粘贴到单栏的 "alpha" 下面。
3 - 保存并重建模版。

现在回到刚改好的这个模版相对应的页面看看是不是变成两栏了?

如果你不想导航在右边而要把它改到左边怎么办?

1 - 先把 <body class="layout-two-column-right"> 改成 <body class="layout-two-column-left">。
2 - 将原来模版中的 "beta" 部分完整的复制下来粘贴到 "alpha" 的前面,再把原来那个 "beta" 剪切掉。(也就是换了个位)
3 - 现在你的栏的顺序是 "beta","alpha"了,和原来的 "alpha" 和 "beta" 顺序不同。这时你要把 <div id="beta"> 和 <div id="beta-inner"> 改成 <div id="alpha"> 和 <div id="alpha-inner">;再把本来的 <div id="alpha"> and <div id="alpha-inner"> 改成 <div id="beta"> 和 <div id="beta-inner">。这样,顺序就又恢复到 "alpha" 和 "beta" 了。现在你要清醒:alpha 已经是导航而 beta 是文章主体了。
4 - 保存并重建。

重要提示:在你还没有完全把握的时候,最好不要去动你现在正运行的博客站点。而应该建立一个新的测试博客 (Test Blog)。各种测试应在这个测试博客中做。

至于把两栏的布局改成三栏或四栏的也差不多,到你的测试博客中多试几次就有感觉了。注意 alpha,beta,gamma 和 "delta" 的顺序。

当你了解了这些布局特点后,要改变某个栏的宽度就变得简单了。你只要到css文件中找到相应的 ID,改变和调整他们的宽度就可以了。

以上讲的是从模版中观察并调整页面的整体布局。



[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ]

黑羽 要我写个关于Movable Type的网页设计“教程”,我考虑好几天了,觉得不知该怎么写才好,到现在为止我心里还没有一个确定的思路。但是不管怎样,我都认为这不是一篇文章能写就的,而应该是一个系列。我就稀里糊涂的开始吧。

与其说是“教程”,不如说是我个人的一些心得体会。很多对MT有经验的朋友或从事页面设计的朋友都各有高招,还望赐教并及时地纠正我的错误;也希望那些对 Movable Type 页面设计不够熟悉的朋友能够从中得到一点启发。总之,希望大家一起参与到这个讨论中来。

浅谈MT模版设计

就MT的版本而言,这里我用3.2版来举例。至于即将发布的3.3和先前的版本,在设计方法上来讲都差不多。

不同的博客发布程序都有其各自的特点。Movable Type是把相关的完整的页面设计放进相关的模版中,然后通过这些模版呼叫相关的程序从而产生了网站相关的页面 (我自己都觉得这句话好别扭,比绕口令还难)。

每个页面模版都是一个完整的页面

而正是因为这些模版具有完整性,所以带给我们设计时很大的方便,使之看起来一目了然,一眼就能看得出你整个页面的东南西北以及页面中的每个部分和元素,很方便你做修改和调整。

但是,这种完整性又是相对的。你可以“破坏”它:根据你的需要你可以把这个完整的页面切割成若干个“块”,再用这些“块”来重新组合你的页面。( 越说越糊涂了?) 这就是Movable Type 模版中的 "modules" 功能。你可以把整个网站共用的而又不常变动的某些部分 (比如 foot) 做成一个 module,然后在每个或某几个模版中运用这个module。以后当你需要修改某个地方时 (比如2006年要改成2007年)你就只要到这个 module 中去修改一次就够了,而不用到每个模版中一一修改。这和 SSI (SERVER SIDE INCLUDES)比较类似。你也可以完全不理会这些 modules。这就是MT模版的灵活性和方便性。

另外,MT的模版除了她的完整性外,还有一个显著的特征,我把它叫做“单一性” 。之所以这样说,是因为只要你懂得HTML或者XHTML你就可以进行设计了,而无需懂得其他的语言。可以这样来理解:只要你会普通的页面设计,你就可以设计Movable Type。所以Movable Type 的页面设计相对来讲还是比较简单的。

说到它的简单你可千万别误会,以为MT只是给那些初学者用的一个入门程序。如果这样想,那就错了。

由于通过MT的模版产生出来的页面是标准的HTML页面,所以任何其他能在标准网页上运用的语言都可以放到MT的模版中来用,比如PHP等。从而使你的网站形式更加丰富多彩。这应该是MT的可扩展性

MT从模版使用的功能上对他们进行了分类(在MT后台的 "TEMPLATES" 栏里):

    索引模版:
  1. Main Index
  2. Master Archive Index
  3. Stylesheet
  4. Atom Index
  5. Dynamic Site Bootstrapper
  6. RSD
  7. RSS 2.0 Index
  8. Site JavaScript

有八个。目前与我们页面设计有关系的是前面三个。第一个是首页模版,第二个是储存所有文章的页面。接下来是CSS样式。后面的五个先放到一边,暂时与我们的页面设计没有太大的关系。

    存档模版:
  1. Category Archive
  2. Date-Based Archive
  3. Individual Entry Archive

这三个模版是三种不同类型储存文章的页面模版。第一个是是按文章分类来存档的页面模版,第二个是按日期来存档的,最后一个是单独每篇文章的模版。

    系统模版:
  1. Comment Preview Template
  2. Comment Pending Template
  3. Comment Error Template
  4. Comment Listing Template
  5. TrackBack Listing Template
  6. Uploaded Image Popup Template
  7. Dynamic Pages Error Template

有七个,是和MT的系统功能有关的。象评论,引用等。其中又以前五者更重要或更常用。

其实还有一个辅助功能的模版没有被列入到这里,那就是“搜索”模版。你把整个操作后台翻个底朝天都不可能找到它,它被放到了MT-3.2-en_US (根目录) 下的 search_templates 文件夹里面了(当然现在在你的服务器上)。它也应该属于系统模版一类。在做个性化设计的时候,如果你的设计是“大动作”的,那这个模版是不可或缺的。既然这个模版重要那为什么又不放在可以修改的地方而要把它隐藏起来?我现在也找不到好的答案。

如果你的模版已经被修改,这些模版的原始资料可以到官方网站重新找回来,或者在你现有的博客中再建立一个新的博客 (取名叫 "test blog" ?),这个新的博客中就有没被改动过的原始模版可供你使用。

现在我们来看看模版里面。你可以随意拿首页模版也就是 Main Index 模版看看。

如果你有一定的标准设计 (?) 基础,当你初看这个Main Index 的时候,你可能会有种奇怪的感觉,似乎很多东西是多余的 (至少以前我就这么想过),和我们平常做过的看过的不太一样,div 套 div,class 套 class,这是其一;“sidebar”也很“奇怪”,有很多的 "module"s,而每一个 "module" 又分别以不同的名字命名,象 "module-search","module-categories","module-archives" 等等。在你的博客页面上,分明这些 "module"s 看起来都是一个样子的嘛,何必如此罗嗦?(以后你还会觉得何止是罗嗦,而且...... )

暂时先别过多的去思考 :-)

我先把结论告诉你:正是这种“多余”,这种“罗嗦”( 确实比我还罗嗦 ) 使它的页面架构变得具有很大的 可调整 性和 可自定义 性。很大程度上满足设计者对页面的任意一个组件或单元进行调整和自定义设计。有时候你会觉得它其实“罗嗦”得还不够,你需要加入更多的元素和样式来满足你的设计,那当然没问题。

既然这些模版的架构设计如此合理,能使设计者很大程度上做到 自定义个性化,那设计或修改 MT 的样式就只要去碰一个文件了:Stylesheet !

看到这里,你可能会想:原来Movable Type 的个性化设计就是这么回事!

确实是这样的。但是 ......

世界上总有“爱好自由”的人 (比如我就是:// )。我凭什么要用你做好的模子?难道我用我自己的架构就不行?

MT当然也没有这么死板。你可以100%的抛开它的架构,建立你全新的HTML结构和Stylesheet,做出你想要达到的任何设计效果。

但是有一点是你无论如何不能抛弃并一定要了解的:那就是MT自己独特的标签 (?)。否则它确实会不客气了,不管你是谁。

所以,Movable Type 的个性化页面设计可以从两个方面入手:

一是保持MT的默认页面模版的结构而只对样式(Stylesheet)进行重新定义。

二是“另起炉灶”,结构和样式都完全按照你自己的爱好来设计。

两种方式说不上孰优孰劣,都各有长短。第一种方式你不用管结构,只需调整或设计样式 (最大的好处是你不用管MT的标签);第二种方式一切都是你自己设计,稍嫌麻烦但你可以享受设计的充分自由。

总的来讲,Movable Type 的模版设计以它独特的完整性可塑性单一性,使你在设计过程中能够最大程度的发挥,并感受到它的简单和方便。

(十足的广告嫌疑 ! )

通篇都是些抽象的概念或者让人觉得有点莫名其妙。但愿你不会这么想。

也但愿接下去的内容不会这么枯燥了。

[ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ]

加强SpamLookup的过滤

|

在Movable Type3.2中,SpamLookup是个非常有效的防垃圾评论和引用的插件,在默认设置下都挡住了绝大多数的垃圾。在我自己的系统中,有时候一天挡住几十到上百条垃圾。

但还是有些漏网的,虽然数量不多,也是件烦人的事。

按照Jay Allen的方法今天在"SpamLookup - Keyword Filters"中加入了这行关键词:

acroduke
Probaly you should read this
dx1.us
/online-?(casino|poker)/i
/(pacific|empire).?poker/i
/texas\S*hold\S*em/i

看看效果会怎样。

Annoying Old Guy说的这个办法暂时还没搞懂。大概是使用另外一个MT的插件AutoBan来完成的。

博客设计小感

| | Comments (2) | TrackBacks (0)

两次从头到尾的设计Movable Type页面,感触很多。整个网站的设计主要是Main Index 和 Individual Archive 两个模版的设计,完成了这两个差不多就完成了整个设计的90%。

Individual Archive 这个模版的设计是建立在Main Index模版的基础上的,但还不够,它还有不少独特的东西是前者没有的,那就是引用,评论和评论表单的设计。

直到今天我才看到有人收集了不少的博客评论评论表单的设计样式,做成了一个小展览。真是不错。

评论和评论表单是博客的一个重要部分,所以这部分的设计不能忽视。

之前也见过网站导航的收集陈列。有心人多。

修改 Movable Type 模版标签

| | Comments (0) | TrackBacks (0)

1. 在Movable Type 的 Main Index 默认模版中,每篇文章的开头都有个H2和H3, 那个H3是文章的标题,而之前的H2就是发布的时间。说说这个H2 :

<MTDateHeader>
<h2 class="date-header"><$MTEntryDate format="%x"$></h2>
</MTDateHeader>

这行标签是显示文章的发布时间的,但是如果同一天发布了一篇以上的文章,那这些文章就只会有一篇会显示时间,其余几篇没有显示时间的说明是同一天的文章。我在设计上个MT 页面时,因为把题头部分的时间放在了一个小图案里面,如果采用默认的标签,那有的文章上不出现图案和时间就显得整个页面难看了。

为了让每篇文章都有时间显示,我把上面那组代码改成:

<h2 class="date-header"><$MTEntryDate format="%x"$></h2>

也就是把围绕 H2 的那对标签去掉:

<MTDateHeader> 和 </MTDateHeader>

这样每篇文章的题头都有时间显示了。


2. 由于要在每篇文章的题头处显示该文章的所属归类,在默认模版中没有这项。不得已去问MT的客户服务,他们给了我几组代码,但一组是我要的,而且显示正确。

<MTEntryCategories>
<MTHasNoParentCategory><a href="<$MTCategoryArchiveLink$>"><$MTCategoryLabel$></a>
</MTHasNoParentCategory>
</MTEntryCategories>

这组标签显示该文章所属的所有顶级分类,不显示子分类,使页面看起来更干净。

每次去客服都能有满意的答复而且是答复的速度很快也很专业很客气。还有几次都是他们到我的服务器上亲自帮我弄。

我完成了新的设计

| | Comments (4) | TrackBacks (0)

以前一直是用MT的默认设计,也一直以来就想动手把我这个阵地改改样子,也好有个好心情.直到今天才差不多完成设计,虽然内容有的还没有填补上去.自己恭喜一下.

这是我第二次设计MT的样式,上次是给 "足彩博客" 做的,做的还算顺利,也很快,但这次我很费了点周折,多花了几倍的时间.首先我完全是用自己写的 HTML 和 CSS 来做的,大致上没有问题,外观上也和现在看到的这个样子一样.

但我在考虑最大程度的用MT默认的 HTML 标签 。我完全重来。直到这时才发现这些默认的 HTML 和 CSS 写的真好!最主要是非常灵活,可以让客户在这个基础上很大程度的自由设计。这也符合MT的观点:让博客设计标准化

我还没有全部完成,剩下的小东西以后慢慢修改。

今天应该喝两瓶嘉士伯。

Movable Type 3.3 beta

| | Comments (1) | TrackBacks (0)

大概在四天前我在我的测试博客上安装了Movable Type 3.3 beta,是测试版,还没有正式发布。感觉是有些改进,但我也没有什么惊喜。只是看了看效果,暂时还没有动心要升级,我不想什么beta。

具体改进的情况可以看 "What's new in Movable Type 3.3? "

About this Archive

This page is a archive of entries in the Movable Type category from June 2006.

Movable Type: October 2005 is the previous archive.

Movable Type: July 2006 is the next archive.

Find recent content on the main index or look in the archives to find all content.