我们在用织梦制作网站时,一般会考虑企业网站SEO页面推荐文章,更有利于蜘蛛抓取文章。所以,在不同网站内页都会设计一些推荐板块,做为最新文章或相关文章推荐,还有一个就是随机文章,能更好全面去推荐新老文章。
那么,如何做到全站或者指定栏目做随机调用文章呢?下面提供一些简单方法。
{dede:arclist typeid='1' row=‘8’ titlelen='60' orderby='rand'}[field:pubdate runphp='yes'] $a="";$b=""; $c=strftime("%m/%d","@me"); $ntime = time(); $oneday = 3600 * 24; if(($ntime - @me)<$oneday) @me = $a.$c.$b; else @me =$c; [/field:pubdate]•[field:title/]{/dede:arclist}
去掉 $a="";$b=""; $c=strftime("%m/%d","@me"); $ntime = time();就变成[field:pubdate runphp='yes'] $oneday = 3600 * 24; if(($ntime - @me)<$oneday) @me = $a.$c.$b; else @me =$c; [/field:pubdate][field:title/]</a>这是在前面不调用时间的
其中,typeid表示栏目ID,row表示要调用的数目,titlelen表示标题的长度,orderby表示排序规则,这里rand便是随机。
上面这段代码即可实现随机调用文章标题。不过只是实现了顺序随时调换位置而已,如:A文章、B文章、C文章,或者C文章、B文章、A文章,等。对于搜索引擎来说,这种随机调用出来的文章标题没多大意义。有没有更好的随机调用办法呢?答案是有的。
其实,我们可以这样来实现。先随机调用10000个网页,对10000篇文章随机排序,然后我们只取排在最前面的8篇文章即可,这样便可以真正实现随机调用8篇随机文章了,实现代码如下:
{dede:arclist typeid='1' row='10000' pagesize='8' titlelen='60' orderby='rand'}[field:pubdate runphp='yes'] $a=""; $b=""; $c=strftime("%m/%d","@me"); $ntime = time(); $oneday = 3600 * 24; if(($ntime - @me)<$oneday) @me = $a.$c.$b; else @me =$c; [/field:pubdate]•[field:title/]{/dede:arclist}
上面的typeid表示栏目ID为1,如果不限制栏目,全站随机调用,则把2修改为rand即可;pagesize这个标签原本出现在列表页,按规则对列表页文章进行排序,放到内容页位置,同样有效。这些测试在dedecms v5.6和5.7版本中有效,至于更早的版本未测试。
有个技巧说明一下,实现每个网页都随机调用到不同的文章,你的文章数目越多,可以把row的数值设到越大,这样全站更新后,随机调用到的结果会更丰富;另外,建议一个网页有一个随机调用文章的区域即可,同时还有推荐文章、相关文章,这样会让搜索引擎发现你推荐文章的同时,发现部分老文章,从而让网站收录率更高。
举例:{dede:arclist typeid='1' row='10000' pagesize='4' titlelen='60' orderby='rand'}
<li><a href="[field:arcurl /]">●[field:title /]</a></li>
{/dede:arclist}
实现效果如图:
以上是织梦实现随机调用文章或全站或指定栏目的方法,总结就是采用随机调用一定大数量文章进行随机排序,再截取排前部分进行调用,还可以指定某个栏目或者全站来调用文章。
以上就是关于【织梦网站优化页面怎么实现随机调用文章】的文章内容,如果您还想了解更多关于网站建设与网络推广的相关文章,请继续查看【织梦教程】栏目的其它文章
来源www.7y8d.com广州明行威,致力于中小企业网络营销推广、整体外包运营(网站建设、SEM、SEO等)、企业SEO内训、信息流广告运营
欢迎交流 加微信13430336474 广州张楷
上一篇:织梦dede:channelartlist排除栏目调用方法 下一篇:织梦DEDE实现首页分页翻页