您现在的位置是:首页 > 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;
​​​​​​​?>

本文标签:

很赞哦! ()

相关源码

  • (自适应)WordPress主题SEO自媒体博客资讯模板RabbitV2.0Rabbit v2.0主题专注于网站搜索引擎优化需求,为博客、自媒体及资讯类网站提供专业的SEO技术解决方案。该主题从架构设计到功能实现均围绕搜索引擎优化理念展开。查看源码
  • 帝国cms7.5大型游戏资讯门户网站源码免费下载本模板基于帝国CMS7.5内核开发,为大型游戏资讯门户网站设计。模板自带响应式手机版,适配多种终端设备。内容架构针对游戏行业特点优化,支持游戏资讯、评测、攻略等内容类型的发布与管理。查看源码
  • (自适应)大气办公用品耗材供应打印机产品维修网站模板下载基于PbootCMS系统开发的响应式网站模板,为营销技术博主、数字产品评测者设计。采用前沿的响应式技术,确保内容在手机端和桌面端都能获得较佳阅读体验,帮助用户高效展示技术文章和产品分析。查看源码
  • WordPress主题模板主题巴巴/博客X主题源码免费下载博客X主题专注于内容创作领域,为博客、资讯类网站提供专业的内容展示解决方案。该模板采用精心设计的布局结构,能够有效提升内容的可读性和用户停留时间。查看源码
  • (自适应)蓄电池能源智能数码科技产品pbootcms模板源码下载本款基于PbootCMS开发的网站模板为蓄电池及能源科技企业设计,特别适合锂电池、储能系统、新能源电池等产品的展示与推广。查看源码
  • (自适应)餐具英文外贸生活用品带下载功能网站模板免费下载为餐具及生活用品外贸企业打造的响应式网站模板,基于PbootCMS内核开发。突出产品展示与多语言支持特性,通过自适应设计确保更好客户在手机、平板、电脑等设备上获得一致浏览体验。查看源码
分享笔记 (共有 篇笔记)
验证码: