Six apart 读到一篇文章,介绍了MT 3.2 版本支持的一项新功能:Entry basename control,在3.2 版本之前,MT不支持手动命名Entries 发布的URL ,是根据Title 自动生成的,如果是英文标题,会将其转化为小写,空格转化为下划线,并自动截断。如果是中文标题,则汉字部分被字母填充,类似于下面这样:

mt_oeoeoeentrie.html

在3.2 版本中提供了额外的Field 对URL 进行手动指定,这样的URL 就更友好。不过我一直使用3.14 版本,并通过变通的方法实现了URL手动命名。

为此需要占用Entries 编辑界面中的Extended Entry 项,并在Individual Archives 中进行设置。

WEBLOG CONFIG -> Archives Files -> Archives

选中Individual 的复选框,在Archives File Template 编辑框中设置:

<MTSubCategoryPath>/<MTIfNonEmpty tag="MTEntryMore"><$MTEntryMore dirify="1"$><MTElse><MTEntryDate format="%Y%m%d%H%M"></MTElse></MTIfNonEmpty>.html

<MTSubCategoryPath> 标签相当于:

<MTParentCategories glue="/"><MTCategoryLabel dirify="1"></MTParentCategories>

可将当前项所属所有父分类按层级,由"/" 进行连接,返回按文件路径规则格式化的字符串。

MTEntryMore 标签从Extended Entry 项中提取URL 命名,如果没有指定,则采用发布的日期命名URL 。

例如,我在本篇Entry 的Extended Entry 中指定:

mt entry basename control

则生成如下URL(本篇所属分类:Study Notes -> Web):

study_notes/web/mt_entry_basename_control.html
当然,如果你使用或者升级到3.2 版本,就不用费这么大的周折了.

Post a comment

mail.png


相似文章|Related Entries

最近更新|Recent Entries

不定期更新|Handy Entries

相似标签|Related Tags

MT
css (3)
Editlet (5)
EnhancedEntryEditing (2)
export (1)
feed (1)
import (2)
Javascript (5)
msn spaces (2)
MySQL (3)
Password (2)
plugin (7)
refine (2)
rss (2)
Tag (2)
TinyMCE (4)
upgrade (4)
widget (1)
wysiwyg (6)
模板 (2)
重构 (1)

分类栏目|Categories

按月归档|By Month

2008
01
2007
12
10
07
06
05
04
03
02
01
2006
12
11
10
09
08
07
06
05
04
03
02
01
2005
11
10
09
08
07
04
03
2004
12
11
10
09
08
07
06
05
04
03
02
01
2003
12
10
09
08
06
2002
09
08
04
03
02
2001
12
09
07
06
05

站内链接|Site Links

Powered by
Movable Type 3.34