• Resolved 3hikm

    (@3hikm)


    お世話になります。

    CF7のラジオ選択でパイプ文字によるメールの配送先を変更できるのですがこの機能を使用するとメールの配送分岐はされるのですがkintoneに登録でエラーが出てしまいます。

    エラー時のkintone form post errorのメールには

    array (
      0 => 'code: 400',
      1 => 'message: Bad Request',
      2 =>
      array (
        'record.種別.value' =>
        array (
          'messages' =>
          array (
            0 => '"[email protected]"は選択肢にありません。',
          ),
        ),
      ),
    )

    となっています。
    ※メールアドレスの部分は投稿にあたり適当なものに変更しています。

    CF7側では「 Value|[email protected] 」になっていてkintone側では「 Value 」としているのですがkintoneに送る際にパイプ以降のメールアドレス部分が送られてミスマッチになってしまってる感じです。
    kintone側をラジオではなくテキストにすると[email protected]が格納されるようです。

    お手数ですがご確認しただけると幸いです。

    • This topic was modified 2 years, 11 months ago by 3hikm.
Viewing 4 replies - 1 through 4 (of 4 total)
  • Thread Starter 3hikm

    (@3hikm)

    少し調べて無理やり回避させてみました。

    CF7のパイプでのメール分岐を使用した場合 WPCF7_Submissionのget_posted_data()で取得しようとするとパイプの後部分のメールアドレスが格納されてしまうようです。

    あまり好ましくはないと思いますが回避策が思いつかなかったため以下の対応をしました。
    $_POSTにはパイプの前部分が格納されているようなのでkintone-formのradio.phpの処理で$valueにセットしているデータを$_POSTから取得するように変更しました。
    これによりkintone側の整合性が取れてデータが格納できるようになりました。

    • This reply was modified 2 years, 11 months ago by 3hikm.
    Plugin Author Takashi Hosoya

    (@tkc49)

    @3hikm

    フォーラムへの投稿ありがとうございます!

    CF7側では「 Value|[email protected] 」になっていてkintone側では「 Value 」としているのですがkintoneに送る際にパイプ以降のメールアドレス部分が送られてミスマッチになってしまってる感じです。

    Value|[email protected] のようにパイプを使われている場合、「[email protected]」の値がkintoneに保存されるのは正常な動作かなと思います。
    Contact form 7でパイプを使う意味として、Value|[email protected] Valueと書かれていますが、この部分はラベルを意味し、[email protected]の部分が値を意味をしていると思うので、値の部分をkintoneに保存するのが正常な動きかなと思いました!

    なのでkintone側のラジオボタンの値を[email protected]などのメーアドレスに設定し、文字列(1行)のフィールドでらラジオボタンを参照するIF分などを使ってValueなどのラベル名を表示するように対応するのが良いかなと思いました。

    少し調べて無理やり回避させてみました。

    って書かれてるので、上記で書いたkintone側で調整する方法も検討していただければと!

    Thread Starter 3hikm

    (@3hikm)

    @tkc49

    返信ありがとうございます。

    kintoneをJSで触り始めたばかりのため検討違いのことであればすいません。
    掲示していただいたCF7側ではなくkintone側での調整も実際にやってみました。

    CF7で連携しているkintoneのアプリは連携以前から存在していて連携以外の問い合わせ関連も直接kintoneフォームを利用している状態です。
    そのためラジオで入ってくる種別の部分はそのまま残す必要があり掲示とは逆パターンのCF7からのメアドを文字フィールドに格納しその後もともとのラジオ部分変更してみました。
    実際にはうまくいったのですがどうしてもアプリを開いたときにレコード表示、更新のイベントが必要になってしまい当該アプリをルックアップしてるものにも同様のコードが必要になってしまいました。
    ※そもそもやり方が違う??

    そのためkintone側の修正が多くなってしまったので一旦$_POSTによる回避でいくことにします。ただ、今回掲示していただいた手法についてはその他でも利用できそうなので次回以降の設計時はこちらの手法で行いたいとおもいます。

    ご連絡と掲示 ありがとうございました。

    Plugin Author Takashi Hosoya

    (@tkc49)

    こちらクローズします!

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘パイプでのメール分岐での同時使用’ is closed to new replies.