alt, title tags not showing

时间:2017-01-24 作者:Rahul

我已经在我的网站上的所有图片上添加了alt标签、标题和描述,但当我在chrome或firefox中的inspect element工具中查看它们时,没有任何图片显示出来。

以下是屏幕截图:

enter image description here

这是同一张图片中inspect元素的截图:

enter image description here

4 个回复
SO网友:Habib-ur-Rahman

我找到了一个脚本,如果这对你有用,试试看。将此添加到主题的functions.php 文件

function isa_add_img_title( $attr, $attachment = null ) {

    $img_title = trim( strip_tags( $attachment->post_title ) );

    $attr[\'title\'] = $img_title;
    $attr[\'alt\'] = $img_title;

    return $attr;
}
add_filter( \'wp_get_attachment_image_attributes\',\'isa_add_img_title\', 10, 2 );

SO网友:Saahib

这实际上取决于图像在模板中的显示方式。如果它是使用像\\u post\\u thumbnail()这样的函数来显示的,该函数返回完整的html字符串以使用alt显示图像,那么应该没有问题,但如果图像是通过仅获取URL来显示的,则它取决于它的显示方式。

例如,下面是直接在WP图像附件页上获取图像的片段:

//fetching attachment image src url 
$attachment_size = apply_filters( \'abc_attachment_size\', array( 960, 960 ));
$image_attributes = wp_get_attachment_image_src( $post->ID, $attachment_size); 

if( $image_attributes ) {
?> 
<img src="<?php echo $image_attributes[0]; ?>" width="<?php echo $image_attributes[1]; ?>" height="<?php echo $image_attributes[2]; ?>">
<?php } ?>
在上面的代码中,我们显示的是我们单独获取的数据中的图像,因为这里没有使用alt,所以它不会显示alt。类似地,在您的情况下,我假设它是因为主题没有指定alt,所以它不会显示在那里。

此外,我尝试下载您的主题文件,但被浏览器报告为恶意文件,所以我离开了它。

SO网友:JHoffmann

要使alt标记与该图像一起显示,必须修改主题。输出图像的代码位于mediatraining/inc/modules/trainers/shortcode.php. 在第13行,图像从选项中加载:

$img = mbtheme_get_option( \'lead-trainer-image\' );
$img_url = $img[ \'url\' ];
在第27行上,使用它,然后:

<img src="<?php echo esc_url( $img_url ); ?>" />
因此,要想在此处添加alt标记,您可以在第27行尝试类似的操作:

<img src="<?php echo esc_url( $img_url ); ?>" alt="<?php echo esc_attr( $img[\'alt\'] ); ?>" />
这没有经过测试,我不确定$img[\'alt\'] 部分,因为我不知道那里到底保存了什么。或者尝试$img[\'title\'] 或尝试倾倒$img 查看是否可以在其中找到alt文本。

SO网友:Krzysztof Wołowski

似乎(从版本4.7开始)不再自动显示alt属性。有一些插件可以恢复此功能(例如。https://wordpress.org/plugins/auto-image-alt/). 如果你有SEO的想法,这些只是在某种程度上有用,因为属性是由JavaScript添加的。