Wordpress プラグインのcfomsIIをSSL対応を無理やりさせました。
単純な話、SSLではない(http://でアクセスした)場合にフォームを表示させないだけです。

PHP:
  1. ### SSL check
  2.     if ( $_SERVER['SERVER_PORT'] == 80 ){
  3.         $zServerUri = 'https://' . $_SERVER["SERVER_NAME"] . $_SERVER['REQUEST_URI'];
  4.         $content .= sprintf('<p><a href="%s">SSL対応ページから入力できます。</a></p>', $zServerUri);
  5.         return $content;
  6.     }

やってることは、サーバーポートが80以外だったらフォームを出力せずに、メッセージ「SSL対応ページから入力できます。」と表示させてるだけです。cforms.phpの280行目あたりに「### alternative form action」と書かれたコメントがあります。ここでフォームを生成しているので、この上の部分に書き込めばOKです。

日本語で直に書き込む場合、文字コードをUTF-8で保存することを忘れずに。

これで、SSL対応できると思います。サーバーポートについては環境によって変わってくるので、きっちりやりたい場合には ポート番号443以外であったらメッセージを表示させたほうがよいかもしれません。

Leave a Reply