帝国CMS查询历史今日的数据灵动标签带日期
2025-01-09
在帝国 CMS 中,要使用灵动标签查询历史今日的数据,可以借助 PHP 的日期函数与 SQL 语句结合来实现。下面是一个示例
方法1、标题包含日期<?
date_default_timezone_set(PRC);
$batasa=date(n月j日);
?>
<?=$batasa?>的文章<br>
[e:loop={0,10,3,0,title like '%$batasa%'}]
<li><a href=<?=$bqsr['titleurl']?> target=_blank><?=$bqr['title']?></a></li>
[/e:loop]
注释:标题包含日期
举例:今天是2012年8月20日,看下面的不同年份发布的文章
①、2000年8月20日发布文章:8月20日又发一部微电影
②、2000年8月20日发布文章:今天是个好天气
③、2002年8月09日发布文章:在8月09日的晚上天上的月亮很圆
④、2006年8月20日发布文章:今天是2006年8月20日
⑤、2012年8月20日发布文章:明天是8月20日后的第一天
最后用上面的代码调用出来的结果显示:①、④、⑤,
②和③没有调用是因为:②标题中没有包含8月20日这个日期,③标题包含的日期不是8月20日这天
--------------------------------------------------------------------
方法2、按日期调用
<?
date_default_timezone_set(PRC);
$yue=date(n);
$ri=date(j);
?>
<?=$batasa?>的文章<br>
[e:loop={0,10,3,0,month(FROM_UNIXTIME(newstime))=$yue and day(FROM_UNIXTIME(newstime))=$ri}]
<li><a href=<?=$bqsr['titleurl']?> target=_blank><?=$bqr['title']?></a></li>
[/e:loop]
注释:按日期调用(还是用上面的例子)
举例:今天是2012年8月20日,看下面的不同年份发布的文章
①、2000年8月20日发布文章:8月20日又发一部微电影
②、2000年8月20日发布文章:今天是个好天气
③、2002年8月09日发布文章:在8月09日的晚上天上的月亮很圆
④、2006年8月20日发布文章:今天是2006年8月20日
⑤、2012年8月20日发布文章:明天是8月20日后的第一天
最后用上面的代码调用出来的结果显示:①、②、④、⑤,
③没有调用是因为:③不是8月20日这天发布的文章
--------------------------------------------
方法3、方法2的修改
<?
date_default_timezone_set(PRC);
$year=date(Y);
$moty=date(n);
$tady=date(d);
$ztdat=date(h);
echo $year.年;
echo $moty.月;
echo $tady.日;
echo $ztdat.时;
?> <br>
[e:loop={select * from {$dbtbpre}ecms_news where month(FROM_UNIXTIME(newstime))=$moty and day(FROM_UNIXTIME(newstime))=$tady order by newstime desc limit 10,0,24}]
<strong>·[<?=$moty?>月<?=$tady?>日]</strong><?=esub($bqr[smalltext],36)?> <a href=<?=$bqsr[titleurl]?>><br>
…详细进入</a>
[/e:loop]
声明:本文来自用户分享和网络收集,仅供学习与参考,测试请备份。