pbootcms详情页链接改为顶级栏目url(模型url名称)
实现效果
默认方式:栏目abc.com/news/gsxw/ 详情abc.com/news/gsxw/id.html(id为内容的id数字)
实现目标:栏目abc.com/news/gsxw/ 详情abc.com/news/id.html
实现方式
教程涵盖以下四个部分:
1、关闭模型URL名称与栏目URL名称冲突检测,模型url名称设置成需要作为详情url的父级名称(每个模型url名称需唯一)
2、关闭栏目URL名称与模型URL名称冲突检测
3、修改详情URL生成规则为模型url名称+id
4、修改前台页面url判断实现正常打开
修改步骤:
1、打开\apps\admin\controller\content\ModelController.php,搜索“模型URL名称与栏目URL名称冲突”注释掉此提示的判断。
注意:有两处判断都需要注释掉
2、打开\apps\admin\controller\content\ContentSortController.php,搜索“URL名称与模型URL名称冲突”注释掉此提示的判断。
注意:有两处判断都需要注释掉
3、打开\apps\home\controller\ParserController.php,搜索“$sortfilename && $contentfilename”,把以下代码:
if ($sortfilename && $contentfilename) {
$link = Url::home($sortfilename . '/' . $contentfilename, true);
} elseif ($sortfilename) {
$link = Url::home($sortfilename . '/' . $id, true);
} elseif ($contentfilename) {
$link = Url::home($urlname . $url_break_char . $scode . '/' . $contentfilename, true);
} else {
$link = Url::home($urlname . $url_break_char . $scode . '/' . $id, true);
}
修改成:
//详情url改为模型url名称+id @pbhtml
if ($sortfilename && $contentfilename) {
$link = Url::home($urlname . '/' . $contentfilename, true);
} elseif ($sortfilename) {
$link = Url::home($urlname . '/' . $id, true);
} elseif ($contentfilename) {
$link = Url::home($urlname . '/' . $contentfilename, true);
} else {
$link = Url::home($urlname . '/' . $id, true);
}
4、打开\apps\home\controller\IndexController.php
①搜索找到:
if ((! ! $sort = $this->model->getSort($part1)) && ! ! $data = $this->model->getContent($part2)) {
修改成:
if (((! ! $model = $this->model->checkModelUrlname($part1)) || (!! $sort = $this->model->getSort($part1))) && ! ! $data = $this->model->getContent($part2)) {
②搜索找到:
if ($scode != $data->scode) {
修改成:
if ($model->urlname != $data->urlname) {
以上仅供参考,如需更多url定制可联系本站客服获取服务。
文章标题:pbootcms详情页链接改为顶级栏目url(模型url名称)
文章版权:PB模板网 (www.pbhtml.com) 所发布的内容,部分为原创文章,转载请注明来源,网络转载文章如有侵权请联系我们!
本文最后更新发布于
2023-03-17 16:57:07
,某些文章具有时效性,若有错误或已失效,请在下方留言或联系客服:pbhtml@qq.com