wordpress全站实现图片等内容https与http互转教程

今天,一位群友他之前的网站是全站HTTPS的,以前也发布了很多的图片与文章内容等等。

现在,出于成本的考虑,他现在想把全站有HTTPS的地方想改为HTTP,不再用443端口,只用80端口了。或者说HTTPS与http互转。

用过wordpress的都知道,默认情况下WordPress所有的URL都是绝对路径,不管是图片还是其它的,尤其是编辑器插入图片的地方。

 

第一种方法:WordPress图片内容HTTPS改HTTP

今天就以这位群友为例子,来给大家具体的演示一下,说下过程,如下:

 

在WordPress中,如果你想将插入的图片链接由HTTPS改为HTTP,你可以通过以下步骤来实现:

前提:

需要先确保你的“WP_HOME”与“WP_SITEURL”已经是设置为了”http“。

如果你用了“Really Simple SSL”插件,还需要先关闭并禁用它。

 

1、打开你的WordPress网站的安装目录,找到你的主题的“functions.php”文件。

 

2、在 functions.php 文件中添加以下代码:

注意:重点看有背景颜色的地方。

function relative_images( $html ) {
    $https_url = 'https';
    if ( strpos( $html, $https_url ) !== false ) {
        $html = str_replace( $https_url, 'http', $html );
    }
    return $html;
}
add_filter( 'the_content', 'relative_images' );
add_filter( 'widget_text', 'relative_images' );
add_filter( 'get_avatar', 'relative_images' );

这段代码会将所有链接到你网站的图片https链接转换http链接。

它首先获取你网站的“https”头部协议,然后检查图片链接是否包含这个“https”。如果包含,它就会将这个“https”替换为“http”。

请注意,这段代码可能会影响到你网站上的其他内容,因为它会处理所有的图片链接。在实际使用时,请确保测试和理解代码的影响。

 

第二种方法:WordPress内容HTTP改HTTPS

WordPress开启HTTPS后,博客原来上传的图片地址依旧为http的链接,这回导致地址栏绿锁显示不正常,那么如何将上传图片网址改成https,实现整站https化,解决方法如下:

 

本方法是最简单最直接的方法,通过直接修改MySQL数据库,将所有“wp-content/uploads”下的图片等链接均改为https。

 

注意:操作前请务必对数据库进行备份,以避免不可挽回的数据丢失!

 

1、使用phpMyAdmin登录WordPress的MySQL数据库。使用phpMyAdmin登录WordPress的MySQL数据库

 

2、选择你的WordPress数据库,点击“SQL”,输入以下语句:

UPDATE wp_posts SET post_content = replace(post_content, 'http://域名/wp-content/uploads','https://域名/wp-content/uploads');

注意:

  • “wp_posts”:默认表前缀为wp,如果你修改了表前缀,请改成自己的前缀;
  • 将“域名”改成自己的域名;

 

3、然后,点击“执行”即可。

    A+
所属分类:WordPress
发布日期:2024年07月20日 11:19:51
最后更新时间:2024-07-20 11:20:50
付杰

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: