我们这里介绍php与KindEditor编辑器使用时如何利用KindEditor编辑器的分页功能实现文章内容分页,KindEditor编辑器在我们点击分页时会插入
我的理解核心代码
代码如下 | 复制代码 |
$news = array( this is paragraph 1 '.' this is paragraph 2 '.'Now i make a page end. [--page--] page 2 start~~~~~' ); $newsModel->insert($news); //news_detail.php?p=2 : $news_one = $newsModel->get(1); $content_pages = explode('[--page--]',$news_one['content']); $cur_page = min( max(1,intval($_GET['p'])), count($content_pages) ); $news_one['content'] = $content_pages[$cur_page-1]; return render('news_detail.html', $news_one); |
我们知道在很多在线编辑器里都有插入分页的功能,像在KindEditor中点击插入分页编辑器会在光标的地方插入如下的代码:
代码如下 | 复制代码 |
而UEditor则会在光标处加入:
_ueditor_page _break_tag__ueditor_page和_break_tag_之间是没有空格的,由于本网站也是用的ueditor使用的分页符是break_tag,所以上面加了空格避免影响
下面我以KindEditor为例,贴上我的代码:
代码如下 | 复制代码 |
$content= 上海顶想信息科技有限公司(TOPThink Inc.)是国内领先的WEB应用和服务提供商致力于WEB应用平台、产品和应用的研发和服务,为企事业单位提供基于WEB的应用开发快速解决方案和产品。公司成立于2008年9月,是一家拥有自主知识产权的高新企业。 公司长期专注于WEB应用框架、应用平台和企业解决方案的研究,公司的核心技术框架ThinkPHP由创始人刘晨于2006年创立,经过6年多的精心打造和发展,具有广泛的用户基础和良好的业内口碑,已经成长为国内领先和最具影响力的WEB应用开发框架,国外同比也具有相当大的优势。其应用领域分布于各个行业,在门户、社区和电子商务领域有着非常良好支持以及拓展,大小案例不下千家,在安全、效率、负载上都有很大优势,已经成为WEB应用的快速开发解决方案和最佳实践!
str; $content = preg_replace("' 'iUs", " ", $content); $content = explode(" ", $content); $count = count($content); $p = empty($_GET['page']) ? 1 : (int) $_GET[page]; $p = $p == 0 ? 1 : $p; $p = $p > $count ? $count : $p; $p--; $content = $content[$p]; $p++; if ($count > 1) { $page = '首页'; for ($i = 1; $i $page.=$i == $p ? '【' . $i . '】' : '【' . $i . '】'; } $page.='尾页'; } 上海顶想信息科技有限公司";echo $content; echo " {$page} ";
?> |
按照上面的代码你就可以实现文章分页了,效果如下图:
如果你用的是UEditor编辑器分页符默认是:_ueditor_page _break_tag_ (你可以在ueditor.config.js中修改pageBreakTag的设定)则可以将上面的代码稍作修改即可:
代码如下 | 复制代码 |
$content = preg_replace("' 'iUs", " ", $content); $content = explode(" ", $content); 改为: $content = explode("_ueditor_page _break_tag_", $content); |
这样就可以了,当然你可以自定义任何分页符