迅睿CMS添加文章模板自定义URL
- 时间:
- 浏览:230
- 来源:无双科技
1、首先在文章模块添加自定义URL字段 diyurl
2.设置共享栏目URL规则
前面这两项保存后,就修改后台代码 /config/rewrite.php规则修改如下
"([a-z0-9 \-\_]+)\/([0-9]+)" => "index.php?c=category&dir=$1&page=$2", //【共享栏目测试规则】模块栏目列表(分页)({dirname}/{page}/)
"([a-z0-9 \-\_]+)" => "index.php?c=category&dir=$1", //【共享栏目测试规则】模块栏目列表({dirname}/)
"([a-z0-9]+)\/(.+).shtml" => "index.php?c=show&field=diyurl&value=$1&page=$2", //【共享栏目测试规则】模块内容页(分页)({id}/{page}.shtml)
"([a-z0-9]+).shtml" => "index.php?c=show&diyurl=$1", //【共享栏目测试规则】模块内容页({id}.shtml
进入找到\Core\Controllers\Show.php,修改如下代码
$diyurl = \Phpcmf\Service::L('input')->get('diyurl');if(empty($diyurl)){// 共享模块通过id查找内容$id = (int)\Phpcmf\Service::L('input')->get('id');$row = \Phpcmf\Service::M()->table(SITE_ID.'_share_index')->get($id);}else{$row = \Phpcmf\Service::M()->table(SITE_ID.'_share_index')->where('diyurl', $diyurl)->get_all();$row=$row[0];}if (!$row['mid']) { exit($this->goto_404_page(dr_lang('无法通过id找到共享模块的模块目录'))); }// 初始化模块$this->_module_init($row['mid']);// 调用内容方法$this->_Show($row['id'], null, max(1, (int)\Phpcmf\Service::L('input')->get('page')));
$rt = $this->table($this->mysharetable.'_index')->replace(['mid' => $this->dirname,'diyurl' => $data[1]['diyurl']]);
再进入 \dayrui\Fcms\Model\Content.php 第666行,修改如下
$rt = $this->table($this->mysharetable.'_index')->replace(['mid' => $this->dirname,'diyurl' => $data[1]['diyurl']]);
保存,即可完成自定义URL
最后记得再修改\dayrui\Fcms\Model\Table.php 第493行 修改如下:
$this->db->simpleQuery(dr_format_create_sql("
CREATE TABLE IF NOT EXISTS `".$this->dbprefix($siteid.'_share_index')."` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`mid` varchar(20) NOT NULL COMMENT '模块目录',
`diyurl` varchar(200) NOT NULL COMMENT '自定义URL',
PRIMARY KEY (`id`),
KEY `mid` (`mid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='共享模块内容索引表';
"));
猜你喜欢