dedecms テンプレートで最近閲覧した記事のリストを表示する方法

藏色散人
リリース: 2019-12-10 09:41:42
オリジナル
2004 人が閲覧しました

dedecms テンプレートで最近閲覧した記事のリストを表示する方法

dedecms テンプレートで最近閲覧した記事のリストを表示するにはどうすればよいですか?

Dreamweaver Mall テンプレートを作成するときは、shopex または ecshop モデルを模倣して、最近閲覧した記事のリストを list dede テンプレートに追加することがよくあります。これにより、顧客エクスペリエンスが向上します。次の dedecms テンプレート実装方法を共有しましょう:

推奨される学習: 梦Weavercms

1. 次のステートメントをバックグラウンドで実行します

CREATE TABLE `数据库`.`dede_zj` (
  `id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `mid` INTEGER UNSIGNED NOT NULL,
  `ip` VARCHAR(45) NOT NULL,
  `aid` INTEGER UNSIGNED NOT NULL,
  `logintime` VARCHAR(45) NOT NULL,
  PRIMARY KEY (`id`)
)
ログイン後にコピー

2. Create新しい php ファイル count_zj .php が puls ディレクトリに保存され、内容は次のとおりです

<?php
require_once(dirname(__FILE__)."/../include/common.inc.php");
require_once(dirname(__FILE__)."/../member/config.php");
global $cfg_ml;
$mid=$cfg_ml->M_ID;
$joinip = GetIP();
//当前时间戳
$nowTime = time();
if($mid)
{
$row = $dsql->GetOne(" Select * From `dede_zj`  where aid=’$aid’ and mid=’$mid’");
if(!$row){
$dsql->ExecuteNoneQuery("INSERT INTO dede_zj( `id`, `mid`, `ip`,`aid` ,`logintime`)
VALUES (  ”,$mid, ‘$joinip’,$aid,$nowTime) ");
}
$db->SetQuery(" Select title From dede_archives  join dede_zj on dede_archives.id=dede_zj.aid where dede_zj.mid=’$mid’ order by logintime desc limit 1,5");   
$db->Execute();   
while($row = $db->GetArray())   
{ 
echo "document.write(‘".$row[&#39;title&#39;]."’);\r\n";  
} 
}
if(!$mid){
$m = $dsql->GetOne(" Select * From `dede_zj`  where aid=’$aid’ and ip=’$joinip’");
if(!$m){
$dsql->ExecuteNoneQuery("INSERT INTO dede_zj( `id`, `mid`, `ip`,`aid` ,`logintime`)
VALUES (  ”,$mid, ‘$joinip’,$aid,$nowTime) ");
}
$db->SetQuery(" Select title From dede_archives  join dede_zj on dede_archives.id=dede_zj.aid where dede_zj.ip=’$joinip’ order by logintime desc limit 1,5");   
$db->Execute();   
while($row = $db->GetArray())   
{ 
echo "document.write(‘".$row[&#39;title&#39;]."’);\r\n";  
} 
}
exit();
?>
ログイン後にコピー

3. 次のステートメントを記事テンプレートに追加します

<SPAN id="span_zj"> 
<script src="{dede:field name=’phpurl’/}/count_zj.php?view=yes&aid={dede:field name=’id’/}&mid={dede:field name=’mid’/}" type=’text/javascript’ language="javascript"></script>
<script type="text/javascript">  
document.getElementById("zj").innerHTML = document.getElementById("span_zj").innerHTML; 
document.getElementById("span_zj").innerHTML = ""; 
</script>
</SPAN>
ログイン後にコピー

組版は苦手ですが、機能は実現可能です。自己判断で扱っていただければ幸いです。

問題に関して、1点追加します。最近閲覧したリンクの

<?php
require_once(dirname(__FILE__)."/../include/common.inc.php");
require_once(dirname(__FILE__)."/../member/config.php");
global $cfg_ml;
$mid=$cfg_ml->M_ID;
$joinip = GetIP();
//当前时间戳
$nowTime = time();
if($mid)
{
$row = $dsql->GetOne(" Select * From `dede_zj`  where aid=’$aid’ and mid=’$mid’");
if(!$row){
$dsql->ExecuteNoneQuery("INSERT INTO dede_zj( `id`, `mid`, `ip`,`aid` ,`logintime`)
VALUES (  ”,$mid, ‘$joinip’,$aid,$nowTime) ");
}
$db->SetQuery(" Select title,dede_archives.id From dede_archives  join dede_zj on dede_archives.id=dede_zj.aid where dede_zj.mid=’$mid’ order by logintime desc limit 1,5");   
$db->Execute();   
while($row = $db->GetArray())   
{ 
echo "document.write(\"<a href=’view.php?aid=".$row[&#39;id&#39;]."’>\");"; 
echo "document.write(‘".$row[&#39;title&#39;]."’);"; 
echo "document.write(\"</a>\");\r\n";  
} 
}
if(!$mid){
$m = $dsql->GetOne(" Select * From `dede_zjw`  where aid=’$aid’ and ip=’$joinip’");
if(!$m){
$dsql->ExecuteNoneQuery("INSERT INTO dede_zjw( `id`, `mid`, `ip`,`aid` ,`logintime`)
VALUES (  ”,$mid, ‘$joinip’,$aid,$nowTime) ");
}
$db->SetQuery(" Select title,dede_archives.id From dede_archives  join dede_zj on dede_archives.id=dede_zj.aid where dede_zjw.ip=’$joinip’ order by logintime desc limit 1,5");   
$db->Execute();   
while($row = $db->GetArray())   
{ 
echo "document.write(\"<a href=’view.php?aid=".$row[&#39;id&#39;]."’>\");"; 
echo "document.write(‘".$row[&#39;title&#39;]."’);"; 
echo "document.write(\"</a>\");\r\n"; 
} 
}
exit();
?>
ログイン後にコピー

上記のphpファイルを上書きします

以上がdedecms テンプレートで最近閲覧した記事のリストを表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート