arclist标签在文章页列表页调用所有(全站)栏目最新文章热门文章的方法 [复制链接]

arclist标签在文章页列表页调用所有(全站)栏目最新文章热门文章的方法 [复制链接]

上一主题下一主题arclist标签在文章页列表页调用所有(全站)栏目最新文章热门文章的方法 [复制链接] - ☆奋力拼搏☆ - 北方的…郎
离线 hdp201
arclist标签在文章页列表页调用所有(全站)栏目最新文章热门文章的方法 [复制链接] - ☆奋力拼搏☆ - 北方的…郎
arclist标签在文章页列表页调用所有(全站)栏目最新文章热门文章的方法 [复制链接] - ☆奋力拼搏☆ - 北方的…郎
发帖
27
贡献值
44
威望值
8
技术分
0
织梦币
0
只看楼主 倒序阅读 使用道具 0  发表于: 2010-03-27
方法:typeid='top' 或者typeid='asdas'任意字母不为空不为数字 写上这一个属性就可以了

{dede:arclist orderby='pubdate'  titlelen='28' row='7' typeid='top' }
如果是在文章页 这篇文章又是最新刚发布的,那么最新文章里就会包含这篇文章,想要去除这篇文章,可以加limit限制
{dede:arclist orderby='pubdate'  titlelen='28' row='7' typeid='top'  limit='1,7'}
当然如果不是最新的文章,再次生成的时候还是有可能和当篇文章重复的

arclist标签在文章页列表页调用所有(全站)栏目文章的方法
今天用到在文章页调用全站最新文章
搜了下没有找到解决的方法
看了下arclist.lib.php这个文件
大概在144行的这一句
if(!empty($typeid) && $typeid != 'top')
让我知道了 原来arclist标签的typeid属性还有top
这个if之间的代码就是获取子栏目及交叉栏目的ID了,上次在修改交叉栏目时有看过这一块
写了一篇  用交叉栏目时arclist标签调用不出的问题
有用到交叉栏目的可以看一下
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
以下是一种可能的实现方式: ```c++ #include <vector> #include <algorithm> bool overlap(const ControlArc& arc1, const ControlArc& arc2) { return arc1.endTime > arc2.startTime && arc2.endTime > arc1.startTime; } bool compare(const ControlArc& arc1, const ControlArc& arc2) { return arc1.dt > arc2.dt; } void filterControlArcList(std::vector<std::vector<ControlArc>>& ControlArcList) { for (auto& arcList : ControlArcList) { std::sort(arcList.begin(), arcList.end(), compare); for (size_t i = 0; i < arcList.size(); ++i) { bool overlapFlag = false; for (auto& otherList : ControlArcList) { if (&otherList == &arcList) continue; for (auto& otherArc : otherList) { if (overlap(arcList[i], otherArc)) { overlapFlag = true; break; } } if (overlapFlag) break; } if (overlapFlag) { arcList.erase(arcList.begin() + i); --i; } } } } ``` 首先定义了一个 `overlap` 函数,用于判断两个 `ControlArc` 对象的时间段是否有重叠。然后定义了一个 `compare` 函数,用于在排序时按照 `ControlArc` 对象的 `dt` 值从大到小排序。最后定义了一个 `filterControlArcList` 函数,用于过滤 `ControlArc` 对象列表。具体实现如下: - 对于每个 `ControlArc` 对象列表,首先按照 `dt` 值从大到小排序,以确保在有重叠的情况下优先保留 `dt` 值大的对象; - 然后遍历每个 `ControlArc` 对象,检查它是否与其他列表中的对象重叠; - 如果有重叠,则从当前列表中删除该对象。 这样,最终每个 `std::vector` 中的 `ControlArc` 对象的时间段都不会与其他 `std::vector` 中的对象重叠,并且在有重叠的情况下会保留 `dt` 值大的对象。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

北方的刀郎

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值