网络建站知识发布于分享网站

当前位置:首页>>新闻中心>>CMS教程>>帝国cms教程

帝国CMS分页导航标签的优化改良

时间:2025-03-29 01:27:12    来源:    人气:0

一、什么是分页导航?
  当新闻内容较长时,如果将其全部展示在单个页面上,可能会让访问者感到阅读疲劳。因此,对一篇新闻进行合理的分页处理是一种较好的解决方案。
  所谓分页导航,是指为每一页设置一个合适的小标题并显示出来,类似于图书目录的功能。

二、如何使用分页导航?
  1、对新闻内容的要求:为了实现分页导航功能,需要在新闻的适当位置插入 标签。

  对于无需分页标题而仅简单分页的情况,可以这样写:


和高层有过密切接触的伍新木后来得知,国家发改委一主要领导评价以此为主题的申报材料,武汉“申新”主题概念模糊,频频更换核心思想,可谓用心良苦,但还需从国家高度、全局考虑。这位官员还特别强调,“武汉申报不可太着急,肯定要批的。” 
  
  在第三轮国家综合配套改革试点申请中,一直不见声色的武汉这次高调起来。另外,连续经历过四次“申新”失利,尤其邻市“成渝综改区”获批和“中部办”成立之后,武汉开始变得更加着急。
    

对于带有分页标题的情况,可以这样写:


和高层有过密切接触的伍新木后来得知,国家发改委一主要领导评价以此为主题的申报材料,武汉“申新”主题概念模糊,频频更换核心思想,可谓用心良苦,但还需从国家高度、全局考虑。这位官员还特别强调,“武汉申报不可太着急,肯定要批的。” 
  武汉着急了/
  在第三轮国家综合配套改革试点申请中,一直不见声色的武汉这次高调起来。另外,连续经历过四次“申新”失利,尤其邻市“成渝综改区”获批和“中部办”成立之后,武汉开始变得更加着急。
    

2、对模板的要求:需要在模板的适当位置使用

三、改进分页导航
  找到 e/class/t_functions.php 文件中的第 150 行左右,定位到 function sys_ShowTextPage 函数,根据需求用以下代码替换掉官方代码,重新生成后即可看到效果。

沿用官方的下拉列表,同时在标题前加上“第×页”,并在下拉列表外添加“文章导航”字样。


function sys_ShowTextPage($thispagenum,$dolink,$add,$filetype,$n_r){
        global $fun_r;
        if($thispagenum==1)
        {
                return "";
        }
        $page="";
        for($j=1;$j<=$thispagenum;$j++)
        {
                $k=$j-1;
            if($j==1)
                {
                $page.="<a href="".$dolink.$add[filename].$filetype."">".$j."</a>&nbsp;";
                        $title=$add[title];
                        $plink=$add[filename].$filetype;
                }
                else
                {
                        $page.="<a href="".$dolink.$add[filename]."_".$j.$filetype."">".$j."</a>&nbsp;";
                        $plink=$add[filename]."_".$j.$filetype;
                        $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.")";}
                }
                $titleselect.="<option value="".$dolink.$plink."?".$j."">"."第".$j."页:".$title."</option>";
        }
        $return_r['titleselect']="文章导航:<select name=select onchange="self.location.href=this.options[this.selectedIndex].value">".$titleselect."</select>";
        //去掉最后一个&nbsp;
        $return_r['page']="[prepage]".substr($page,0,strlen($page)-6)."[nextpage]";
        return $return_r;
}
    

不使用下拉列表,而是平铺导航标题,并在标题前加上“第×页”,同时在导航前添加“文章导航”字样。


function sys_ShowTextPage($thispagenum,$dolink,$add,$filetype,$n_r){
        global $fun_r;
        if($thispagenum==1)
        {
                return "";
        }
        $page="";
        for($j=1;$j<=$thispagenum;$j++)
        {
                $k=$j-1;
            if($j==1)
                {
                $page.="<a href="".$dolink.$add[filename].$filetype."">".$j."</a>&nbsp;";
                        $title=$add[title];
                        $plink=$add[filename].$filetype;
                }
                else
                {
                        $page.="<a href="".$dolink.$add[filename]."_".$j.$filetype."">".$j."</a>&nbsp;";
                        $plink=$add[filename]."_".$j.$filetype;
                        $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.")";}
                }
                $titleselect.="·<a href="".$dolink.$plink."?".$j."">"."第".$j."页:".$title."</a><br>";
        }
        $return_r['titleselect']="文章导航:<br>".$titleselect;
        //去掉最后一个&nbsp;
        $return_r['page']="[prepage]".substr($page,0,strlen($page)-6)."[nextpage]";
        return $return_r;
}
    

四、是否可以在模板中直接写入“文章导航”四个字?
  可以,但如果新闻只有一页且未使用导航标签,则生成的页面仍会显示这四个字。

五、如何在同一新闻内实现两种导航方式?
  希望达到的效果是,在正文上方显示平铺式导航,而在正文下方显示下拉列表式导航。这样的设计能提升用户体验。虽然尝试通过标签配合自定义函数实现这一目标,但尚未成功,期待高手指点。

相关文章

  • 帝国CMS留言板显示IP的方法

    帝国CMS留言板显示IP的方法

    在留言板和后台留言审核面板中显示留言者的IP地址,是增强网站安全性和管理效率的重要功能。通过记录和展示IP地址,管理员可以更方便地追踪留言来源,确保内容的真实性和合法性。本文将详细介绍如何实现这一功能,并优化搜索引擎排名(SEO)。 首先,我们需要了解如何在代码中正确插入IP地址的显示逻辑。以下是...
    2025-03-29
  • 帝国显示IP问题的解决方案

    帝国显示IP问题的解决方案

    在网站开发中,保护用户隐私是一个重要的考虑因素。当您在分类信息内容页添加了发布人的IP显示功能时,可能会面临如何隐藏IP地址的部分数字以保护用户隐私的问题。本文将介绍一种方法,让您能够像处理评论中的IP地址一样,将IP地址的最后一位数字替换为“*”。 为了实现这一功能,您可以使用PHP代码对IP地...
    2025-03-29
  • 帝国系统生成完整GOOGLE SITEMAP的方法

    帝国系统生成完整GOOGLE SITEMAP的方法

    创建符合SEO标准的Google Sitemap对于提高网站在搜索引擎中的可见性至关重要。以下是一篇经过改写的文章,详细介绍了如何利用栏目分别创建不同的Sitemap,并确保其符合Google的要求。 技术整理:24mp3技术支持:wm_chief, hicode 制作Google Sitema...
    2025-03-29
  • 帝国CMS教程:使用灵动标签制作友情连接

    帝国CMS教程:使用灵动标签制作友情连接

    在构建动态网站时,使用循环结构来展示数据是一种常见的做法。例如,在EmpireCMS中,我们可以利用[e:loop]标签来实现这一功能。下面是一篇关于如何使用[e:loop]标签生成友情链接列表的文章,旨在优化搜索引擎排名(SEO),同时确保代码的可读性和功能性。 在EmpireCMS中,[e:l...
    2025-03-29

公众号