当前位置:首页 > CMS教程 > ecshop > 列表

如何给ECSHOP文章内容加上分页

发布:smiling 来源: PHP粉丝网  添加日期:2014-06-14 13:28:28 浏览: 评论:0 

ECSHOP的文章内容没有分页功能,对于较短的文章来说没什么,如果赶上内容很长的文章,就不太好了.

下面我们来动手操造一下.

1、其实ECSHOP后台的文章编辑器(FCKeditor)是带有分页功能的,只是默认是隐藏的而已.打开 /admin/includes/lib_main.php 文件,将

$editor->ToolbarSet = 'Normal';修改为

$editor->ToolbarSet = 'Default';

保存后进入后台文章编辑页面,看看那个编辑器是不是有了变化,功能更多了吧.

使用方法:直接把光标定位在你想分页的位置,然后点一下第二排功能键的最后一个即可.

2、下面修改前台程序

打开  /article.php 文件,将

$cache_id = sprintf('%X', crc32($_REQUEST['id'] . '-' . $_CFG['lang']));

修改为

$page=isset($_REQUEST['page']) ? intval($_REQUEST['page']) : 1;

$cache_id = sprintf('%X', crc32($_REQUEST['id'] . '-' .$page.'-'. $_CFG['lang']));

继续,找到  $smarty->assign('article',      $article);在它上面增加下面代码:

  1. $article_arr=explode(" 
  2.  
  3. ",$article['content']); 
  4.         $page_cnt=count($article_arr);        
  5.         if($page){ 
  6.                 if($page > $page_cnt)                $page        =        $page_cnt
  7.                 if($page < 1)                                        $page        =        1; 
  8.                 $article["content"]=$article_arr[$page-1]; 
  9.         }else
  10.                 $article["content"]=$article_arr[0]; 
  11.         } 
  12.         if($page_cnt>1){ 
  13.         for($i=1;$i<=$page_cnt;$i++){ 
  14.                 if($page==$i)        $page_nav        .="   {$i} "
  15.                 else
  16.                         $url        =        $_SERVER['SCRIPT_NAME'].'?id='.$article_id.'&page='.$i
  17.                         $page_nav        .="   [ {$i} ] "
  18.                 } 
  19.         } 
  20.         } 
  21.         $smarty->assign('page_nav',$page_nav); 
 

3、修改模板文件

打开 /themes/模板文件夹/article.dwt 文件,在{$article.content}后面增加下面代码:{$page_nav},需要注意的是:PHP文章页有2个模板啊,要看清楚是哪个模板.

Tags: ECSHOP文章内容分页

分享到: