帝国CMS根据内容正文字段[newstext]批量获取描述简介字段[smalltext]的方法(帝国cms使用手册)
問:
帝國CMS已經發布的信息,我想批量的根據新聞正文重新獲取簡介應該怎么處理?
最好能定義獲取多少字符,方便重新整理簡介
功能要求:批量從信息的新聞正文字段里獲取自定字數的文字到簡介字段!
解決方案
一、首先重新按需設置自動生成簡介的字數,帝國CMS默認自動獲取簡介的字數可以從下圖方式更改,我這里為了方便演示改成了320,默認為160,這里的數字,2個字符代表一個漢字,一個字符為一個英文。
這步做完,新發的信息,默認截取簡介字數就變成了新設置的字數了!已經發布的信息的處理方法請繼續往下看!
二、寫一個處理PHP,名字叫auto_smalltext.php,懶得寫的,后面提供了下載地址了,直接下載使用也可以。
PHP的內容:
<?php
define('EmpireCMSAdmin','1');
require("../class/connect.php");
require("../class/db_sql.php");
require("../class/functions.php");
require("../class/t_functions.php");
require("../data/dbcache/class.php");
require("../data/language/gb/pub/fun.php");
$link=db_connect();
$empire=new mysqlquery();
$tbname='news';//數據表名稱
$quantity=320;//重新生成簡介字數:320代表320個英文,160個漢字!
$query="select * from {$dbtbpre}ecms_".$tbname." order by id desc";
$sql=$empire->query($query);
while($r=$empire->fetch($sql))
{
$rb=$empire->fetch1("select newstext from {$dbtbpre}ecms_".$tbname."_data_".$r[stb]." where id='".$r[id]."' limit 1");
$newstext=$rb[newstext];
$smalltext=strip_tags($newstext);
$smalltext=esub($smalltext,$quantity);
$empire->query("update {$dbtbpre}ecms_".$tbname." set smalltext='$smalltext' where id='$r[id]'");
}
echo '執行完畢';
db_close();
$empire=null;
?>
把PHP放到/e/extend/ 目錄下!
auto_smalltext.php下載.rar (620 Bytes)
三、按需調整PHP文件里的數據表名字和簡介字數。
四、備份你的數據庫,防止出錯.
五、瀏覽器運行 你的域名/e/extend/auto_smalltext.php
完成!
下面放幾張對比圖吧
模板調用簡介,調整前效果
模板調用簡介,調整后效果
后臺信息,調整前簡介字數:
后臺信息,調整后簡介字數:
到此這篇關于帝國CMS根據內容正文字段[newstext]批量重新生成簡介字段[smalltext]的方法的文章就介紹到這了,更多相關內容正文批量生成簡介字段內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章,希望大家以后多多支持腳本之家!
總結
以上是生活随笔為你收集整理的帝国CMS根据内容正文字段[newstext]批量获取描述简介字段[smalltext]的方法(帝国cms使用手册)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何选择适合自己的健康零食?
- 下一篇: 驾考宝典怎么查询科目一100道题分配情况