当前位置:主页 > 经验分享 > CMS建站 >

帝国CMS中文章分页如何实现分页标题导航?
栏目分类:CMS建站   发布日期:2016-11-16  来源:趣素材网 - www.pic83.com 浏览次数:

问:我的网站是使用的帝国CMS做的,我现在想实现的是文章内容页分页后在文章前面或者文章后面加一个分页导航,即如: 本文导航: 第1页:第一页的标题 第2页:第二页的子标题 类似PHPcms中这样的内容页分页标题导航: 帝国CMS自带的标签可以实现,但是他是下

问:我的网站是使用的帝国CMS做的,我现在想实现的是文章内容页分页后在文章前面或者文章后面加一个分页导航,即如:
本文导航:
第1页:第一页的标题
第2页:第二页的子标题
类似PHPcms中这样的内容页分页标题导航:

帝国CMS自带的标签可以实现,但是他是下拉式的跳转菜单,不是文本链接SEO效果可能不太好,请问下,调用帝国CMS什么标签可以实现呢?或者告诉我如何修改实现,谢谢!

答:我刚看了下,要实现内容页分页标题导航,貌似自带的标签只有通过 实现的,我仿照这个标签的实现原理,增加了一个[!--title.pagetitles--]分页标题导航标签 实现了你的需求,不过需要修改/e/class/目录下的functions.php文件和t_functions.php文件。(版本帝国 CMSv6.5版)
截图如下:



下面是详细的实现帝国CMS文章分页标题导航的修改方法:
第一步:在t_functions.php中的第241行后面添加如下代码:(该函数用于提取文章中的分页标题并生成链接)

 

//返回内容分页标题导航
function sys_ShowTextPageTitles($thispagenum,$dolink,$add,$filetype,$n_r){
if($thispagenum==1)
{
return '';
}
$pagetitles='';
for($j=1;$j<=$thispagenum;$j++)
{
if($j==1)
{
$title=$add[title];
$plink=$add[filename].$filetype;
}
else
{
$k=$j-1;
$ti_r=explode('[/!--empirenews.page--]',$n_r[$k]);
if(count($ti_r)>=2&&$ti_r[0])
{
$title=$ti_r[0];
}
else
{
$title=$add[title].'('.$j.')';
}
$plink=$add[filename].'_'.$j.$filetype;
}
$pagetitles.='<li>第'.$j.'页:<a href="'.$dolink.$plink.'" id="'.$j.'">'.$title.'</a></li>';
}
return $pagetitles;
}
第二步:在functions.php文件的第2293行左右查找如下代码:
for($j=1;$j<=$thispagenum;$j++)

在其前面一行添加如下代码:

//分页标题导航-落叶添加
if(strstr($newstemptext,'[!--title.pagetitles--]'))
{
$pagetitles=sys_ShowTextPageTitles($thispagenum,$dolink,$add,$filetype,$n_r);
//echo $pagetitles;exit;
}

第三步:在functions.php文件中的第2229行左右查找如下代码:
$titleselect=str_replace("?".$j."">","?".$j."" selected>",$dotitleselect);

在其后面一行添加如下代码:

$pagetitles=str_replace('class="page_current"','',$pagetitles);
$pagetitles=str_replace('id="'.$j.'"','id="'.$j.'" class="page_current"',$pagetitles);//落叶添加

第四步:在functions.php文件中的第2362行左右查找如下代码:
$string=str_replace('',$titleselect,$string);

在其后添加如下代码:
$string=str_replace('[!--title.pagetitles--]',$pagetitles,$string);//站长知道-落叶添加

然后即可在内容页模板中使用[!--title.pagetitles--]标签调用文章分页导航,并在style.css文件中添加当前页标题css,如.page_current{color:#CC3300;}。

上面修改,适用于内容页生成静态的,不生成静态的,在e/action/ShowInfo.php文件中修改,这时不多说,估计不生成静态的人比较少

4月12号补充:对于帝国11号发布的帝国CMS6.6版依然适用
如果你的帝国CMS的文件没有自己改动过,可以直接使用下面改好的文件替换,注意备份原来的functions.php和t_functions.php文件:
http://www.mjjer.com/zhidao/uploadfile/ly_upload/v6.5.rar
http://www.mjjer.com/zhidao/uploadfile/ly_upload/v6.6.rar

相关热词:

Copyright © 2010-2017 www.pic83.com. 趣素材网 版权所有 Power by DedeCms   粤ICP备12084032号-5  壁纸设计 | 酷站欣赏 | 绘画艺术 | 平面设计 | 交互设计 | 3D艺术 | 摄影艺术 |
原创作品 经验分享 设计素材 佳作欣赏 装饰设计 设计学院 学服务器 系统下载 电脑教程