首页 > 其他分享 >帝国CMS发布信息时替换正文IMG图片标签里的ALT内容

帝国CMS发布信息时替换正文IMG图片标签里的ALT内容

时间:2024-10-05 15:45:37浏览次数:9  
标签:imgalt IMG matches 标签 user ALT CMS alt

要在 EmpireCMS 中实现替换正文 IMG 标签中的 ALT 内容的功能,可以通过以下步骤进行:

  1. 在 e/class/userfun.php 文件中增加函数 user_imgalt

  2. 在后台系统设置中编辑 newstext 字段,添加相应的处理逻辑

步骤 1:在 e/class/userfun.php 文件中增加函数 user_imgalt

打开 e/class/userfun.php 文件,在合适的位置添加以下函数:

// 替换正文 IMG 标签中的 ALT 内容
function user_imgalt($mid, $f, $isadd, $isq, $value, $cs) {
    // 获取文章标题
    $title = $_POST['title'];
    // 获取 HTML 内容
    $htmls = $value;

    // 匹配所有的 <img> 标签
    $pattern = '/<img[^>]+>/';
    preg_match_all($pattern, $htmls, $matches);

    // 遍历匹配到的 <img> 标签
    for ($i = 0; $i < count($matches[0]); $i++) {
        // 匹配 <img> 标签中的 alt 属性
        preg_match_all('/alt=[\'"](.+?)[\'"]/i', $matches[0][$i], $altimg);

        // 判断是否有 alt 属性
        if (empty($altimg[1])) {
            // 如果没有 alt 属性,则添加文章标题作为 alt 属性
            $htmls = str_replace($matches[0][$i], '<img' . substr($matches[0][$i], 4) . ' alt="' . htmlspecialchars($title) . '"', $htmls);
        }
    }

    return $htmls;
}

步骤 2:在后台系统设置中编辑 newstext 字段

  1. 登录 EmpireCMS 后台。
  2. 进入 系统设置 -> 数据表模型 -> 字段管理
  3. 找到 newstext 字段并编辑。
  4. 在 字段处理 中添加如下处理逻辑:
text   user_imgalt($mid,$f,$isadd,$isq,$value,$cs)

标签:imgalt,IMG,matches,标签,user,ALT,CMS,alt
From: https://www.cnblogs.com/hwrex/p/18447903

相关文章

  • 帝国cms标题设置了加粗、颜色等属性在内容页显示
    要在EmpireCMS的内容页上显示带有颜色样式的标题,可以通过自定义函数来实现。具体步骤如下:在 e/class/userfun.php 文件中增加自定义函数 DoTitleFont。在内容页模板中替换 [!--title--] 为 <?=DoTitleFont($navinfor[titlefont],$navinfor[title])?>。步骤1:在 e/cl......
  • 帝国CMS后台添加信息报错Duplicate entry xx for key PRIMARY
    当在帝国CMS后台添加信息时遇到 Duplicateentry'xx'forkey'PRIMARY' 的错误时,通常是因为主键冲突。以下是一些解决该问题的方法:方法1:后台修复数据库进入后台:登录帝国CMS后台。进入 系统 -> 备份与恢复数据 -> 备份数据。修复数据表:在页面底部,找到 修复......
  • 帝国cms返回首页带.index.html的解决办法
    要去掉帝国CMS模板中返回首页地址的 index.html 后缀,可以通过修改 e/class/connect.php 文件中的 ReturnSiteIndexUrl 函数来实现。步骤说明找到 e/class/connect.php 文件。修改 ReturnSiteIndexUrl 函数。具体操作步骤打开 e/class/connect.php 文件。......
  • 帝国cms搜索页模板关键字结果标题加红的方法
    要在帝国CMS的搜索结果页面上实现关键词高亮显示的功能,可以按照以下步骤操作:备份原有模板文件:在修改任何模板文件之前,请确保备份原有的模板文件,以防修改出错时能够恢复。定位到模板编辑器:登录帝国CMS后台。导航至“模板”->“模板列表”。找到需要修改的搜索列表模板文......
  • 帝国cms后台恢复数据库出现的错误
    遇到在本地调试正常但在服务器上出现SQL语法错误的情况,通常是因为不同环境之间MySQL版本的差异导致的。特别是对于一些特定的语法或特性,在不同版本间可能存在兼容性问题。针对您提到的问题,可以采取以下措施来解决:检查SQL语句:确认SQL语句在服务器版本的MySQL中是否支持。特......
  • 帝国cms会员空间模板显示最近来访访客信息
    为了实现用户登录状态下的信息记录以及未登录状态下的IP地区记录功能,你可以按照以下步骤操作:第一步:创建数据表在帝国CMS后台执行以下SQL语句创建数据表:CREATETABLE`{$dbtbpre}_userkjf`(`id`int(11)NOTNULLAUTO_INCREMENT,`lfuserid`varchar(20)CHARACTERSE......
  • 织梦数据库表结构_Dedecms数据库表和字段详细介绍
    织梦CMS(DedeCMS)使用多个数据库表来存储各种数据。下面详细介绍一些主要的数据库表及其字段,帮助你更好地理解和操作这些表。主要数据库表及字段1. dede_arctype 表用途:存储网站的栏目信息。主要字段:id:栏目ID。typeid:父栏目ID。typename:栏目名称。sendmail:发送邮件设置......
  • 找到织梦CMS的数据库配置文件,以便了解数据库的具体连接信息
    首先,找到织梦CMS的数据库配置文件,以便了解数据库的具体连接信息。数据库配置文件路径织梦CMS安装目录假设织梦CMS安装在 /var/www/html 目录下。数据库配置文件位于 include/config.inc.php。打开配置文件使用FTP工具或服务器上的文件管理器,打开织梦CMS安装目录下......
  • 织梦CMS遇到数据库连接失败怎么办?
    当织梦CMS遇到数据库连接失败时,可能有多种原因导致此问题。以下是一些常见的故障排查和解决方法:1.检查数据库配置文件打开配置文件打开织梦CMS的数据库配置文件 include/config.inc.php。使用FTP工具或SSH连接到服务器,然后打开该文件。检查配置信息确认数据库配置......
  • 如何查找和管理织梦CMS数据库
    登录MySQL命令行使用SSH连接到服务器。登录MySQL命令行:bash mysql-uroot-p输入MySQLroot用户的密码。查看数据库列表在MySQL命令行中查看所有数据库:sql SHOWDATABASES;选择织梦CMS数据库选择织梦CMS使用的数据库:sql USEdedecmsv......