dedecms5.6审核后的录入时间和发布时间
网站采集的时候遇到了一个问题,就是一次大量发布后的时间是相同的,而我想实现在dedecms5.6后台编辑后时间变成当前时间的效果。
dedecms文章的有两个时间,分别是录入时间和发布时间,对应的字段为senddate和pubdate,但后台可以编辑的只有发布时间。
由于我网站的文件自定义名为{Y}{M}/{D}{aid}.html,这个YMD所对应的是录入时间。如果senddate不能同步编辑后的时间,会有很多的网页存在于一个相同文件夹中。比如我2010年6月12日一天采集发布了500篇文章,以后不管哪天编辑文章,这些文章都存在于命名于20106这个文件夹中。
言归正传,初步想实现的功能是:
1.编辑文章的时候,后台显示录入时间。
2.采集回来的文章设置为未通过审核,当编辑这些未审核的文章时,录入时间和发布时间均自动变成当前系统时间。
3.对于普通的文章(非采集),编辑时不受以上影响。
实现方法:
1.找到dede/article_edit.php,在 pubdate='$pubdate',这一行下面添加:senddate='$senddate',
在 $pubdate = GetMkTime($pubdate);这一行下面添加: $senddate = GetMkTime($senddate);
2.找到dede/templets/article_edit.htm,找到代码:
$nowtime = GetDateTimeMk($arcRow["pubdate"]);
改成:
if($arcRow["arcrank"]==-1){
$nowtime = GetDateTimeMk(time());
}else{
$nowtime = GetDateTimeMk($arcRow["pubdate"]);}
3.找到代码:
<td width="92">消费金币:</td>
<td width="368"><input name="money" type="text" id="money" value="<?php echo $arcRow["money"]?>" size="10"></td>
改成:
<td width="90"> 录入时间:</td>
<td width="250"><?php
if($arcRow["arcrank"]==-1){
$nowtime = GetDateTimeMk(time());
}else{
$nowtime = GetDateTimeMk($arcRow["senddate"]);}
echo "<input name=\"senddate\" value=\"$nowtime\" type=\"text\" id=\"senddate\" style=\"width:200\">";
?>
</td>
(这里我觉得消费金币没多大用处,所以把它替换掉,如果要保留,只需将代码加到消费金币上面即可。对html稍有了解的人,应该不是问题)
注:以上方法仅限于对每篇采集回来的文章都进入编辑,如果批量审核的则不在考虑范围内。
原创文章如转载,请注明:转载自imseoer.cn