当前位置: 代码迷 >> PHP >> PHPCMS V9稿子分页标题设置的两种方法
  详细解决方案

PHPCMS V9稿子分页标题设置的两种方法

热度:610   发布时间:2012-06-28 15:20:03.0
PHPCMS V9文章分页标题设置的两种方法
今天我的一个phpcms网站内容页收录了,发现内容页分页的标题都是重复一样的,但是这样是不利于seo优化的。在百度收录看到刚收的几个内容页都是重复标题标记,全是phpcms v9程序分页重复标题造成的。很不利于seo优化,于是想着在标题里加入分页数。在网站顶部文件随便加了个【{$page}】,生成文章测试 了下。不错,效果出来了。所有分页的标题都加上了“【分页数】”,可是浏览到列表页和没有分页的文章里,‘【分页数】或“【】”空格一直显示着,看着很不顺眼,怎样在无分页的标题上不显示那难看的框框呢,折腾了半天,用了一个if语句搞定。

第一种方法:修改模版

  在phpcms v9后台,界面--模板风格--详细列表--content---修改header.html文件,在<title></title>之间加入下一句代码就行了

{if ($page) > (1)}【{$page}】{/if}

  当文章无分页的时候,“【1】”再不出出现了

第二种方法:修改系统

  找到phpcms\modules\content\classes\html.class.php文件,类约160行:

$pagefile = PHPCMS_PATH.$pagefile; 

  在这段代码之后添加如下代码就OK

//start   if($page!=1){   $title1 = $title." 第".$page."页";   }else{   $title1 = $title;   }   $SEO = seo($siteid, $catid, $title1, $description, $seo_keywords);                    //end

  备注,上面的修改方法会导致分页的如果使用子标题,则子标题会显示在第一页过后,规则为:子标题+分页号码,如果不想,可以这么修改86行:
$title = strip_tags($title);

  在后面添加:

$orgtitle = $title;  //将标题保存在一个变量中
  找到大约133行

foreach ($pageurls as $page=>$urls) 
  添加以下代码就OK了。

//start  修改标题显示标题的页数   

if($page!=1){   $title1 = $orgtitle." 第".$page."页";   }else{   $title1 = $orgtitle;   }   $SEO = seo($siteid, $catid, $title1, $description, $seo_keywords);                    

//end