2016-11-05 8 views
0

おはようみんなを投稿して忍者のフォームからのデータは(Chimpmailに類似)Enormailに送信します。不幸にも、EnormailはChimpmailほどサポートされていませんが、私のクライアントはこのサービスを使いたいと思います。忍者フォームは、私がEnormailのAPIに取り組んでいます</p> <p>、プロセス

今、私は私ののfunctions.phpで働いて、次のコードを持っているが、動作していないよう:

function add_to_enormail($form_id) { 
    global $ninja_forms_processing; 
    $form_id = $ninja_forms_processing->get_form_ID(); 
    if ( $form_id == 2 || $form_id == 3) { 
     switch ($form_id) { 
     case 1: //Form 1 
      $ninjamail = $ninja_forms_processing->get_field_value(6); 
      break; 
     case 2: //Form 2 
      $ninjaname = $ninja_forms_processing->get_field_value(13); 
      $ninjamail = $ninja_forms_processing->get_field_value(10); 
      break; 
    } 
    } 
    require_once ('/emapi/emapi.php'); 
    $em = new emapi('API KEY OF USER', 'JSON'); 
    $result = $em->contacts->add('API OF CERTAIN LIST', $ninjaname, $ninjamail); 
}; 

add_action('ninja_forms_post_process', 'add_to_enormail'); 

私は、ユーザーを別のPHPファイル内のrequire_onceコードを追加して、それを直接呼び出す場合これはEnormailサービスに追加されているので、APIは正常に動作しています。 しかし、私はデータをフィールドの中に入れて、それをAPIの中に入れてメーリングリストにユーザーを追加することはできないようです。

ここで何が問題になりますか。 ありがとう

+0

'require_once( '/emapi/emapi.php');'ファイルパスは本当ですか?注意: '/'はルートディレクトリを指します。 –

+0

はい、正しいファイルパスは( 'emapi/emapi.php') ですが、変数$ ninjanameと$ ninjamailは正しく動作していません。 $ result = $ em-> contacts-> add( 'API of CERTAIN LIST'、 'Henk Rensenbrink'、 'my email')のような文字列を追加するだけです。それは正しく追加されますが、変数は何もしません。 –

答えて

2

ファイルのパスは本当にありますか? require_once ('/emapi/emapi.php');

/は、ルートディレクトリを指します。ファイルパスを確認してください。

+0

はい、あなたは正しいです、正しいファイルパスは( 'emapi/emapi.php')ですが、変数$ ninjanameと$ ninjamailはまだ正しく動作していません。 $ result = $ em-> contacts-> add( 'API of CERTAIN LIST'、 'Henk Rensenbrink'、 'my email')のような文字列を追加するだけです。それは正しく追加されますが、変数は何もしません。 私も試しました: $ result = $ em-> contacts-> add( 'API of CERTAIN LIST'、 '。$ ninjaname。'、 '。$ ninjamail。'); –

+0

次にfield_idで電子メールと名前を確認してください。 –

0
function add_to_enormail() { 
    global $ninja_forms_processing; 
    $form_id = $ninja_forms_processing->get_form_ID(); 
    if ($form_id == 3) { 
      $ninjaname = $ninja_forms_processing->get_field_value(13); 
      $ninjamail = $ninja_forms_processing->get_field_value(10); 
    } else if ($form_id == 2) { 
      $ninjaname = $ninja_forms_processing->get_field_value(14); 
      $ninjamail = $ninja_forms_processing->get_field_value(6); 
    } 
require_once ('emapi/emapi.php'); 
$em = new emapi('API KEY', 'JSON'); 
$result = $em->contacts->add('LIST API', $ninjaname, $ninjamail); 
}; 

add_action('ninja_forms_post_process', 'add_to_enormail'); 

これは私の問題を解決しました。これにより、両方のフォームが忍者フォームからEnormailにデータを送信しています。またディレクトリの始まりを指摘してくれたKhorshed Alamに感謝します。

関連する問題