とある技術者の備忘録的情報

WordPressテーマ TCDテーマ ロゴ画像をSSL化(HTTPS化)する方法

WordPressテーマ TCDテーマ ロゴ画像をSSL化(HTTPS化)する方法

当サイトでは、デザインプラスが提供するWordPressテーマ「TCD」を利用しています。

今回、遅まきながらサイトのSSL化を試みました。

SSL証明を取得し、WordPressの設定をSSL化し、画像もSSL化対応したのですが、
いざ「https://univetech.com」とサイトを表示させてみると、
「混在コンテンツ」と完全なSSL通信ができていないではないですか!

※なお、WordPressのSSL化対応については、こちらの記事を参考にされると良いかと思います。
 SSL化(HTTPS化)する前に知っておくべき4つの設定 

一個づつ探してみると犯人はロゴ画像でした。。。
調べてみると、TCDテーマで使われている旧式のロゴアップローダーは、SSLに対応していないとのこと。
ロゴ画像のディレクトリURLを返す関数が使われているのですが、その返り値が必ずhttp://となるとのこと。
そこで、当該関数が使われている箇所の直後に、置換関数を使ってhttpをhttpsに無理やり変換してやる必要があります。

この関数が使われているファイルは、「functions/header-logo.php」。

このファイルの中に、下記のような記述があります。

/**
 * ロゴ画像を保存しているディレクトリのURLを返す
 * @return type 
 */
function dp_logo_baseurl(){
	$dir = wp_upload_dir();
	return $dir['baseurl'].'/tcd-w';
}

この内容を次のようにカスタマイズします。

/**
 * ロゴ画像を保存しているディレクトリのURLを返す
 * @return type 
 */
function dp_logo_baseurl(){
	$dir = wp_upload_dir();
	$dir_url = $dir['baseurl'];
	if(is_ssl()){
		$dir_url_str = str_replace('http:', 'https:', $dir_url);
	}else{
		$dir_url_str = $dir_url;
	}
	return $dir_url_str.'/tcd-w';
}

変更が終了したら、「テーマオプション」にて新たにロゴ画像をアップロード。

再度、「https://univetech.com」を表示したところ、
無事に「保護された通信」と表示されました。

関連記事

コメント

  1. Heya i am for the primary time here. I found this board and I find It really helpful & it helped me out a lot.
    I hope to present something back and help others such as you helped me.

  1. この記事へのトラックバックはありません。

スポンサードリンク