首页 php教程 PHP开发 dedecms发布分页问题完全解决方案

dedecms发布分页问题完全解决方案

Dec 14, 2016 pm 04:21 PM

由于文章内容比较多,dede在系统中有一个非常实用的功能就是自动对文章进行分页。这个功能可以说设置的非常贴心。

  可是在用的时候就出现了问题,出现问题怎么解决,一般情况下我都是先上dede论坛,用搜索,看有没有相关的解决答案。搜索到了很多自动分页的相关文章,可是没有完全解决问题的,也许有些版本问题或者是打过补丁的。

  我用的是4.0 rcl版本。完全解决方案如下:

  首先在内容页面模板中插入这个代码(如果内容页面模板中没有){dede:pagebreak/},直接插入在 {dede:field name='body'/}即可。

  然后你可以使用自动分页功能试试看问题有没有解决(估计没有,嘿嘿)。如果没有,进入下一步


  修改文件dede/article_description_action.php。打开文件找到以下代码


以下为引用的内容:

/----------------------------
//更新自动分页
//----------------------------

if($dojob=='page'){
    require_once(dirname(__FILE__)."/inc/inc_archives_functions.php");
    //统计记录总数
    if($totalnum==0){
      $addquery    = " where ID>0 ";
       if($sid!=0) $addquery    = " And ID>='$sid' ";
       if($eid!=0) $addquery    = " And ID<='$eid' ";
$row = $dsql->GetOne("Select count(*) as dd From $table $addquery");
      $totalnum = $row['dd'];
    }
    //获取记录,并分析
    if($totalnum > $startdd+$pagesize) $limitSql = " limit $startdd,$pagesize";
    else if(($totalnum-$startdd)>0) $limitSql = " limit $startdd,".($totalnum - $startdd); 
    else $limitSql = "";
    $tjnum = $startdd;
    if($limitSql!=""){
      $addquery    = " where ID>0 ";
      if($sid!=0) $addquery    = " And ID>='$sid' ";
      if($eid!=0) $addquery    = " And ID<='$eid' ";
$fquery = "Select aid,$field From $table $addquery $limitSql ;";
$dsql->SetQuery($fquery);
      $dsql->Execute();
      while($row=$dsql->GetArray())
      {
       $tjnum++;
       $body = $row[$field];
       $aid = $row['aid'];
       if(strlen($body) < $msize) continue;
if(!preg_match("/#P#/iU",$body)){
$body = SpLongBody($body,$cfg_arcautosp_size*1024,"#P#分页标题#E#");
$body = addslashes($body);
$dsql->ExecuteNoneQuery("Update $table set $field='$body' where aid='$aid' ; ");
       }
      }
    }//end if limit

 

 

替换为:

以下为引用的内容:

/----------------------------
//更新自动分页
//----------------------------


if($dojob=='page'){
    require_once(dirname(__FILE__)."/inc/inc_archives_functions.php");
//统计记录总数
if($totalnum==0){
        $addquery = " where aID>0 ";
    if($sid!=0) $addquery .= " And aID>='$sid' ";
    if($eid!=0) $addquery .= " And aID<='$eid' ";
$row = $dsql->GetOne("Select count(*) as dd From $table $addquery");
        $totalnum = $row['dd'];
}
//获取记录,并分析
if($totalnum > $startdd+$pagesize) $limitSql = " limit $startdd,$pagesize";
else if(($totalnum-$startdd)>0) $limitSql = " limit $startdd,".($totalnum - $startdd);
else $limitSql = "";
$tjnum = $startdd;
if($limitSql!=""){
    $addquery = " where aID>0 ";

 

    if($sid!=0) $addquery .= " And aID>='$sid' ";
    if($eid!=0) $addquery .= " And aID<='$eid' ";
$fquery = "Select aid,$field From $table $addquery $limitSql ;";
$dsql->SetQuery($fquery);
    $dsql->Execute();
      while($row=$dsql->GetArray())
      {
       $tjnum++;
       $body = $row[$field];
       $aid = $row['aid'];
       if(strlen($body) < $msize) continue;
if(!preg_match("/#P#/iU",$body)){
$body = SpLongBody($body,$cfg_arcautosp_size*1024,"#P#分页标题#E#");
$body = addslashes($body);
$dsql->ExecuteNoneQuery("Update $table set $field='$body' where aid='$aid' ; ");
       }
      }
    }//end if limit

 


  然后保存上传。问题应该可以完全解决。

 

  看了某些网友写的出现此问题的原因是在数据表中没有发现id字段。只有aid字段,修改即可。

 更多相关文章请关注PHP中文网(www.php.cn)!


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1663
14
CakePHP 教程
1420
52
Laravel 教程
1315
25
PHP教程
1266
29
C# 教程
1239
24
MyBatis分页插件原理详解 MyBatis分页插件原理详解 Feb 22, 2024 pm 03:42 PM

MyBatis是一个优秀的持久层框架,它支持基于XML和注解的方式操作数据库,简单易用,同时也提供了丰富的插件机制。其中,分页插件是使用频率较高的插件之一。本文将深入探讨MyBatis分页插件的原理,并结合具体的代码示例进行说明。一、分页插件原理MyBatis本身并不提供原生的分页功能,但可以借助插件来实现分页查询。分页插件的原理主要是通过拦截MyBatis

如何利用Layui开发一个具有分页功能的数据展示页面 如何利用Layui开发一个具有分页功能的数据展示页面 Oct 24, 2023 pm 01:10 PM

如何利用Layui开发一个具有分页功能的数据展示页面Layui是一个轻量级的前端UI框架,提供了简洁美观的界面组件和丰富的交互体验。在开发中,我们经常会遇到需要展示大量数据并进行分页的情况。以下是一个利用Layui开发的具有分页功能的数据展示页面的示例。首先,我们需要引入Layui的相关文件和依赖。在html页面的&lt;head&gt;标签中加入以下代

Vue组件实战:分页组件开发 Vue组件实战:分页组件开发 Nov 24, 2023 am 08:56 AM

Vue组件实战:分页组件开发介绍在Web应用程序中,分页功能是必不可少的一个组件。一个好的分页组件应该展示简洁明了,功能丰富,而且易于集成和使用。在本文中,我们将介绍如何使用Vue.js框架来开发一个高度可定制化的分页组件。我们将通过代码示例来详细说明如何使用Vue组件开发。技术栈Vue.js2.xJavaScript(ES6)HTML5和CSS3开发环

PHP数组分页的最佳实现方式 PHP数组分页的最佳实现方式 May 04, 2024 pm 02:39 PM

PHP数组分页有两种最常见的方式:使用array_slice()函数:计算要跳过的元素数量,然后提取指定范围的元素。使用内置迭代器:实现Iterator接口,rewind()、key()、current()、next()和valid()方法用于遍历指定范围内的元素。

帝国cms资源网模板在哪 帝国cms资源网模板在哪 Apr 17, 2024 am 10:00 AM

帝国CMS模板下载位置:官方模板下载:https://www.phome.net/template/第三方模板网站:https://www.dedecms.com/diy/https://www.0978.com.cn/https://www.jiaocheng.com/安装方式:下载模板解压模板上传模板选择模板

解读MyBatis分页插件的运行原理 解读MyBatis分页插件的运行原理 Feb 24, 2024 pm 07:24 PM

MyBatis是一个流行的持久层框架,它可以使Java开发人员更轻松地操作数据库。其中一个非常实用的功能就是分页查询,通过分页插件可以快速方便地实现对数据库中分页数据的获取。本文将详细介绍MyBatis分页插件的工作机制,并通过具体的代码示例来帮助读者更好地理解。MyBatis分页插件的工作原理MyBatis分页插件的工作原理主要是通过拦截SQL语句,在查询

dedecms怎么上传本地视频 dedecms怎么上传本地视频 Apr 16, 2024 pm 12:39 PM

如何使用 Dedecms 上传本地视频?准备视频文件,确保格式符合 Dedecms 支持的格式。登录 Dedecms 管理后台,创建新的视频分类。在视频管理页面上传视频文件,填写相关信息并选择视频分类。在编辑文章时嵌入视频,输入上传视频的文件名并调整尺寸。

dedecms怎么实现模板替换 dedecms怎么实现模板替换 Apr 16, 2024 pm 12:12 PM

在 Dedecms 中实现模板替换可以通过以下步骤:修改 global.cfg 文件,设置所需的语言包。修改 taglib.inc.php 钩子文件,添加对语言后缀模板文件的支持。创建带有语言后缀的新模板文件,修改所需内容。清除 Dedecms 缓存。

See all articles