是否可以为特色图像启用‘附件显示设置’下的‘链接到’字段?

时间:2017-03-24 作者:JacobTheDev

将照片插入内容区域时,您可以选择输入链接URL。

enter image description here

是否可以在“特色图像”选取器上启用此字段?我知道我可以用自定义字段实现同样的效果,但如果可能的话,我想用WordPress的内置功能来实现这一点,以使我的用户感到一致。

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

抱歉,您要找的不是标准的WordPress功能。它可能会干扰主题,主题可能已经包含到特色图像的链接。这将导致无效的html。

因此,您必须使用admin_post_thumbnail_html 钩子,它允许您在编辑屏幕中向特征图像元框添加字段。您可以这样做:

// Add form
function wpse261260_add_checkbox_thumbnail ($content) {
    global $post;
    $text = __( \'Link to full image\', \'your-textdomain\' );
    $id = \'link_to_featured_image\';
    $value = esc_attr (get_post_meta ($post->ID, $id, true) );
    $label = \'<label for="\' . $id . \'"><input name="\' . $id . \'" type="checkbox" id="\' . $id . \'" value="\' . $value . \' "\'. checked( $value, 1, false) .\'> \' . $text .\'</label>\';
    return $content .= $label;
    }
add_filter (\'admin_post_thumbnail_html\', \'wpse261260_add_checkbox_thumbnail\');

// Save form
function wpse261260_save_checkbox_thumbnail ($post_id, $post, $update) {
    $value = 0;
    if (isset ($_REQUEST[\'link_to_featured_image\'])) {
        $value = 1;
        }
    update_post_meta ($post_id, \'link_to_featured_image\', $value);
    }
add_action (\'save_post\', \'wpse261260_save_checkbox_thumbnail\', 10, 3);
现在,您可以使用访问主题中的布尔值

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

并使用它来决定是否链接到原始文件。如果还需要一个文本字段来提供url,那么显然必须在上面的代码示例中扩展表单。

相关推荐

Host images only on CDN

我开发了一个wordpress网站,该网站托管在AWS上。该网站运行良好,但由于我希望它成为一个电子商务网站,将有大量的图像。AWS的托管帐户仅提供30 GB的存储空间。所以我想host images completely on an external CDN off my server. 但最近对CDN的搜索导致我只缓存CDN,我希望只在其他服务器上托管图像。有线索吗?