Javascript 根据图像在wordpress中的方向向图像添加类

Javascript 根据图像在wordpress中的方向向图像添加类,javascript,php,wordpress,Javascript,Php,Wordpress,我正在用Wordpress建立一个网站,我正在使用我创建的一个儿童主题 我想根据图像的方向为所有图像添加一个类。肖像画还是风景画 我是用javascript实现的,但我不知道如何用php实现。 我还不知道如何使用过滤器等等 我有两个问题: 1-使用php而不是javascript性能方面是否是一个好主意? 2-如果上一个问题的答案是肯定的,那么我该怎么做?使用php,如何检查所有图像,并根据它们的方向添加相应的class.肖像或.scape 是的,出于用户交互的原因,最好使用PHP而不是Java

我正在用Wordpress建立一个网站,我正在使用我创建的一个儿童主题

我想根据图像的方向为所有图像添加一个类。肖像画还是风景画 我是用javascript实现的,但我不知道如何用php实现。 我还不知道如何使用过滤器等等

我有两个问题:

1-使用php而不是javascript性能方面是否是一个好主意? 2-如果上一个问题的答案是肯定的,那么我该怎么做?使用php,如何检查所有图像,并根据它们的方向添加相应的class.肖像或.scape

是的,出于用户交互的原因,最好使用PHP而不是JavaScript。后端性能成本可以忽略不计。 您可以在名为wp\u get\u attachment\u image\u属性的内部使用WordPress过滤器。这使您可以在输出图像之前更改class属性。 以下是过滤器的工作原理:

函数添加\u方向\u类$attr,$attachment{ $metadata=get_post_meta$attachment->ID,“wp_attachment_metadata”,true; //健全性检查:我们需要宽度和高度来添加方向类。如果缺少其中一个,我们应该返回属性。 如果为空$metadata['width']|为空$metadata['height']{ 返回$attr; } //健全性检查x2:class现在应该设置,但另一个筛选器可能已将其清除。 if!isset$metadata['class']{ $metadata['class']=; } 如果$metadata['width']>$metadata['height']{//如果宽度大于高度,则图像为横向图像。 $attr['class'].='scannel'; }否则{//如果不是,那是一幅肖像画。 $attr['class']。='crative'; } //返回属性。 返回$attr; } 添加过滤器“wp\U获取\U附件\U图像\U属性”,“添加\U方向\U类”,10,2; 是的,出于用户交互的原因,最好使用PHP而不是JavaScript。后端性能成本可以忽略不计。 您可以在名为wp\u get\u attachment\u image\u属性的内部使用WordPress过滤器。这使您可以在输出图像之前更改class属性。 以下是过滤器的工作原理:

函数添加\u方向\u类$attr,$attachment{ $metadata=get_post_meta$attachment->ID,“wp_attachment_metadata”,true; //健全性检查:我们需要宽度和高度来添加方向类。如果缺少其中一个,我们应该返回属性。 如果为空$metadata['width']|为空$metadata['height']{ 返回$attr; } //健全性检查x2:class现在应该设置,但另一个筛选器可能已将其清除。 if!isset$metadata['class']{ $metadata['class']=; } 如果$metadata['width']>$metadata['height']{//如果宽度大于高度,则图像为横向图像。 $attr['class'].='scannel'; }否则{//如果不是,那是一幅肖像画。 $attr['class']。='crative'; } //返回属性。 返回$attr; } 添加过滤器“wp\U获取\U附件\U图像\U属性”,“添加\U方向\U类”,10,2;
您使用什么WordPress函数插入图像?wp_get_attachment_image?目前,我只需要为特色图片使用它,所以我使用了_post_缩略图或get_post_缩略图。但是它也可能对其他类型有用,所以wp\u get\u attachment\u image也可能有用。您使用什么WordPress函数来插入图像?wp_get_attachment_image?目前,我只需要为特色图片使用它,所以我使用了_post_缩略图或get_post_缩略图。但是它对其他类型也很有用,所以是的,wp_get_attachment_image也很有用。它工作得很完美,我很欣赏这些解释。非常感谢。它工作得很好,我很感激你的解释。非常感谢。