之前网上找了很多类似的代码,基本都是一样的,都是用“< img alt=”替换“< img”字符来实现的,这种都不是我想要的,因为这么这几替换会导致“alt”标签跑到“src”前面,不符合代码规范。
找了很久找到一段正则替换的代码,比较符合我的实际应用场景,这里记录一下;
代码如下:
/** 自定义图片超链接代码 */ function imageshref($content) { global $post; $pattern ="/<a(.*?)href=('|\")(.*?).(bmp|gif|jpeg|jpg|png|webp)('|\")(.*?)>/i"; $replacement = '<a$1href=$2$3.$4$5 alt="'.$post->post_title.'" $6>'; $content = preg_replace($pattern, $replacement, $content); return $content; } add_filter('the_content', 'imageshref'); /** 自动给图片添加Alt标签 */ function imagesalt($content){ global $post; $preg = "/<img.*?src=[\"|\'](.*?)[\"|\'].*?>/"; $preg1 = "/<img.*?class=[\"|\'](.*?)[\"|\'].*?src=[\"|\'](.*?)[\"|\'].*?>/"; $alt = $post->post_title; $title = ''.$post->post_title.'-'.get_option('blogname').''; $img = '<img class="$1" src="$2" alt="'.$alt.'"title="'.$title.'">'; $content = preg_replace($preg1,$img,$content); return $content; } add_action('the_content','imagesalt');
以上代码放到主题的“function.php”文件结尾处即可!
自动添加“alt锚文本”的方法很多,懒得研究或者跟我一样技术不到家的话,可以多利用搜索引擎搜索,然后根据自己的使用场景做修改。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容