djcomkato
メンバー
1 ヶ月前の投稿 #
いつもお世話になっております。
Contact Form 7 2.0.3 から、フォーム内に記述したバックスラッシュ(円マーク)が消えてしまう問題が発生しています。
2.0.6 でも改善していないことを確認しました。
フォーム内に
\10,000-
と書いても、保存ボタンを押すと
10,000-
と消えてしまいます。
エスケープが必要なのかと
\\10,000-
と書いてみましたが、最初の保存で\が1つになり、2回目で完全に消失します。
ご確認とご対応のほど、よろしくお願い致します。
p.s. WordCampお疲れさまでした。
takayukister
管理者
1 ヶ月前の投稿 #
すみません。またやらかしました。お知らせありがとうございます。
次のバージョンで直っていると思います。
takayukister
管理者
1 ヶ月前の投稿 #
これ、よく調べてみたら WordPress 全般でみられる挙動ですね。投稿本文でも同じようにバックスラッシュが消えるんじゃないでしょうか。
直接的にはデータベースに保存する前に stripslashes() でフィルタしていることが原因です。単純にこれを止めたらバックスラッシュは残りますが、その他のリスクについても考慮した上で対処を決めますので、どうなるかは未定ということでご理解ください。
日本円の符号に限った話なら ¥ とか使えば回避できるんじゃないかな。実際試してないのでわかりませんが。
djcomkato
メンバー
1 ヶ月前の投稿 #
早速試してみましたが、記事本文では消えませんでした。
ビジュアル、HTML双方で問題ありません。
実は、phpは使えないので代わりにjavascriptをフォーム内に入れて、無理やり欲しい情報を抽出しており、この中でエスケープでバックスラッシュを使っています。
これが消えてしまってうまく動かなくなってしまうので、ちょっと困っていました。
ちなみに 2.0.2 on wp.2.8.4 では保存で消えることはありませんが、複製した時だけバックスラッシュが消えますね。
djcomkato
メンバー
1 ヶ月前の投稿 #
その問い合わせフォームが呼び出された時だけ実行すればよいコードをフォーム内に書いていましたが、大して負荷もない内容だったのでhead内に書き出して解決させました。
対応保留とのご回答も頂いていますので、いったん「解決済み」と致します。
ありがとうございました。
takayukister
管理者
2 週前の投稿 #
すいません、ずいぶん遅れてしまいましたが、
これ、よく調べてみたら WordPress 全般でみられる挙動ですね。投稿本文でも同じようにバックスラッシュが消えるんじゃないでしょうか。
と書いたんですが、どうもこれは私の環境がどこかおかしかったせいみたいです。お騒がせしてすみません。
Contact Form 7 の対応については、引き続き検討中ですので、しばらくお待ちください。