• 专注于网站建设,网络推广,关键词优化,SEO优化,专业的网站建设开发团队!

PHPCMS V9网址生成优化:内容页HTML文件名称自定义

2015-06-13 16:00:14   来源:叶景网络
    内容页HTML文件名称自定义技巧。
    下面将一步一步来修改程序文件,一共涉及到model.sql、url.class.php、html.class.php这三个文件,并抓图做演示,最后提供所修改的文档下载!
    一、修改model.sql
    打开 phpcms\modules\content\fields\model.sql,找到:
    `updatetime` int(10) unsigned NOT NULL default '0',
    在下面增加代码:
    `prefix` char(20) NOT NULL default '',
    并在文件的最后一行增加一下代码:
    INSERT INTO `$table_model_field` (`modelid`, `siteid`, `field`, `name`, `tips`, `css`, `minlength`, `maxlength`, `pattern`, `errortips`, `formtype`, `setting`, `formattribute`, `unsetgroupids`, `unsetroleids`, `iscore`, `issystem`, `isunique`, `isbase`, `issearch`, `isadd`, `isfulltext`, `isposition`, `listorder`, `disabled`, `isomnipotent`) VALUES($modelid, $siteid, 'prefix', 'html文件名', '请输入生成的HTML文件名,为空将系统默认。', '', 0, 20, '/    [0-9a-z]+$/i', '', 'text', 'array (\n  ''size'' => ''20'',\n  ''defaultvalue'' => '''',\n  ''ispassword'' => ''0'',\n)', '', '', '', 0, 1, 0, 0, 0, 0, 0, 0, 56, 0, 0);
    二、修改url.class.php
    打开 phpcms\modules\content\classes\url.class.php,找到68行的代码:
    $day = date('d',$time);
    在下面增加一下代码:
    if($content_ishtml) {
    if($prefix) {
    $cid = $id;
    $id = $prefix;
    }
    }
    并且,找到下面这一段代码:
    //生成静态 ,在添加文章的时候,同时生成静态,不在批量更新URL处调用
    if($content_ishtml && $data) {
    $data['id'] = $id;
    $url_arr['content_ishtml'] = 1;
    $url_arr['data'] = $data;
    }
    修改第二行$data['id'] = $id; 为
    $data['id'] = $cid;
    下一页,将修改第三个文件html.class.php,以及新增模型字段,并提供本文涉及到修改的文件下载,精彩下一页!
    三、修改html.class.php
    打开phpcms\modules\content\classes\html.class.php,找到代码:
    $pageurls[$i] = $this->url->show($id, $i, $catid, $data['inputtime'],'','','edit',$upgrade);
    修改为:
    $pageurls[$i] = $this->url->show($id, $i, $catid, $data['inputtime'],$data['prefix'],'','edit',$upgrade);
    到这里,修改的3个文件基本完成,需要注意的是:注意使用英文半角的引号和分号,以免产生错误!
    四、模型添加prefix字段,让原有的模型显示自定义html文件名的编辑框
    可以看出,在上面的修改中,已经定义了一个字段prefix当作html的文件名,但是prefix默认是没有数值的,于是需要在模型自定义字段中添加一个字段:prefix,在发表内容的时候填入自定义的html名称。
    具体位置:后台》内容》模型管理》文章模型(也可以是其他模型)》字段管理,添加字段:
    字段类型:单行文本,作为主表字段
    字段名:prefix
    字段别名:html文件名
    字段提示:请输入生成的HTML文件名,为空将系统默认。
    文本框长度:20
    数据校验正则:/    [0-9a-z]+$/i
    字符长度取值范围:0 20
    值唯一:否
    以下全选否
    备注说明:关于“数据校验正则”这一点,可以为空,这样不限定输入的自定义html名称类型,这样可以输入下划线,中线,不然只能输入字母和数字了。比如http://www.tongfangmid.com/products/n7_jingdian.html,就需要输入下划线,那么就设置“数据校验正则”为空就好。

叶景网络,网络推广,网站建设
特别推荐RECOMMEND
搜索引擎网站关键词seo优化的意义
视频推广怎么做
网站seo优化怎么做关键词排上首页?
SEO介绍什么叫搜索引擎网站关键词优化
seo优化怎样做提升关键词排名
热点图文Hot
discuz插件开发的入门篇 discuz插件开发的入
彻底解决关于dedecms留言板的安装问题 彻底解决关于dedecm
DiscuzX2.5登录无法同步登录到PHPCMS v9解决办法 DiscuzX2.5登录无法
discuz X2.5安装手动选择ucenter时出错问题解决 discuz X2.5安装手
关注排行RANKING
1

discuz插件开发的入门篇

discuz插件开发的入门篇 在config config_global php 文件里设置$_config[ plugindeveloper ] = ...

2

彻底解决关于dedecms留言板的安装问题

彻底解决关于dedecms留言板的安装问题 先前使用dedecms5 5做的网站在服务器上运行两年了,某天突然想给网站加上个留言板模块...

3

DiscuzX2.5登录无法同步登录到PHPCM...

DiscuzX2.5登录无法同步登录到PHPCMS v9解决办法 叶景网络(www cngxit com),致力于互联网品牌建设与网络营销,专业领...

4

discuz X2.5安装手动选择ucenter时...

discuz X2.5安装手动选择ucenter时出错问题解决 discuz X2 5安装时想自定义选择ucenter时出错,因为discuz X2 5中也有一个uc_server...

5

Discuz百万级数据的压力测试实现(...

Discuz百万级数据的压力测试实现(创建海量数据库) 由于开发的需求,对discuz创建海量数据库来进行压力测试,以下是对discuz百万级数据的压...

6

discuzX2.5安装不成功,到了正在安装...

discuzX2.5安装不成功,到了正在安装附加数据就不动了 叶景网络(www cngxit com),致力于互联网品牌建设与网络营销,专业领域包括网...

7

Discuz!中分表的实现方法

Discuz!中分表的实现方法 论坛系统中的帖子表,是访问量大很大的表,为了保证数据的快速提取返回给用户,...

8

什么情况下选用hdwiki(for discuz)?

什么情况下选用hdwiki(for discuz)? 如果您已经有了一个dz论坛,并且还想要一个自己专业的知识库,建个百科频道。建...

9

让hdwiki使用discuz的登录和注册

让hdwiki使用discuz的登录和注册 hdwiki是国内开源wki结构简单,安装使用还是很方便的。discuz是使用最多的开源BBS。