您现在的位置是:首页 > cms教程 > 帝国CMS教程帝国CMS教程

帝国CMS高效随机文章的几种写法,帝国CMS随机文章的方法

汉鹏2023-04-24帝国CMS教程已有人查阅

导读php随机文章方法1、WC写的高效随机调用<?php$randnum=1; //随机数量$randids=&#39;&#39;;$randdh=&#39;&#39;;for($i=1;$i<=$randnum;$i++){ $randids.=$randdh.rand(

php随机文章
方法1
WC写的高效随机调用

<?php
$randnum=1; //随机数量
$randids='';
$randdh='';
for($i=1;$i<=$randnum;$i++)
{
$randids.=$randdh.rand(18,30); //1为最小ID,100000为最大ID
$randdh=',';
}
?>
[e:loop={29,1,0,0,"id in ($randids)"}]
<a href="<?=$bqsr[titleurl]?>"><?=esub($bqr[title],42)?></a>
[/e:loop]

问题:因为在 $randids.=$randdh.rand(18,30); 这个里,ID改成1,10000,无法显示,只有改成当前栏目的最小和最大ID,才能显示出来。那么问题是:现在文章少,如果以 后文章增多,这里的最大ID要随时修改么?还是有其他的办法呢?
答案:增加个系统扩展变量,以后改扩展变量就可以,不用改模板
如:增加了一个<?=$public_r['add_listnum']?>扩展变量 写到“$randids.=$randdh.rand(18,30); ”
格式为: $randids.=$randdh.rand($public_r['add_listnum']); 即:把<?和?>去掉
方法2
第一步:创建一个自定义页面:后台-栏目-自定义页面- 增加自定义页面
填写:①页面模式:直接页面式 ②页面名称(*):php随机文章 ③文件名(*): ../../test.php (在根目录) ④所属分类:有就选择没有就默认不选
⑤ 网页标题、网页关键词、网页描述:省略不填了 ⑥页面内容(*):看第二步
注释:填写大意为:位置为 ../../test.php,直接页面式
第二步:代码大致为(下面的要连接上数据库)

<!--code.start-->?php
require('e/class/connect.php'); //引入数据库配置文件和公共函数文件
require('e/class/db_sql.php'); //引入数据库操作文件
$link=db_connect(); //连接MYSQL
$empire=new mysqlquery(); //声明数据库操作类
$sql="SELECT * FROM {$dbtbpre}ecms_news AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM {$dbtbpre}ecms_news )-(SELECT MIN(id) FROM {$dbtbpre}ecms_news))+(SELECT MIN(id)
FROM {$dbtbpre}ecms_news )) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 1";
?<!--code.end-->
<!--code.start-->?php
$str="";
for($i=1;$i<11;$i++){
$nr= $empire->fetch1($sql);
$titleurl=sys_ReturnBqTitleLink($nr);
$str=$str."<li><a href='".$titleurl."' title='".$nr['title']."'>".$nr['title']."</a></li> ";
}
db_close(); //关闭MYSQL链接
$empire=null; //注消操作类变量
echo $str;
?<!--code.end-->

第三步:①模板中用[readhttp]'http://127.0.0.1/dg2/test.php'[/readhttp] 调用文件 (不成功,只有后台刷新才能随机变化)
②用框架代码:

<iframe border=0 name=lantk src="http://127.0.0.1/dg2/test.php" width=400 height=400 allowTransparency scrollbars=yes frameBorder="0"></iframe>

(成功,但不利于seo)
注释:①看看 code.start 和 code.end是干啥的(就是<和>):

//解析代码
function RepExeCode($string){
global $public_r;
if($public_r[candocode])
{
$string=str_replace('<!--code.start-->','<',$string);
$string=str_replace('<!--code.end-->','>',$string);
}
return $string;
}

②for($i=1;$i<11;$i++){ 这行中的11表示调用10条 举例:for($i=1;$i<6;$i++){ 表示条用5条
方法2----演变、
直接在根目录(目录自行选择更改)新建一个php文件把下面的代码复制进去

<?php
require('../class/connect.php'); //引入数据库配置文件和公共函数文件
require('../class/db_sql.php'); //引入数据库操作文件
$link=db_connect(); //连接MYSQL
$empire=new mysqlquery(); //声明数据库操作类
$sql="SELECT * FROM {$dbtbpre}ecms_news AS t1 JOIN (SELECT ROUND(RAND() * ((SELECT MAX(id) FROM {$dbtbpre}ecms_news )-(SELECT MIN(id) FROM {$dbtbpre}ecms_news))+(SELECT MIN(id)
FROM {$dbtbpre}ecms_news )) AS id) AS t2 WHERE t1.id >= t2.id ORDER BY t1.id LIMIT 1";
?>
<?php
$str="";
for($i=1;$i<6;$i++){
$nr= $empire->fetch1($sql);
$titleurl=sys_ReturnBqTitleLink($nr);
$str=$str."<li><a href='".$titleurl."' title='".$nr['title']."'><h3 class='title'>".$nr['title']."</h3></a></li> ";
}
db_close(); //关闭MYSQL链接
$empire=null; //注消操作类变量
echo $str;
​​​​​​​?>

本文标签:

很赞哦! ()

相关源码

  • (自适应)驾校培训学车活动免费pbootcms源码下载本模板基于PbootCMS内核开发,为驾校培训行业打造,具备完善的招生展示、课程预约、教练团队展示等功能模块。响应式设计适配各类移动终端,数据实时同步管理,助您高效开展线上业务。查看源码
  • (自适应)蓝色建材亚克力板材装饰材料pbootcms网站模板这款基于PbootCMS开发的响应式模板为建材板材行业优化设计,适用于亚克力板材、建筑装饰材料等企业展示需求。采用HTML5技术实现手机/PC跨终端适配,管理员通过统一后台即可同步查看源码
  • 粉色家政月嫂保姆公司pbootcms网站模板(PC+WAP)为家政服务、月嫂保姆企业打造的营销型解决方案,基于PbootCMS内核开发,采用温馨粉色主题传递行业温度。PHP7.0+高性能架构支持SQLite/MySQL双数据库查看源码
  • (自适应)大气网络公司工作室个人作品展示网站模板免费下载基于PbootCMS内核开发的响应式网站模板,为网络技术服务类企业打造,具备高度可定制性。通过简洁现代的设计语言展现企业专业形象,后台数据实时同步机制确保多终端内容一致性,查看源码
  • (自适应)帝国cms7.5文章新闻博客整站源码( 带会员中心)本模板基于帝国CMS内核开发,为新闻资讯、个人博客及作品展示类网站设计。采用响应式布局技术,确保在手机、平板和电脑等不同设备上都能获得良好的浏览体验。查看源码
  • (PC+WAP)高端餐饮美食小吃加盟网站模板下载pbootcms本模板基于PbootCMS内核开发,为餐饮美食品牌加盟、小吃连锁企业量身打造。通过精致的美食视觉呈现与加盟业务流程展示,帮助餐饮企业建立专业线上门户,实现品牌形象与加盟业务的双重展示。查看源码
分享笔记 (共有 篇笔记)
验证码: