帝国CMS批量提取正文内容到简介

代码:

<?php
define('EmpireCMSAdmin','1');
require("../class/connect.php");
require("../class/db_sql.php");
require("../class/functions.php");
require LoadLang("pub/fun.php");
require("../class/t_functions.php");
require("../data/dbcache/class.php");
require("../data/dbcache/MemberLevel.php");
$link=db_connect();
$empire=new mysqlquery();
$tbname="news";
$sid=(int)$_GET['startid'];
$b=0;
$rs=$empire->query("SELECT id,newstext FROM {$dbtbpre}ecms_{$tbname}_data_1 WHERE id>{$sid} limit 20");
        while($r=$empire->fetch($rs))
        {
                $smalltext='';
                !$r['newstext'] or $smalltext=SubSmalltextVal($r['newstext'],200);
                $smalltext=addslashes($smalltext);
                $smalltext &&
                $empire->query("UPDATE {$dbtbpre}ecms_{$tbname} SET smalltext='{$smalltext}' WHERE id=".$r[id]);
                $b=$r['id'];
        }
$b or exit('转换结束!');
echo "<meta http-equiv=\"refresh\" content=\"1;url=ChangeByID.php?startid=".$b."\">";
echo "已转换ID".$b;
db_close();
$empire=null;
?>

使用方法:
1、先备份数据库
2、以上代码保存到:/e/admin/ChangeSmallText.php
3、浏览器访问:www.xx.com/e/admin/ChangeSmallText.php

帝国CMS 用关键字做出Tags链接效果

思路:
1,帝国CMS的关键字一般是用英文逗号分隔,比如:小红,小明,小华
2,需要把英文逗号去掉,并且给每个关键字用html标签包起来,比如:<li>小红</li><li>小明</li><li>小华</li>

代码:

<?php 
$cr=$empire->fetch1("select classpagekey from {$dbtbpre}enewsclass where classid='$GLOBALS[navclassid]'");
$source=$cr[classpagekey];
$hello = explode(',',$source); 
for($index=0;$index<count($hello);$index++) 
{ 
echo "<li><a href='/e/tags/?tagname=$hello[$index]&tempid=8'>"; echo $hello[$index];echo "</a></li>"; 
} 
?>

说明:
1,先把关键字内容取出来
2,用php的explode函数,把字符串打散为数组
3,然后用for循环,把数组中的每个词语用指定的HTML标签包起来

百度小程序:显示栏目列表,再读取每个栏目的最新几条文章

需求:
1,页面上显示指定栏目下的子栏目列表
2,每个子栏目下再显示几条最新文章列表

要解决这个问题,首先要想好API接口怎么写,最简单当然是一个接口搞定:在接口中把1,2的数据都循环出来。
还有一个周折的办法,就是写两个接口,一个接口读取子栏目列表,一个接口读取栏目下的最新文章列表。

下面是用两个接口制作百度小程序列表的方案:




阅读剩余部分

IIS配置了404,403自定义页面无效

如下图所示,在IIS的“错误页”指定了自定义页面:
IIS配置了404,403自定义页面无效.png
反复检查了指定页面,确实在网站根目录下,路劲也没问题,就是没效果。结果就是缺少了下一部操作:
IIS配置了404,403自定义页面无效.png

帝国cms自定义列表和内容的动态页面

当帝国CMS栏目启用静态生成之后,这种/action/ListInfo.php动态页面就访问不到了,系统做了跳转。有时候我们希望栏目生成静态html之后,还可以通过动态地址访问栏目,并且启用另外的模板。

下载附件,上传到网站根目录。

1,列表页面使用方法:http://你的域名/info/ListInfo.php?classid=64&tempid=2
classid是栏目ID,tempid是列表模板ID

2,内容页面使用方法:http://你的域名/info/ShowInfo.php?id=23&tempid=1&classid=64
id是文章ID,tempid是内容模板ID,classid是栏目ID

如果模板id不指定,程序会自动判断栏目或内容设置的模板。

可以灵活应用,比如同一个列表,可以通过不同的模板ID,组成不同的URL,看不同的页面效果。

这两个PHP程序文件就是官方的e/action/ListInfo.php和ShowInfo.php这两个文件,只不过拿来简单地修改了一下,做下判断,就可以单独拿出来用了。

我甚至通过这种方式,制作过帝国cms的接口API地址。

info.zip