国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > DedeCMS > dedecms:如何获取分页标题

dedecms:如何获取分页标题

来源:程序员人生   发布时间:2013-11-30 03:51:22 阅读次数:2346次

  建站学院(LieHuo.Net)讯 dedecms中不能单独获取页面的分页标题。比如一篇文章有10页。那么这是10页的标题完全一样。个人觉得不利于SEO。如果能够每页的标题都不一样。估计搜索引擎会更喜欢。我的网站的内容全是很多页的。所以急切需求这个功能。由于不懂php。没学过编程。什么asp java html这些我啥都不懂。在论坛上找人帮忙。没人鸟我。说要更改数据结构等。听起来好像很复杂。反正我也听不懂。

  求人不如求己,dede有一个分页标题导航的功能能不能在这个上边改一下呢?首先找到输出页面的文件include/inc_archives_view.php.用记事本打开。发现里边有注释。

以下为引用的内容:
:
        //-------------------------
        //获得静态页面小标题
        //-------------------------

终于明白为什么要有注释了。原来是给我这样的人看的。
看到代码
复制内容到剪贴板
代码:
function GetPageTitlesST($styleName,$pageNo)
        {
                if($this->TotalPage==1){ return ""; }
                if(count($this->SplitTitles)==0){ return ""; }
                $i=1;
                if($styleName=='link')
                {
                        $revalue = "";
                  foreach($this->SplitTitles as $k=>$v){
                           if($i==1) $revalue .= "<a href='".$this->NameFirst.".".$this->ShortName."'>$v</a> ";
                     else{
                               if($pageNo==$i) $revalue .= " $v ";
                        else  $revalue .= "<a href='".$this->NameFirst."_".$i.".".$this->ShortName."'>$v</a> ";
                     }
                     $i++;
                  }
          }else
          {
                  $revalue = "<select id='dedepagetitles' onchange='location.href=this.options[this.selectedIndex].value;'>";
                        foreach($this->SplitTitles as $k=>$v){
                           if($i==1) $revalue .= "<option value='".$this->NameFirst.".".$this->ShortName."'>{$i}、{$v}</option>";
                     else{
                               if($pageNo==$i) $revalue .= "<option value='".$this->NameFirst."_".$i.".".$this->ShortName."' selected>{$i}、{$v}</option>";

                               else $revalue .= "<option value='".$this->NameFirst."_".$i.".".$this->ShortName."'>{$i}、{$v}</option>";
                     }
                     $i++;
                  }
                  $revalue .= "</select>";
          }
                return $revalue;
        }

  我不懂编程。还是看出了一点端倪。好像是如果if($styleName=='link') styename="link"就怎么怎么的。后边就是输出的一个代码。我就把这个代码改了下。改得不好。大家原谅。

  我增加了一段如果的代码.把风格名字改为biaoti.如果风格是标题。则怎么怎么的意思

以下为引用的内容:
else
             if($styleName=='biaoti')
                {
                        $revalue = "";
                  foreach($this->SplitTitles as $k=>$v){
                           if($i==1) $revalue .= "";
                     else{
                               if($pageNo==$i) $revalue .= "$v";
                        else  $revalue .= "";
                     }
                     $i++;
                  }
          }

  这样就行了。试一试。在需要输出分页标题的模板上加上{dede:pagetitle style='biaoti'/} 就OK了。

生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生