【WordPress】プラグインVisual Composer導入後にSSLを適用すると混在コンテンツになる問題の対処法

2019年5月9日WordPress

【WordPress】プラグインVisual Composer導入後にSSLを適用した場合の対処法

世界中で200万以上のサイトに利用されている、WordPressのエディタを強力にカスタマイズしてくれるプラグインVisual Composer(以下VC)ですが、VCの導入後サイト全体にSSLを適用すると、設定済みの画像やファビコンなどのリンクがhttps対応にならず、混在するコンテンツの問題が発生します。今回はそんな場合の対処法をご紹介します。

対処法はfunctions.phpに下記のコードを入れるだけ

function steffi_live_find_replace( $buffer ){
    if( is_ssl() ) $buffer = str_ireplace('http://', 'https://', $buffer);
    return $buffer;
}

add_action( 'template_redirect', function(){
    ob_start();
    ob_start( 'steffi_live_find_replace' );
});

※海外のフォーラムによると、上記コードはSSL導入時の「http」「https」リンクが混在する問題をリアルタイムにhttpsへ置き換えるコードとなっており、あくまでも最終手段として利用して下さいと書かれています。

基本的にMixed Contentエラーに対する対処法は、SSLを導入した最初期にReally Simple SSLプラグインを導入すること、またはSSL Insecure Content Fixerプラグインなどの導入を検討することと言及されています。

参考記事

当記事の作成にはこちらの記事を参考にさせていただきました。

» wordpress – SSL not working with Visual Composer – Mixed Content issues – Stack Overflow
» Mega Addons For WPBakery Page Builder (formerly Visual Composer) – WordPress プラグイン | WordPress.org