首页 > 其他分享 >帝国CMS根据新闻正文字段[newstext]批量重新生成简介字段[smalltext]

帝国CMS根据新闻正文字段[newstext]批量重新生成简介字段[smalltext]

时间:2024-11-03 19:34:40浏览次数:1  
标签:newstext smalltext 简介 query empire CMS id

步骤

  1. 设置自动生成简介的字数

    • 进入帝国CMS后台,设置自动获取简介的字数(默认160,可以改为320)。
  2. 编写处理PHP脚本

    • 创建 auto_smalltext.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;
      ?>
    • 将 auto_smalltext.php 放在 /e/extend/ 目录下。
  3. 按需调整PHP文件中的数据表名称和简介字数

  4. 备份数据库,防止出错。

  5. 运行脚本

    • 在浏览器中访问 http://yourdomain/e/extend/auto_smalltext.php

标签:newstext,smalltext,简介,query,empire,CMS,id
From: https://www.cnblogs.com/hwrex/p/18513764

相关文章