# dedecms如何调用某个时间段的文章

*Published:* 2023-11-03
*Author:* 客服001

#### 温馨提醒

如果文章内容或图片资源失效，请留言反馈，我们会及时处理，谢谢

本文最后更新于2023年11月3日，已超过 180天没有更新



修改文件是include\\taglib\\arclist.lib.php

找到：

```
//时间限制(用于调用最近热门文章、热门评论之类)，这里的时间只能计算到天，否则缓存功能将无效
        if($subday > 0)
        {
            $ntime = gmmktime(0, 0, 0, gmdate('m'), gmdate('d'), gmdate('Y'));
            $limitday = $ntime - ($subday * 24 * 3600);
            $orwheres[] = " arc.senddate > $limitday ";
        }
```

修改为：

```
//时间限制(用于调用最近热门文章、热门评论之类)，这里的时间只能计算到天，否则缓存功能将无效
//当subday=1的时候调用1天内的文章
//当subday=2的时候调用昨天的文章
//当subday=3的时候调用2天前得所有文章
//当subday=7的时候调用7天内得所有文章
  if($subday > 0)
  {
      if($subday == 1)
  {
   $ntime = gmmktime(0, 0, 0, gmdate('m'), gmdate('d'), gmdate('Y'));
   $limitday = $ntime - ($subday * 24 * 3600);
   $orwheres[] = " arc.senddate > $limitday ";
  }
    else if ($subday == 2)
  {  
   $ntime = gmmktime(0, 0, 0, gmdate('m'), gmdate('d'), gmdate('Y'));
   $limitday = $ntime - ($subday * 24 * 3600);
   $lomitday = $ntime;
  $orwheres[] = " arc.senddate < $lomitday && arc.senddate > $limitday";
  }
   else if ($subday == 3)
  {  
   $ntime = gmmktime(0, 0, 0, gmdate('m'), gmdate('d'), gmdate('Y'));
   $limitday = $ntime -($subday * 24 * 3600)+(1*24 * 3600);
   $orwheres[] = " arc.senddate < $limitday ";
  }
   else if ($subday == 7)
  {  
   $ntime = gmmktime(0, 0, 0, gmdate('m'), gmdate('d'), gmdate('Y'));
   $limitday = $ntime - ($subday * 24 * 3600);
   $orwheres[] = " arc.senddate > $limitday ";
  }
  }
  }
```

使用方法：

```
{dede:arclist row=10 titlelen=32 subday='1'}
    <li><a href="[field:arcurl/]">[field:title/]</a></li>
{/dede:arclist}
```

//当subday=1的时候调用1天内的文章

//当subday=2的时候调用昨天的文章

//当subday=3的时候调用2天前得所有文章

//当subday=7的时候调用7天内得所有文章

//修改subday的时间，即可调整时间段的长短