以前のエントリーでmod_rewriteを使わずにmg404Rewriteを使ってパーマリンクを変更したという記事を書きました。
mg404Rewriteを使えばデフォルト以外のパーマリンクを設定することは確かに可能で、実際にパーマリンクを投稿名に設定すれば設定どおりのページが作成されることも確認しました。
ですが、その後動作確認も兼ねていろいろと試していたところ、うまくいかない部分が出てきました。
ところどころ動作しない点がある
最初に気がついたのはコメントフォームを設置しようと試していた時。
MW WP Formを使用してフォームを設置しようとしたのですが、プラグインを有効化して各設定をした後動作確認をしてみると、入力画面から確認画面へ移行しません。もちろんメールも送信されることはありませんでした。
相性もあるかもしれないと思い、次にContact7へ。こちらも有効化・設定の後動作確認をすると、送信を押したところでその状態が続き、送信完了までいきつきません。こちらもメールは送信されず。
ではメールを送信する部分に何か不具合があるのかもと思いましたが、この段階でWordPressを設置した時に送信されるサイト設置成功のメールは届いています。ついでにログイン画面でパスワードを忘れた場合の再設定から、ユーザー名でパスワード再設定メールを送信させた場合も問題なく届きます。
ならばコメントを投稿した際に送られてくるメールはどうだろうとコメントを投稿してみました。この時コメントの設定はすべて手動承認するようにしてあります。
すると、投稿後のコメント欄に承認待ちであることを表示するメッセージが表示されません。未承認コメント自体、そのコメントを投稿した本人にも表示されていなかった気がします。
ただコメントが投稿された事を知らせる「モデレートしてください」というメールは届きます。
mg404Rewriteがよろしくなかったらしい
さてどこの設定の結果こうなるのかと考えたところ、考えられるのはmg404Rewriteの有効化。確かにいずれも表示の問題が絡んでいるし、リダイレクト部分でうまくいってないのかもしれない。
そこでmg404Rewriteを無効にしてみようと思いましたが、まずは有効のままパーマリンクの設定をデフォルトに戻して試してみることに。
結果、メールフォームは問題なく送信まで移行。該当アドレスにメールも無事に届く。コメント欄に関しても、問題なく承認待ちメッセージが表示されました。
どうやらmg404Rewrite有効下でもパーマリンク設定がデフォルトでさえあれば問題ないようです。とはいってもデフォルトのままならmg404Rewriteはいらないわけですが。
素直にmod_rewriteを使います
他の設定部分を変更したり、そもそもコメント欄を使わない・メールフォームを別に用意するなどすれば、特に問題なく活用できるとは思うのですが、mod_rewriteを有効化できない環境というわけではないので、素直にusamimi.infoさんにmod_rewriteの有効化をお願いすることにしました。