phpcms2008下的自定义url规则教程

所属分类: CMS教程 / phpcms 阅读数: 1525
收藏 0 赞 0 分享
一般情况下,需要先增加一个url规则。系统设置 > 相关设置>URL规则管理>添加URL规则
如图所示:

内容页一定要命名为show,要不在新建栏目的时候没有这个选项。如果如下操作那么在新建栏目的时候会看到如下:

那么我们这样做就成功了。

下面是其它网友整理的,一些参数说明:

首先要建立自己的URL规则,首先的理解一些定义和变量含义。首先进入URL规则管理这里,你会看到如下内容(进入方法:“系统设置”-》“RUL规则管理”—》“管理RUL规则”)

在PHPCMS2008中是这样定义的
一、模块
   模块分:PHPCMS、问吧、专题、等等
    也就是说你下一步建立的RUL规则是要应用在哪个模块上,那你就要选者哪个。在这里特别要提示一下的是,你在建立URL规则的时候不要选哪个“不限”。本然按照PHPCMS当初的意思是可以应用与任何模块,但是我实际操作当中,发现如果选者了不限,那你在其他模型里面是看不到你选者的URL规则。

二、名称
   名称这里PHPCMS分 category(列表页),show(详细页),htmlshow(问吧详细页),htmlcategory(问吧列表页)。
   这里要注意一点,假如你是现在定义的URL规则是想应用与图片模块的列表页,那你这里URL名称一定要写category,否者的话,你在模块设置这里是看不到你定义的URL规则。

三、HTML
   你在定义URL规则的时候,有个可选项目,静态URL规则:生成静态页面调用的URL规则,你选者“是”或者“否”,意思就是如果选者是,那你这条规则就是生成静态页面用的,相反就选否。

四、URL示例
   这里就是些一些你想要的URL形式,你可以随便写,只要你自己认得这是你这一条规则的形式。但是不能不写啊,否者你在模型设置里面,又会发现,怎么看不到我定义的规则名称,这个示例可是当名称一样用的哦。

在定义RUL规则之前,你首先要理解上面的四点,然后接下来要理解那些变量的含义了。

1、{$parentdir}{$catdir} ---含义:当前栏目目录名称;
2、{$catid} ----含义:栏目ID号;
3、.{$fileext}---含义:.htm(注意这里前面要加个“."号l ;
4、{$year} ----含义:年;
5、{$month} --含义:月;
6、{$day} -----含义:日;

 

更加详细的如下:

 

根据后台 系统设置->相关设置->URL规则管理所列的URL规则编写。

以下所用示例,请灵活修改。

示例栏目:

新闻news

|___国内china

|___国际inter

   |___美国usa

1、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

问吧,对于问吧,最好不要修改了

{$action}操作

2、URL规则数据库字段说明
模块:所属模块,目前有问吧,专题,phpcms。

URL规则名称:这个名称应该为URL规则应用的范围,如用于栏目页(目录),内容页等。一般会用到show(内容页),category(栏目页)

生成Html:是否生成html。关系到所写的URL规则。

URL规则/URL示例:这个就是本文重点要讲的了

3、应用示例
特别说明:定义url时,应为分页网址加上{$page}变量。两条规则用|隔开。

(1)官方演示

{$catdir}/index.{$fileext}|{$catdir}/{$page}.{$fileext}

{$categorydir}/{$year}/{$month}{$day}/{$contentid}.{$fileext}|{$categorydir}/{$year}/{$month}{$day}/{$contentid}_{$page}.{$fileext}

(2)一个例子

建立形如/news/article_1_2.html的规则

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

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

(3)扩展功能(正式版未测试)

定义为动态时,所以栏目、内容页都为phpcms目录下/list.php?,/show?等形式,如果想让url规则为/news/show.php?id=,/news/index.php这个要怎么操作呢?

首先想到的是定义url规则,如

栏目页{$catdir}/index.php|{$catdir}/index.php?page={$page}

内容页{$catdir}/show.php?contentid={$contentid}|{$catdir}/show.php?contentid={$contentid}&page={$page}

定义完之后,问题来了,所建的目录下并没有index.php和show.php文件,怎么办?

把list.php复制到相应目录下,更名为index.php,show.php也做如上操作,这两个文件都在phpcms的目录里。

这时再看已经输入的内容,会提示出错,路径错误,改show.php第一句为

require ‘../include/common.inc.php’; 这个是根据一级目录改的

下面还有几个require,相应的改动一下就行了,我没改,也没有报错。改完之后再浏览(在后台,点文章标题)就可以打开了。

修改复制进去的index.php

第一句修改同上。因为自定义的URL规则是不带catid参数的,所以在$catid = intval($catid);改为$catid = 5(这里是你所要改的栏目的id,在栏目管理可以看到)。这时就可以看到了。

更多精彩内容其他人还在看

PHPCMS V9 定时发布文章的实现方法

今天和大家分享下 PHPCMS V9 文章定时发布的方法,定时发布文章可以做到预约发布、自动发布,方便我们在忙的时候更新文章,保证搜索引擎的收录
收藏 0 赞 0 分享

phpcms v9站内外搜索代码分享

站内外搜索对一个网站有很重要的意义,接下来为大家介绍下phpcms v9实现站内外搜索的代码,感兴趣的朋友可以参考下哈
收藏 0 赞 0 分享

Phpcms v9 栏目列表选择性调用数据具体方法

在PC v9栏目列表中调用出了指定文章的内容,今天介绍下在栏目数据调用中从指定行数开始,比如从第2条或第N条开始调用,感兴趣的朋友可以参考下
收藏 0 赞 0 分享

PHPCMS V9 Ckeditor编辑器添加排版功能实现介绍

v9使用的Ckeditor编辑器,在使用过程中有些不尽人意的地方,接下来为大家介绍下我,改动几个地方,让Ckeditor编辑更加实用一些,感兴趣的朋友可以参考下哈,希望可以帮助到你
收藏 0 赞 0 分享

PHPCMS V9评论模块伪静态与TAG模块伪静态设置

本文为大家介绍下PHPCMS V9评论模块伪静态与TAG模块伪静态设置,感兴趣的朋友可以参考下哈,希望对你学习PHPCMS V9有所帮助
收藏 0 赞 0 分享

phpcms 的sso通信失败的解决和思路

朋友的phpcms 在sso 登陆设置中,出现通信失败,最终调试发现,服务器本机linux,无法访问本身域名的ip
收藏 0 赞 0 分享

关于phpcms2008 内部递增标变量 $n 使用时的注意事项

有一个递增的内部变量 $n,它是从1开始逐渐递增的,如果{$n}则表示具体的值,下面为大家介绍下关于phpcms2008 内部递增标变量 $n 的注意事项
收藏 0 赞 0 分享

PHPCMS V9跨站调用推荐位出现URL连接为空问题的解决方法

如果你在使用PHPCMS V9的时候需要在不同的站点之间调用推荐位可能会出现链接的URL为空的情况,下面是具体的解决方法,有类似问题的朋友可以参考下哈
收藏 0 赞 0 分享

Phpcms V9网站从本地上传到服务器需要修改的地方小结

网站在本地做好后要迁移到服务器上;网站在发展的过程中,很可能多次的修改域名。那么在Phpcms V9中我们要怎么进行设置呢
收藏 0 赞 0 分享

phpcms 读不到缓存 页面空白的解决方法

网站在服务器上运行正常,弄到我电脑上进入网站后台,更新缓存页面空白,访问首页还是空白。调试发现是在include/common.inc.php中执行到下面不执行了
收藏 0 赞 0 分享
查看更多