从图像中删除标题属性

时间:2010-12-30 作者:heintore

我正在寻找一种从图像中删除title属性的方法,最好使用挂钩或过滤器。

大多数客户不愿意为图像提供适当的标题,因此消除了此属性的用途。与随机的、非描述性的提示相比,我更喜欢没有工具提示。

3 个回复
SO网友:EAMann

我强烈反对这样做。更好、更可持续的做法是让客户了解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\'); });
});

SO网友:ntft

这是一个不破坏核心的非js解决方案,在你的主题中尝试一下function.php 文件

add_filter( \'wp_get_attachment_image_attributes\', \'remove_image_text\' );
function remove_image_text( $attr ) {
    unset( $attr[\'alt\'] );
    unset( $attr[\'title\']) ;
    return $attr;
}

SO网友:kevin

如果你想让标题<input> 字段为空并且在图片上载时不会自动加载文件名,以下是一种方法:

转到wp admin/includes/media。php

线路911<input type=\'text\' class=\'text urlfield\' name=\'attachments[$post->ID][url]\' value=\'" . esc_attr($url) . "\' /><br />

将其更改为:<input type=\'text\' class=\'text urlfield\' name=\'attachments[$post->ID][url]\' value=\'\' /><br />

我也有很多客户不关心这个。

结束

相关推荐

Resizing all images

我刚刚更改了博客的主题,由于页面宽度很小,它打破了布局。我之前的大多数图片(附在帖子中)的宽度都在600px左右,现在我需要按450px的比例调整它们的大小。如何一次性调整它们的大小?有这个插件吗?P、 美国:编写CSS规则是一个很好的选择,我已经做到了。但我认为调整图像大小也会减少每个页面的下载开销!