我强烈反对这样做。更好、更可持续的做法是让客户了解title
属性并教他们如何正确使用。
简单地去除它就是给症状贴上绷带,而不是对抗疾病。
但是,如果确实要删除该属性,有几种方法可以做到这一点:
使用内容过滤器发布内容在屏幕上显示之前,先通过过滤器运行。此过滤器将执行以下操作:将引号转换为卷曲引号,在WordPress中大写P等。它还处理内容中存在的短代码。
您可以通过使用正则表达式的过滤器来查找内容<img />
标记并删除title
属性
使用插件快速搜索返回的插件存储库Img Title Removal, 一个声称可以完全实现您想要的功能的插件。快速查看代码可以看出它确实执行选项1:
<?php
/*
Plugin Name: Img Title Removal
Plugin URI: http://www.glauserconsulting.com/2008/11/nu-agency/
Description: Filter plugin that removes all title tags from images in posts.
Author: Ivan Glauser
Version: 0.2.1
Author URI: http://www.glauserconsulting.com
*/
add_filter(\'the_content\', \'remove_img_titles\');
function remove_img_titles($text) {
// Get all title="..." tags from the html.
$result = array();
preg_match_all(\'|title="[^"]*"|U\', $text, $result);
// Replace all occurances with an empty string.
foreach($result[0] as $img_tag) {
$text = str_replace($img_tag, \'\', $text);
}
return $text;
}
?>
第三个选项是动态删除
title
属性在页面上呈现后。如果您绝对必须删除它们,我建议使用此系统,因为
title
仍将位于HTML代码中(用于屏幕阅读器),但在加载文档时将被删除,以便避免出现“随机、非描述性”工具提示。
使用jQuery,可以选择全部<img />
页面上具有title
属性并将其删除。示例:
jQuery(document).ready(function($) {
$(\'img[title]\').each(function() { $(this).removeAttr(\'title\'); });
});