如何在图库快捷代码中筛选TITLE和ALT属性?

时间:2011-02-17 作者:gillespieza

我正在自定义帖子类型中显示帖子库,在我的单个自定义中使用以下内容。php模板:

<?php echo do_shortcode(\'[gallery id="\'.$post->ID.\'" link="file" columns="5" orderby="menu_order"]\'); ?>

输出中包含的内容之一是title="filename"<img> 标记,如下所示:

<img width="150" height="150" src="http://mydomain.com/wp-content/uploads/DSC_0036-150x150.jpg" class="attachment-thumbnail" alt="DSC_0036" title="DSC_0036" />

我不想输出title属性。大多数情况下,我不希望在悬停文本中出现糟糕的文件名,但有数百幅图像,我不准备进入媒体库编辑每幅图像的标题。我更愿意更改alt 可能是帖子名的属性。

有没有办法过滤库以在alt和title属性中输出帖子名称,而不是文件名?

2 个回复
最合适的回答,由SO网友:Jan Fabry 整理而成

这个[gallery] 短代码由解析gallery_shortcode(), 哪个呼叫wp_get_attachment_link(), 依次调用wp_get_attachment_image(). 后一个函数写入<img> 贴上标签title 属性你很幸运,因为属性已被过滤wp_get_attachment_image_attributes, 这样你就可以钩住它title.

要做到这一点,您需要在调用短代码之前附加挂钩,然后在调用后将其删除。如果是一次性的,您可以在模板中执行此操作,或者,如果您更高级,您可以“劫持”[gallery] 使用您自己的函数添加挂钩、调用原始gallery_shortcode() 函数,并移除挂钩。

SO网友:Vale

这是非常有用的,感谢你们两位。您还可以添加自动设置年份的版权标题属性: $attr[\'title\'] = \'© \' . date("Y") . \' Copyright \' . get_option(\'blogname\');

结束

相关推荐

User-based media gallery

我正在建立一个同时使用WordPress和BuddyPress的网站,我希望建立一个自定义部分,用户可以上传作品,人们可以对其进行评论/评分。我浏览了各种不同的选项,但似乎使用自定义的帖子类型,然后允许成员提交内容是最好的选择。这是更好的方法吗?还是你认为帖子类型是最好的选择。要了解其所需的功能类型,请执行以下操作:http://dribbble.com/其想法是将图像作为类似域的URL。com/designs/my-awesome-work-2201/当查看成员档案时,您将能够查看他们的最新作品等,因此