如何让上传的图片在HTTPS的编辑器中加载?

时间:2011-10-08 作者:cwd

我的网站的管理部分使用HTTPS。除了TinyMCE编辑器(post和page富文本编辑器)中的图像使用http而不是https加载之外,这项功能运行得非常好,因此我收到了一条“不安全内容”警告。

我不想为前端用户更改图像的实际url;也就是说,当有人正常访问博客帖子时,我希望使用普通HTTP加载图像。但当我编辑时,它应该加载HTTPS。我该怎么做?

2 个回复
SO网友:Ijaas

This should do it:

add_action(\'admin_notices\', \'https_the_content\');
function https_the_content() {

    global $post;

    if(!$post->post_content)
        return;

    //change src to use the current url scheme
    $post->post_content = str_replace(array("src=\\"http://", "src=\'http://"), array("src=\\"//", "src=\'//"), $post->post_content);   

    return $post->post_content;

}
SO网友:fantapop

如果图像是从您自己的站点托管的,另一种方法是仅使用url的路径部分指定位置(即。/images/stuff.jpg vs。http://mywordpresssite.com/images/stuff.jpg). 这样,无论您使用的是https还是http,它们都可以正确地提供服务。

结束