小修改让V9实现非常有用的自定义HTML功能

发表于2014-10-17 10:33:00来源于PHPCMS官方论坛

次点击[] [] [] [打印] [关闭窗口] [评论]

欢迎大家加入创想工作室QQ群 网络瘫痪上不了网?电脑出故障?找破解软件?加入创想工作室QQ群,向大神求助,一步解决问题!QQ群号码:326338868[点此获取更多QQ群]
用过2008版的网友都知道,内容模型在发布内容的时候可以自定义生成的HTML文件名,这个功能对于SEO来说非常有好处,但是到了V9之后却很遗憾,这个功能却没有了,现在你只要对V9进行一个小小的修改即可令V9重新拥有08版的自定义HTML文件名的功能,操作方法如下:
 

1、修改你需要设置的模型,添加一个字段,配置如下

 
phpcms增加自定义文件名功能
 

2、打开/phpcms/modules/content/create_html.php,找到代码

 
$urls = $this->url->show($r['id'], '', $r['catid'],$r['inputtime']);
 
批量替换成下面代码(共三处)
 
$urls = $this->url->show($r['id'], '', $r['catid'],$r['inputtime'], $r['prefix']);
 

3、打开/phpcms/modules/content/classes/url.class.php,找到代码

 
$day = date('d',$time);
 
在其下方插入
 
$tmp_id = $content_ishtml && $prefix ? $prefix : $id; //增加自定义HTML文件名支持
 
找到
 
$urls = str_replace(array('{$categorydir}','{$catdir}','{$year}','{$month}','{$day}','{$catid}','{$id}',
'{$page}'),array($categorydir,$catdir,$year,$month,$day,$catid,$id,$page),$urlrule);
 
修改为
 
$urls = str_replace(array('{$categorydir}','{$catdir}','{$year}','{$month}','{$day}','{$catid}','{$id}',
'{$page}'),array($categorydir,$catdir,$year,$month,$day,$catid,$tmp_id,$page),$urlrule);
 
添加文章,修改文文章试试,发现在批量生成的时候获取不到{$prefix}的数据,郁闷!
 
分析后找出问题原因:V9系统在批量生成的时候分两个,第一个是内容管理里下面有个“批量生成HTML”;第二个是发布管理的“批量更新内容”他又包含了先择模型生成和不选择模型生成。
 
所以还要改三个地方!
 
打开 phpcms/modules/content/create_html.php 文件,查找:
 
$urls = $this->url->show($r['id'], '', $r['catid'],$r['inputtime']);
 
替换成下面代码(一共有三处要替换)
 
$urls = $this->url->show($r['id'], '', $r['catid'],$r['inputtime'],$r['prefix']);
 
现在就OK了,又发现在删除文章的时候会将所有栏目下的网页全部删除的,所以还需要个步骤。
 
打开 phpcmsmodulescontentcontent.php 文件,查找 (约297行):
 
$urls = $this->url->show($id, 0, $r['catid'], $r['inputtime']);
 
替换为以下代码
 
$urls = $this->url->show($id, 0, $r['catid'], $r['inputtime'], $r['prefix']);
 
OK了,非常完美了,去试试吧!
 
文章来源:http://bbs.phpcms.cn/thread-258203-1-1.html、http://bbs.phpcms.cn/thread-251105-1-1.html

© copyright 2002-2024, 22BA.COM All Rights Reserved

网站备案号:粤ICP备19114910号

ChuangXiang Design Studio - WebDesign & Internet Marketing

关于我们业务范围联系我们开心一刻网站地图

QQ群一:326338868QQ群二:78712271

QQ群三:193078177

邮箱:news@22ba.com

地址:深圳市福田区金田路现代国际大厦2606