检索附件上的自定义链接

时间:2011-04-14 作者:Jonathan Wold

我想将图库中的图像链接到自定义URL。

我知道我可以添加一个额外的字段并执行此操作this way

我发现this ticket 不过,在Trac上,这会修改“链接URL”字段以接受自定义链接。我喜欢它的工作方式,我想让它发挥作用。

问题是,我似乎不知道如何访问数据。我正在使用get\\u children创建一个要循环的数组。链接URL未包含在结果中。

我尝试了get\\u attachment\\u link-问题是,它不仅仅从字段中提取,函数本身也会生成链接。

有什么想法吗?谢谢

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

在底部链接的Trac记录单上,有一个解决方案可以使其正常工作

function _save_attachment_url($post, $attachment) {
    if ( isset($attachment[\'url\']) ) 
        update_post_meta( $post[\'ID\'], \'_wp_attachment_url\', esc_url_raw($attachment[\'url\']) ); 
    return $post;
}
add_filter(\'attachment_fields_to_save\', \'_save_attachment_url\', 10, 2);

function _replace_attachment_url($form_fields, $post) {
    if ( isset($form_fields[\'url\'][\'html\']) ) {
        $url = get_post_meta( $post->ID, \'_wp_attachment_url\', true );
        if ( ! empty($url) )
            $form_fields[\'url\'][\'html\'] = preg_replace( "/value=\'.*?\'/", "value=\'$url\'", $form_fields[\'url\'][\'html\'] );
    }
    return $form_fields;
}
add_filter(\'attachment_fields_to_edit\', \'_replace_attachment_url\', 10, 2);
因此,在此代码之后,您将能够在“链接URL”字段中添加自定义链接。

要获取它,您只需要附件ID,您可以通过以下方式获取:

get_post_meta( $post->ID, \'_wp_attachment_url\', true );

结束

相关推荐

User-based media gallery

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