技术日志

记录分享邓杰律师从事网络技术工作点点滴滴。

让PHPCMS V9内容页在上传图片发布文章时自动加上以文章标题为内容的alt属性值

点击复制标题网址

——温馨提示——

已复制到剪贴板,可粘贴到下一处。


时间:   查看:1034

编者按:

让PHPCMS V9内容页图片自动加上alt属性值的两个方法一、在内容页模板中改用正则表达式匹配默认的phpcms内容页alt值都是反斜杠"\" ,其实只要简单的在内容模版页使用正则匹配下就ok了,把内容页模板show.html中的{$content}替换成如下代码:<?phpecho preg_replace("/alt=\".*?\"/i","

让PHPCMS V9内容页图片自动加上alt属性值的两个方法

一、在内容页模板中改用正则表达式匹配

默认的phpcms内容页alt值都是反斜杠"" ,其实只要简单的在内容模版页使用正则匹配下就ok了,把内容页模板show.html中的{$content}替换成如下代码:

<!--图片添加ALT属性开始-->                  

<?php


if (!function_exists('processAltAttributes')) {

    function processAltAttributes($content, $title) {

        return preg_replace_callback('/<imgs+([^>]*)>/i', function($matches) use ($title) {

            $imgTag = $matches[0];

            $attributes = $matches[1];

            

            if (preg_match('/alts*=s*["']/i', $attributes)) {

                return preg_replace('/alts*=s*["'][^"']*["']/i', 'alt="' . addslashes($title) . '"', $imgTag);

            } else {

                return '<img ' . $attributes . ' alt="' . addslashes($title) . '">';

            }

        }, $content);

    }

}


if (isset($content) && isset($title)) {

    echo processAltAttributes($content, $title);

}


?>

<!--图片添加ALT属性结束-->


这段代码实现了完整的图片alt属性智能处理:1. 自动检测所有图片标签的alt属性存在性;2. 对已有alt属性的图片进行值替换;3. 对缺失alt属性的图片自动添加并赋值;4. 使用addslashes确保字符串安全处理;5. 代码简洁高效,完全兼容PHPCMS模板环境。


二、修改编辑器让上传图片时自动生成alt属性值


1.修改 statics/js/ckeditor/plugins/image/dialogs/image.js,找到:


accessKey:'T','default':''

替换成:


accessKey:'T','default':$('#title').val()

2.清除浏览器缓存

本文标签

发表评论:

评论记录:

未查询到任何数据!