对于phpcms2008的url规则,我有好一段时间没怎么弄明白,只知表向而不知内在原理的那种.但通过做过几个站之后,突然恍然大悟:原来就是这样啊.

  我的理解就是url规则就是生成静态的目录格式:比如是一层的 还是二层多层目录啊,目录都以什么命名啊这些.通过这样理解我就很清楚了,而且自然而然的知道怎么改了.

记住下面一些变量分别代表什么意思,就什么都好办了.

{$catid}栏目id。例:形如1,10等

{$categorydir}栏目目录树(相对于phpcms安装目录)。例:如为一级目录则为/news/,二级目录为/news/china/,三级目录为/news/inter/usa

{$catdir}栏目目录。例:如为一级目录则为/news/,二级目录为/china/,三级目录为/usa/

{$year}   {$month}   {$day} 年月日。文章发布时间的年,月,日。

{$page}页码。文章分页时的页码。

{$fileext}静态页扩展名。为网站配置->生成的扩展名所定义。

{$contentid}文章id。

 

{$typeid}类别id ,{$typedir}类别目录,{$filename}专题名称,{$specialid}专题id

然后将这些变量在规则里面按不同需求组合就可以了,生成下看下到底是什么目录结构,生成不成功说明变量写错了.

一个例子:

生成像/news/article_1_2.html的这样的结构,规则如下:

{$catdir}/article_{$contentid}.{$fileext}|{$catdir}/article_{$contentid}_{$page}.{$fileext}

如选目录树,则{$catdir}改为{$category}

除了系统写好的规则之外,还可以新建自己需要的url规则,其实系统的够用了,就改改也能用.

还有一种不是生成静态的,而是动态的像这种

list.php?catid-{$catid}.html|list.php?catid-{$catid}/page-{$page}.html

出来的就是这样list.php?catid-1/page-2.html  和上面道理一样的.

现在大部分网站都不喜欢动态的显示出来,所以都会生成静态的,这就是传说中的伪静态吧,哈哈.