WordPressパーマリンクカスタム設定とHTTPSプラグインの関係

WordPressで、お問合わせフォームなどSSL表示したい時、
プラグイン「WordPress HTTPS」を使うと便利なんですが・・・

WordPressパーマリンクカスタム設定していると、余計なリダイレクトが効くようで
普通に、固定ページに「Secure post」にチェックを入れただけでは自動でSSL表示に切り替えてくれないんですね。

今後も起こりうることなので、あらためてメモ残して起きます。

php on PAGESプラグインで、拡張子を.htmlや.phpを表示させている場合は
下記の参考にさせていただいたページのように、一部書き換えが必要でした。
http://solidoor.gluum.com/wordpress/119/
以下[lib/WordPressHTTPS/Module/Core.php]書き換え箇所抜粋させて頂きます。m(_ _)m

[php]
public function secure_exclusive( $force_ssl, $post_id = 0, $url = ” ) {
if ( is_null($force_ssl) && $this->getPlugin()->isUrlLocal($url) && $this->getPlugin()->getSetting(‘exclusive_https’) ) {
$force_ssl = false;
}
return $force_ssl;
}
[/php]
↓↓↓
[php]
public function secure_exclusive( $force_ssl, $post_id = 0, $url = ” ) {
global $wpdb;

if ( is_null($force_ssl) && $this->getPlugin()->isUrlLocal($url) && $this->getPlugin()->getSetting(‘exclusive_https’) ) {
if ( $post_id > 0 ) {
$force_ssl = ( get_post_meta($post_id, ‘force_ssl’, true) == 1 ? true : false);
}
}
return $force_ssl;
}
[/php]

たまたま、追加機能設定したWPでForce SSL Exclusivelyが効いているらしいことに気づいて
検索してヒットした修正内容でした。ありがとうございます。
htacsessでリダイレクトも試したのですが
パーマリンクのリダイレクトがある上に、リダイレクトでループしてしまい・・・一瞬焦りました。

HTTPSプラグインを先にインストール設定して、カスタムパーマリンク設定した場合は
プラグイン内phpの書き換えしないでも、
カスタムメニューのリンク先を強制的にSSLのURL指定すれば
Secure post」にチェックを入れた固定ページはSSLで表示されました。
(WP3.9 たまたまかも・・・^_^;)

パーマリンクカスタム設定した場合
WordPress HTTPプラグインで表示される指定ページは、HTTPS表示されるというよりは
戻りリンク(「Secure post」にチェックを入れていないページへのリンク)が
HTTPに自動で表示されるととらえるといいかもしれませんね。

なので、カスタムメニューなどWPの機能でメニューを生成する際
SSL表示させたいページのURLを、手動でhttpsに指定すると
「Secure post」にチェックを入れたページはSSL表示され
その他のリンク先ページはhttpになります。

うーん。これ書いておいて、自分で次回読んだ時、意味がわかるのかが不明。
すみません。毎回、自分用メモで・・・

コメント