问题背景:
dedecms 发布文章,特别是图片的时候一般会分很多页,模板里面可能设置了随机推荐的其他图片,但是同一个文章的每个分页的这个随机推荐是一样的,如何改为不同?
问题解决:
模板里面一般是这类随机
{dede:arclist row=10 orderby=rand}
<li><a href=”[field:arcurl/]”>[field:title/]</a></li>
{/dede:arclist}
造成每个页面的随机都一样的原因就是 这个模板片段是只在处理一个文章的时候分析一次模板,如果每个分页再生成前再次分析下模板,理论上就再次扫描了一次,从而再次随机运行了一次代码。
方案:
include\arc.archives.class.php 的 MakeHtml 函数
在大概 410行,增加 $this->ParseTempletsFirst();