滑块不添加Alt属性。无法从媒体库中获取alt属性!

时间:2013-04-28 作者:Private Person

我使用滑块显示我的帖子缩略图。但问题是滑块添加缩略图时没有alt 属性:
<img src="http://example.com/wallpaper-791556-1180x500.jpg" />

但我想alt 属性,您可能已经猜到了。我读了很多关于它和数组的书,但没有成功地修复它。我真的希望有人能帮我。

发布图像的代码:
<div id="slider" class="grid-12"> <div class="flexslider"> <ul class="slides"> <?php $count = of_get_option(\'w2f_slide_number\'); $slidecat =of_get_option(\'w2f_slide_categories\'); query = new WP_Query( array( \'cat\' =>$slidecat,\'posts_per_page\' =>$count ) ); if ($query->have_posts()) : while ($query->have_posts()) : $query->the_post(); ?> <li> <?php $thumb = get_post_thumbnail_id(); $img_url = wp_get_attachment_url( $thumb,\'full\' ); //get full URL to image (use "large" or "medium" if the images too big) $image = aq_resize( $img_url, 1180, 500, true ); //resize & crop the image ?> <?php if($image) : ?> <a href="<?php the_permalink(); ?>"><img src="<?php echo $image ?>"/></a> <?php endif; ?> <div class="flex-caption"> <h3><?php the_title(); ?></h3> <?php print_excerpt(300); ?> </div> <?php endwhile; endif; ?> </li> </ul> </div> </div>

另一个问题是<div class="homegallery"> <a href="http://mysite.com/whatever/"><img class="scale" src="http://mysite.com/wp-content/uploads/2013/04/slide_small.jpg"/></a> 也不要显示alt!我该如何解决这个问题,或者在哪里查找此homegallery的代码?

SOLVED IT!

2 个回复
SO网友:s_ha_dum

当我测试时get_the_post_thumbnail (同时the_post_thumbnail) 在WordPress 3.5.1上alt 属性按原样添加。如果you look at the source, 你会看到的get_the_post_thumbnail 使用wp_get_attachment_image 哪一个does add that alt attribute. 默认情况下,该属性是图像文件名,但可以从wp-admin->Media 做你想做的任何事。

要么:

插件或主题已更改的输出get_the_post_thumbnail, 可能通过post_thumbnail_html 过滤器,尽管我确实注意到代码中的其他过滤器,或者您的滑块或主题模板的工作方式与您想象的不一样。也许它没有使用get_the_post_thumbnail, 例如如果没有看到相关代码,很难说得更多,或者确切地说这是哪里出了问题。

而且get_the_post_thumbnail 作用is not a pluggable function 所以我必须假设您正在尝试破解一个核心文件,而您不应该这样做。

编辑:

在您发布的最新代码中,您可以看到生成图像标记的部分:

<a href="<?php the_permalink(); ?>"><img src="<?php echo $image ?>"/></a>
它根本不是WordPress,而是一段定制的代码。这就是您需要添加alt 属性

<a href="<?php the_permalink(); ?>"><img src="<?php echo $image ?>" alt="I am so alt it hurts!" /></a>
可以手动创建alt属性,也可以copy the code from wp_get_attachment_image

$default_attr = array(
    \'src\'   => $src,
    \'class\' => "attachment-$size",
    \'alt\'   => trim(strip_tags( get_post_meta($attachment_id, \'_wp_attachment_image_alt\', true) )), // Use Alt field first
);
if ( empty($default_attr[\'alt\']) )
    $default_attr[\'alt\'] = trim(strip_tags( $attachment->post_excerpt )); // If not, Use the Caption                    
if ( empty($default_attr[\'alt\']) )
    $default_attr[\'alt\'] = trim(strip_tags( $attachment->post_title )); // Finally, use the title
或者编写自己的函数来创建alt 属性

SO网友:ArgGeo

您可以尝试使用javascript

jQuery(\'.post-thumbnail-wrapper a img\').removeAttr(\'alt\');

结束

相关推荐

如何为WP-Gallery添加自定义缩略图大小

我正在使用“Lightbox Plus”插件在缩略图厨房的顶部创建Lightbox图像覆盖。现在我的问题是如何设置缩略图的大小而不影响lightbox图像的覆盖。我的意思是,当我试图通过wp Gallery edit选项为缩略图设置比例时,它甚至会将大小应用到覆盖图上(我希望覆盖图的大小尽可能大,但此功能会使它们像缩略图大小一样小),我也会在codex中看到这行代码: `get_the_post_thumbnail($id, array(100,100) ); // Other resolutions`&