dedecms随机调取文章,随机展示

2018年8月23日21:55:56 6 4,612 views

如果你在度娘上搜索这个问题时,会看到很多网站提供的答案是调用下面的这段代码:

{dede:arclist row='1000' pagesize='10' titlelen='35' orderby='rand'}
  [field:title/]
  {/dede:arclist}

row='1000'代表取出1000个文章, orderby='rand'代表对这些文章随机排序, pagesize='10'代表只显示随机排序后的前十个文章。"

用上面的这段代码,我在dede5.7中测试了一下,结果并非如我所愿。这段代码显示的结果,容我举例说明。

比方说,我的一个栏目A下有100篇文章,它们每篇文章的Id是从1到100的编号,而我想要实现效果是,每篇内容页都随机抓取10篇其他文章的标题,作为在每篇内容页的“相关推荐”版块中的内容,如第一篇文章的“相关推荐”抓取了ID2到ID10的标题,第二篇抓取了ID6到ID16标题,第三篇抓取了ID50到ID60标题,以此类推,栏目A下每一篇文章的标题都会出现在其他内容页面的”相关推荐“版块中。

而上面那段代码得到的结果是:随机抓取10篇文章标题,如:ID1到ID10的标题,然后在A栏目下100篇文章的每一篇文章的相关推荐中,只出现ID1到ID10的标题,仅有的改变只是上下排列次序的变化。

那问题出在哪里?如何做到真正的随机文章调取呢?

答案是去掉”row“,正确的调用代码如下:

{dede:arclist pagesize='10' titlelen='35' orderby='rand'}
  [field:title/](注释:这里是调用文章的标题调用代码)
  {/dede:arclist}

注释

pagesize='10' 这个代表生成10个标题

titlelen='35' 表示限制标题长度为35个字节(2个字节等于一个汉字)

orderby='rand' ”rand“表示抓取方式为 随机抓取

如果想抓取指定栏目下的内容要加入typeid='这里填写栏目的ID'

{dede:arclist pagesize='10' titlelen='35' typeid='5' orderby='rand'}

最后,感谢您的阅读,希望与您一起学习进步。


欢迎来到菜鸟头头的个人博客
本文章百度已收录,若发现本站有任何侵犯您利益的内容,请及时邮件或留言联系,我会第一时间删除所有相关内容。

  • A+
所属分类:PHP

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:6   其中:访客  4   博主  2

    • avatar 哈哈 1

      orderby 只是随机排序

        • avatar 头头 Admin

          @哈哈 -_-||,哈哈已经多年不碰dede了,已经忘记了怎么才是正确的了

        • avatar 哈哈 1

          正好反了

          • avatar 傻比不要瞎扯淡了 0

            你正好说反了吧 傻比

              • avatar 头头 Admin

                @傻比不要瞎扯淡了 不知道你的用意是什么,但是谢谢你的反馈,不知现在这篇文章正确与否,可否有哪位好心人帮忙指点一下,感谢了。

              • avatar 广安网站建设 1

                谢谢博主分享