ホーム > 技術資料 > SSL で警告が出る Lightbox 2 と FancyBox の対処法

SSL で警告が出る Lightbox 2 と FancyBox の対処法

この警告はインターネット・エクスプローラーのものです。Welcart で、https:// で始まるページを閲覧中に目にするものです。この警告が出る原因は大きく分けて2つ有ります。
一つは、テンプレートを編集中に画像等のURLを直書きしてしまった場合。もう一つは、使用しているプラグインが、スタイルシートなどのlink タグを直書きしてしまっている場合です。
前者は自分で編集しているので察しが付くでしょうが、プラグインが原因となるとお手上げです。本来なら作者にお願いすべきでしょうが、英語で説明するのはプラグインをカスタマイズするよりも難しいw

そこで、特に報告の多い「Lightbox 2」と「FuncyBox for WordPress」の2つのプラグインでの対処法を説明いたします。つまり本体へのハックです。(フックが無かったのでハックするしかありませんでした)

Lightbox 2 での対処

修正箇所は2箇所です。

1. lightbox2.php 内にある関数、lightbox_styles() を次のように書き換えます。

function lightbox_styles() {
	/* What version of WP is running? */
	global $wp_version;
	global $stimuli_lightbox_plugin_prefix;
    /* The next line figures out where the javascripts and images and CSS are installed,
    relative to your wordpress server's root: */
    $lightbox_2_theme = urldecode(get_option('lightbox_2_theme'));
    $lightbox_style = ($stimuli_lightbox_plugin_prefix."Themes/".$lightbox_2_theme."/");

	wp_enqueue_style('lightbox_styles_customize', $lightbox_style."lightbox.css");
}

2.最後から2行目のアクションフックを変更します。

add_action('wp_head', 'lightbox_styles');
↓
add_action('init', 'lightbox_styles');


FuncyBox for WordPress での対処

変更はfancybox.php 内、2箇所です。

1. 関数mfbfw_css() 内にある次の行を1行削除します。

	echo "\n".'<link rel="stylesheet" href="'. FBFW_URL . '/css/fancybox.css" type="text/css" media="screen" />'."\n";

2. コードの一番最後に次のコードを付け足します。

add_action('init', 'mfbfw_css_customize');
function mfbfw_css_customize(){
	$url = FBFW_URL . '/css/fancybox.css';
	wp_enqueue_style('mfbfw_css_customize', $url);
}





どちらのプラグインも、スタイルシートをインクルードする際はwp_enqueue_style() 関数を使うように変更しているだけです。

汎用性を持たせるために、WordPress には様々な関数が用意されていますが、wp_enqueue はこんなに重要だったんですね。プラグインを作るときは気をつけましょう。

カテゴリー: 技術資料 タグ: , , ,
関連記事
  1. grace
    2010 年 7 月 24 日 10:31 | #1

    警告が出るのと出ないのとでは、信頼面において大きな違いがあるので助かりました^^
    最初 wp-lightbox2 で該当箇所を探していて??? だったのですが、lightbox 系のプラグインは数が多いんですね。
    “wp-lightbox2”→“lightbox2”にインストールし直して無事解決しました。

  2. uscnanbu
    2010 年 7 月 24 日 14:30 | #2

    はい。

    FuncyBox もよく似た名前のものがあるので注意が必要です。

    解決してよかったです。

  3. 2010 年 7 月 26 日 10:03 | #3

    警告ダイアログはSSLを使用している時にとても厄介です。私も前回はwordpressを無理やりハックして消しました。。。
    今回は私もlightbox2を使用しているので、とても助かります。

  4. 2010 年 11 月 27 日 00:18 | #4

    貴重な内容ありがとうございました。感謝!
    SSLでの警告の原因がわからず戸惑っていました。
    FuncyBox for WordPressの問題だとわかり、指示通りの方法で回避できました。
    大変ありがとうございます。

  5. 2011 年 5 月 25 日 15:25 | #5

    wordpressのデフォルトのwedgitのRSSを表示すると、
    rss.pngのせいでSSLの警告が出るようです。
    削除すると出ませんでした。

    それとまったく別の話ですが
    こちらのサイトの会員登録をする際
    フリガナの項目に必須のマークが付いていませんでした。
    未入力ですと入力を促されました

  1. トラックバックはまだありません。
*