我正在使用发布缩略图链接到页面。

是否可以在发布缩略图中添加类名。

<li><a href="<?php the_permalink(); ?>" ><?php the_post_thumbnail(); ?></a></li>


#1 楼

是的-您可以将要使用的类作为属性参数的一部分传递给the_post_thumbnail(),例如<?php the_post_thumbnail('thumbnail', array('class' => 'your-class-name')); ?>

Ref:http://codex.wordpress.org/Function_Reference/the_post_thumbnail#Styling_Post_Thumbnails

评论


但这将删除类附件-$ size。

– fuxia♦
2013年6月6日20:21在

但是可以添加类“ attachment- $ size my-class-name”

–西蒙·库珀(Simon Cooper)
13年6月7日在5:45

我做了@SimonCooper,现在该类具有附件-没有大小。

– Zhianc
15年4月27日在10:33

这通常是不好的且非通用的解决方案。即使是硬编码附件-$ size,也将删除所有可能的将来的类注入。

–融合
19年2月18日在11:18

#2 楼

您可以过滤这些类。

function alter_attr_wpse_102158($attr) {
  remove_filter('wp_get_attachment_image_attributes','alter_attr_wpse_102158');
  $attr['class'] .= ' new-class';
  return $attr;
}
add_filter('wp_get_attachment_image_attributes','alter_attr_wpse_102158'); 


在调用the_post_thumbnail之前添加过滤器。过滤器会自动删除自身。

到达目的地有点艰苦,但是the_post_thumbnail使用get_the_post_thumbnailwp_get_attachment_image使用适用于该过滤器的q4312079q。

评论


函数名称“ alter_attr_wpse_102158”是否具有特定含义,是否可以将该函数称为myClass-function myClass($ attr){

–西蒙·库珀(Simon Cooper)
2013年6月7日15:17

名称有点描述性,后缀引用了这个问题。否则,没有特殊含义。在类实例(例如插件类)内部,您可以使用array($ this,'methodname'),并且可以通过使用array('ClassName','methodname')将静态类与过滤器一起使用

– s_ha_dum
2013年6月7日15:23



codex.wordpress.org/Function_Reference/add_filter#注意

– s_ha_dum
2013年6月7日15:27

为什么要添加一个可自行删除的过滤器?

– AlxVallejo
13年9月29日在12:36

@AlxVallejo:因此,它只在您希望其运行的特定情况下运行一次。

– s_ha_dum
2013年9月29日14:11在

#3 楼

您的图片标签没有类别,您只需编写此代码
<?php the_post_thumbnail(); ?>,但是您的图片标签具有类,只需编写此代码

<?php the_post_thumbnail('thumbnail', array(
'class' => 'class_name'

)); ?>