自定义生成HTML文件名对于SEO优化非常有好处,不过phpcms V9版本没有这个功能,但是可以修改,下面是方法。
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的形式。