サポート » プラグイン » バックスラッシュ(円マーク)が消えます

  • 解決済 djcomkato

    (@djcomkato)


    いつもお世話になっております。

    Contact Form 7 2.0.3 から、フォーム内に記述したバックスラッシュ(円マーク)が消えてしまう問題が発生しています。
    2.0.6 でも改善していないことを確認しました。

    フォーム内に

    \10,000-

    と書いても、保存ボタンを押すと

    10,000-

    と消えてしまいます。
    エスケープが必要なのかと

    \\10,000-

    と書いてみましたが、最初の保存で\が1つになり、2回目で完全に消失します。

    ご確認とご対応のほど、よろしくお願い致します。

    p.s. WordCampお疲れさまでした。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • モデレーター Takayuki Miyoshi

    (@takayukister)

    すみません。またやらかしました。お知らせありがとうございます。

    次のバージョンで直っていると思います。

    モデレーター Takayuki Miyoshi

    (@takayukister)

    これ、よく調べてみたら WordPress 全般でみられる挙動ですね。投稿本文でも同じようにバックスラッシュが消えるんじゃないでしょうか。

    直接的にはデータベースに保存する前に stripslashes() でフィルタしていることが原因です。単純にこれを止めたらバックスラッシュは残りますが、その他のリスクについても考慮した上で対処を決めますので、どうなるかは未定ということでご理解ください。

    日本円の符号に限った話なら ¥ とか使えば回避できるんじゃないかな。実際試してないのでわかりませんが。

    トピック投稿者 djcomkato

    (@djcomkato)

    早速試してみましたが、記事本文では消えませんでした。
    ビジュアル、HTML双方で問題ありません。

    実は、phpは使えないので代わりにjavascriptをフォーム内に入れて、無理やり欲しい情報を抽出しており、この中でエスケープでバックスラッシュを使っています。
    これが消えてしまってうまく動かなくなってしまうので、ちょっと困っていました。

    ちなみに 2.0.2 on wp.2.8.4 では保存で消えることはありませんが、複製した時だけバックスラッシュが消えますね。

    トピック投稿者 djcomkato

    (@djcomkato)

    その問い合わせフォームが呼び出された時だけ実行すればよいコードをフォーム内に書いていましたが、大して負荷もない内容だったのでhead内に書き出して解決させました。

    対応保留とのご回答も頂いていますので、いったん「解決済み」と致します。

    ありがとうございました。

    モデレーター Takayuki Miyoshi

    (@takayukister)

    すいません、ずいぶん遅れてしまいましたが、

    これ、よく調べてみたら WordPress 全般でみられる挙動ですね。投稿本文でも同じようにバックスラッシュが消えるんじゃないでしょうか。

    と書いたんですが、どうもこれは私の環境がどこかおかしかったせいみたいです。お騒がせしてすみません。

    Contact Form 7 の対応については、引き続き検討中ですので、しばらくお待ちください。

    トピック投稿者 djcomkato

    (@djcomkato)

    (ちょっと古いトピック&ちょっと脱線しますが、同じエスケープ関連なのでここにつなげます)

    2.0.7くらい?からエスケープ(\)が消えなくなったことを確認いたしました。
    ご対応ありがとうございました。

    先ほど、2.0.2→2.1にアップグレードしてみたところ、全ての\,",'にエスケープが付くようになってしまっていました。
    余分なエスケープを全部消して再保存すれば再び付くことは無いようで、バージョンアップの際にだけ発生するようです。

    ご確認のほどよろしくお願い致します。

    モデレーター Takayuki Miyoshi

    (@takayukister)

    おそらくこれは古いバージョンで使用していた際に保存されたバックスラッシュが新しいバージョンで(stripslashes する仕様が変更されたために)表示されるようになったものと思います。書いていただいた内容の通りマニュアル編集でバックスラッシュを削除していただくと解決します。お手数ですが、そのようにお願いします.

    トピック投稿者 djcomkato

    (@djcomkato)

    う・・・やはりそうですか(T T)
    まだいくつかアップグレードしてないサイトがあるので、地道にアップグレードします
    ご回答ありがとうございました。

8件の返信を表示中 - 1 - 8件目 (全8件中)
  • トピック「バックスラッシュ(円マーク)が消えます」には新たに返信することはできません。