WP_GET_ATTACH_LINK()如果链接指向直接图像,则添加rel属性

时间:2013-02-15 作者:PrivateUser

我正在使用这样的过滤器来添加rel 中的属性wp_get_attachment_link()

add_filter( \'wp_get_attachment_link\', \'sant_prettyadd\'); 
function sant_prettyadd ($content) {
    $content = preg_replace("/<a/","<a rel=\\"prettyPhoto[slides]\\"",$content,1);
    return $content;
}
上述过滤器工作正常,但它添加了属性,即使href 指向附件页。

我想补充一下rel 属性,仅当链接指向direct image而不是附件页时。

有人能帮我吗?

1 个回复
最合适的回答,由SO网友:PrivateUser 整理而成

add_filter( \'wp_get_attachment_link\', \'sant_prettyadd\', 10, 6);

function sant_prettyadd ($content, $id, $size, $permalink, $icon, $text) {
    if ($permalink) {
    return $content;    
    }
    $content = preg_replace("/<a/","<a rel=\\"prettyPhoto[slides]\\"",$content,1);
    return $content;
}
更新:函数sant\\u prettyadd检查permalink参数。

如果permalink = true 然后按原样返回内容。

如果permalink = false 然后跳到下一行并替换<a 具有<a rel="prettyPhoto[slides]" 然后返回内容。

结束

相关推荐

Remove duplicate attachments

情况是这样的:我有一个自动脚本,可以上传附件并将每个附件链接到特定的帖子。由于错误,脚本运行了多次,我有以下内容媒体库中针对单个文件的多个附件帖子(不同的附件帖子具有相同的文件URL)。这些附件中有一个实际上是附在帖子上的。我想做的显然是清理媒体库。我需要在不删除文件的情况下删除附件帖子,并且确保我不删除那些实际附加到他们帖子的帖子。有什么想法吗?