这将返回附件的链接:
$link=wp_get_attachment_link($image->ID);
但是,我找不到从图像的附加显示设置中获取LINK TO值的方法。见下面的截图。
答案 0 :(得分:0)
正如yoavmatchulsky所写,在您手动选择图像后,该字段由~wp-includes / js / media-views.js动态提交
但如果您有附件ID,请使用wp_get_attachment_link($ id,$ size);
大小使用'完整'
完全参考。在codex
答案 1 :(得分:0)
或者,如果您尝试使用自定义链接,则here描述的方法可能有所帮助。
基本上,在你的functions.php中,你可以添加一个类似的代码:
// Adds a custom url field to your attachment
function attachment_custom_url( $form_fields, $post ) {
$form_fields['video-url'] = array(
'label' => 'CustomURL',
'input' => 'text',
'value' => get_post_meta( $post->ID, 'custom_url', true ),
'helps' => 'Add custom URL, if applicable',
);
return $form_fields;
}
add_filter( 'attachment_fields_to_edit', 'attachment_custom_url', 10, 2 );
function attachment_custom_url_save( $post, $attachment ) {
if( isset( $attachment['custom-url'] ) )
update_post_meta( $post['ID'], 'custom_url', esc_url( $attachment['custom-url'] ) );
return $post;
}
add_filter( 'attachment_fields_to_save', 'attachment_custom_url_save', 10, 2 );
然后,你可以在你的php中调用它:
<?php
<a href="'.get_post_meta($post->ID, 'custom_url', true).'">Custom Link</a>;
?>
答案 2 :(得分:0)
我知道这是一个旧线程,但是我通过获取附件的post meta解决了这个问题,
在我的安装中,自定义URL输入显示如下:
<input type="text" class="text" id="attachments-140443-foogallery_custom_url" name="attachments[140443][foogallery_custom_url]" value="https://mycustomurl.com">
因此,我假设如果第一个方括号包含帖子ID,则第二个是将此值保存在wp_postmeta表中的元键。就是这样,仅从下划线字符开始,因此它将是隐藏的元数据。因此,获得此值的更简单方法如下:
get_post_meta( get_post_thumbnail_id( get_the_ID() ), '_foogallery_custom_url', true);
当然,您需要检查帖子中是否确实有缩略图,但这很容易适应。