phpcms v9自定义HTML文件名
用过织梦、Wordpress、Zblog等程序的网友都知道,发布内容的时候可以自定义生成的HTML文件名,这个功能对于SEO来说非常有好 处,但是到了V9之后却很遗憾, 这个功能却没有了,现在你只要对V9进行一个小小的修改即可令V9拥有自定义HTML文件名的功能,操作方法如下:
1、修改你需要设置的模型,添加一个字段,配置如下:
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']);
共三处代码,目的是让生成的html页面自定义文件名。
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);
到这里,生成HTML页面的名称就是自定义的了。后期自己配置一下URL规则,仍然使用id的形式。