ホームページ >php教程 >PHP开发 >dedecms がページング問題に対する完全なソリューションをリリース

dedecms がページング問題に対する完全なソリューションをリリース

黄舟
黄舟オリジナル
2016-12-14 16:21:291496ブラウズ

記事のコンテンツが大量にあるため、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 = " そして ID>='$sid' ";
if($eid!=0) $addquery = " そして ID<='$eid' ";
$ row = $dsql->GetOne("Select count (*) as dd From $table $addquery");
$totalnum = $row['dd'];
}
//レコードを取得して分析します
if($ totalnum > $startdd+$pagesize) $limitSql = " $startdd の制限,$pagesize";
else if(($totalnum-$startdd)>0) $limitSql = " $startdd の制限,".($totalnum - $ startdd);
else $limitSql = "";
$tjnum = $startdd;
if($limitSql!=""){
$addquery = " where ID>0 ";
if($sid!=0) $ addquery = " そして ID>='$sid' ";
" if($eid!=0) $addquery = " そして ID<='$eid' ";
$fquery = "$table から援助,$フィールドを選択$ addquery $ limitsql; "; $msize) 続行; SpLongBody($body,$cfg_arcautosp_size*1024,"#P#ページタイトル#E#"); 本文 'where aid =' $aid '); -------------
//自動ページングを更新します
//--------------- ----------


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

if($sid!=0) $addquery .= " そして aID>='$sid' ";
if($eid!=0) $addquery .= " そして aID<='$eid' ";
$fquery = "$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 = addlashes($body); 
$dsql->ExecuteNoneQuery("Update $table set $field='$body' where aid='$aid' ; ");
}
}
}//end if limit


その後保存上传この問題は完全に解決できます。中文网(www.php.cn)!

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。