dedecms通过自定义标签实现随机调用一篇文章

今日小编想通过dedecms调用全站的一篇随机文章,于是就想到了orderby= rand ,我们可以通过下面的代码来实现:其中row= 1000 返回1000个文档列表;pagesize= 1 从上面的1000个文档列表中列出1个;titlelen= 80 标题长度80;orderby= ran

【导读】dedecms通过自定义标签实现随机调用一篇文章,下面就是路由器之家整理的网络知识百科,来看看吧!

dedecms通过自定义标签实现随机调用一篇文章

今日小编想通过dedecms调用全站的一篇随机文章,于是就想到了orderby='rand',我们可以通过下面的代码来实现:其中row=’1000′ 返回1000个文档列表;pagesize=’1′从上面的1000个文档列表中列出1个;titlelen=’80′ 标题长度80;orderby=’rand’随机获取文章,如果你想多调用几篇文章只需修改pagesize的值就行

{dede:arclist row='1000' pagesize='1' titlelen='80' orderby='rand'}
<li><a href="[field:arcurl/]" title="[field:title /]">[field:title /]</a></li>
{/dede:arclist}

如果我们想通过自定义标签调用一篇文章呢?

我们登录系统后台找到[模板]-[标签源码管理]

dedecms通过自定义标签实现随机调用一篇文章

然后在右上角点击[增加一个新的标签]

dedecms通过自定义标签实现随机调用一篇文章

在文件名称那里修改为:randarc.lib.php,然后把下面的代码全被拷贝到代码框里覆盖原来的代码,然后保存

dedecms通过自定义标签实现随机调用一篇文章

<?php

if(!defined('DEDEINC'))

{

exit("Request Error!");

}

function lib_randarc(&$ctag , &$refObj){

global $dsql;

FillAttsDefault($ctag->CAttribute->Items ,"limit|1");

extract($ctag->CAttribute->Items);

$s = '';

$tcp = new DedeTagParse();

$tcp->SetNameSpace("field",'[',']');

$tcp->LoadSource($ctag->GetInnerText());

$sql = $query = "SELECT se.*,tp.typedir,tp.typename,tp.isdefault,tp.defaultname,tp.namerule,tp.namerule2,tp.ispart,tp.moresite,tp.siteurl,tp.sitepath

FROM `dede_archives` se LEFT JOIN `dede_arctype` tp ON se.typeid=tp.id WHERE 1 order by rand() limit $limit";

$dsql->Execute("f",$sql);

while($row1 = $dsql->GetArray("f")){

$row1['arcurl'] = GetFileUrl($row1['id'],$row1['typeid'],$row1['senddate'],$row1['title'],

$row1['ismake'],

$row1['arcrank'],$row1['namerule'],$row1['typedir'],$row1['money'],

$row1['filename'],$row1['moresite'],$row1['siteurl'],$row1['sitepath']);

foreach($tcp->CTags as $k => $v ){

$tcp->Assign($k , $row1[$v->GetName()]);

}

$s.=$tcp->GetResult();

}

return $s;

}

如果你想调用随机文章的话就可以通过dede:randarc实现了,其中limit=1代表调用一篇,想多篇的话只需修改limit的值即可。

{dede:randarc limit=1}<a href=[field:arcurl/]>[field:title/]</a>{/dede:randarc}

亲,以上就是关于(dedecms通过自定义标签实现随机调用一篇文章),由“路由器之家”整理!

本文来自投稿,不代表路由百科立场,如若转载,请注明出处:https://www.qh4321.com/149289.html

(0)

相关推荐

  • wifi恢复出厂设置后怎么重新设置?

    问:wifi恢复出厂设置后怎么重新设置?答:当你将wifi恢复出厂设置后,重新登录到wifi的设置页面,按照页面上的提示进行设置即可。注意:电脑和手机都可以重新设置wifi上网,下面鸿哥给大家演示如何用电脑来设置wifi上网。如果你想用手机来进行设置,可以参考下面的文章:wifi恢复出厂设置后手机怎

    2021年5月4日
    1.4K
  • Tenda路由器设置步骤图解

    导读:Tenda路由器怎么设置?(腾达无线路由器设置教程)很多用户不懂腾达(Tenda)路由器怎么设置,腾达路由器的默认管理IP地址是192.168.0.1,用浏览器打开192.168.0.1,按照提示设置即”

    2021年1月5日
    4.8K
  • tp login.cn登陆入口进不去咋办?

    导读:tp login.cn登陆入口进不去怎么办?新版TP-Link路由器的管理页面地址是:tplogin.cn,如果在设置的时候,无法登录到tplogin.cn管理页面,请仔细阅读下面的内容。1、请确保你在浏”

    2021年1月25日
    5.1K
  • 换路由器手机怎么设置 如何用手机设置路由器以及修改WiFi密码防蹭网?

    导读:以下是"换路由器手机怎么设置?"相关路由问题分享。 – 来源:路由器之家,下面我们直奔主题吧!

    问:用手机怎么换新路由器?

    买了一个新的路由器回来,但是家里没有电脑,新的”

    2021年1月29日
    138
  • 腾达无线路由器软件升级详细步骤

    原标题:"腾达(Tenda)无线路由器软件升级教程图解"相关路由器设置经验分享。 – 来源:路由器之家

    腾达无线路由器升级必读:升级前请仔细阅读下列升级说明

    1.请使用有线连接”

    2021年1月11日
    4.8K
  • 水星(Mercury)无线路由器设置好了上不了网的解决方法

    水星无线路由器设置好了上不了网的解决办法,不少用户在设置水星(Mercury)无线路由器的时候发现,明明自己已经设置好了,但是任然无法通过水星路由器来上网,这是什么原因引起的上不了网呢?

    2021年3月4日
    4.4K