お世話になります。よろしくお願いいたします。
###前提・実現したいこと
ロリポップ!のスタンダードプランを利用しており、
Wordpressをインストールし、サブディレクトリ型のマルチサイトの環境を
構築しました。
PHPのバージョンは、5.6(モジュール版)、Wordpressのバージョンは最新の4.9.1です。
親サイト、子サイト両方で、カウンセリング予約のシステムを作成したいため、
MTS Simple Booking Cのプラグインをインストールし、
「サイトネットワークで有効化」ではなく、
親サイト、子サイト、それぞれでプラグインを有効化しました。
子サイトの方で、予約確認画面に進もうとすると、403エラーが発生したため、
ロリポップのWAF設定のログを確認したところ、「bof-try-2」が検出されました。
.htaccessに、「bof-try-2」を除外する記述を追記しました。
その後は、子サイトでも無事予約登録できるようになりました。
しかし、子サイトの方は、予約フォームにある、「メッセージ」欄に入力した内容が
予約確認画面に出力されず、データとしても保存されません。
ソースコードを表示させてみましたところ、
「メッセージ」欄で使われている<textarea>タグのname属性が
壊れていることがわかりました。
親サイトの方は問題ありません。
子サイトでも、「メッセージ」欄に入力した内容が予約確認画面に表示され、
正しく保存されるようにしたいのですが、解決策が分からず、投稿させていただきました。
###発生している問題・エラーメッセージ
(子サイト)※name属性の出力がおかしい。"booking[note]"の”[note]"の部分が、なぜか、<div>タグに置き換えられてしまっています。
<textarea id="booking-note" class="content-text fat" name="booking<div class="su-note" style="border-color:#e5e55c;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;"><div class="su-note-inner su-clearfix" style="background-color:#FFFF66;border-color:#ffffe0;color:#333333;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;"></div></div>" rows="5" cols="200"></textarea>
(親サイト)※問題なく出力されている
<textarea id="booking-note" class="content-text fat" name="booking[note]" rows="5" cols="200"></textarea>
###試したこと
・親サイトと子サイトで適用していたテーマが違っていたので、そろえましたが、状況変わりませんでした。
・子サイトで置き換えられてしまった<div>タグのclass属性"su-note"が悪さしている?と思いましたが、"su-note"が定義されている箇所?ファイル?を探し出すことができませんでした・・・。
###該当のファイル・関数
(プラグイン中のファイルで、何も編集していません)
.../wp-content/plugins/mts-simple-booking-c/mtssb-booking-form.php
※該当関数:_input_form()

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/01/07 14:08