Gravity Form сохранить в таблицу usermeta базы данных

Я создал следующую функцию wordpress для сохранения формы, созданной в Gravity Forms, в базу данных usermeta на основе формы, которую я использовал для CF7, но она не работает, надеюсь, кто-то увидит, где я допустил ошибку. Необходимо обновить поля текущих пользователей.

add_action('gform_after_submission', 'input_fields', 10, 2);
function input_fields($entry, $form){

           $name = $entry['1'];
           $email = $entry['4'];

global $wpdb, $current_user;
$wpdb->insert(
'usermeta',
array(
'description' => $email,
'former_name' => $name
)
);
}

Я видел другие примеры, которые в значительной степени идентичны, поэтому я немного застрял.


person csuk1    schedule 02.02.2015    source источник


Ответы (2)


Это должно помочь:

add_action( 'gform_after_submission', 'input_fields', 10, 2 );
function input_fields( $entry, $form ) {

    $name = $entry[1];
    $email = $entry[4];

    update_user_meta( get_current_user_id(), 'description', $email );
    update_user_meta( get_current_user_id(), 'former_name', $name )

}

В качестве альтернативы я бы рекомендовал перейти на лицензию разработчика и получить доступ к надстройке User Registration. on, что сделало бы это еще проще. :)

person Dave from Gravity Wiz    schedule 06.02.2015
comment
Спасибо, это то, что я сделал! - person csuk1; 09.02.2015

Знак точки с запятой ";" отсутствует в строке 8, так что это правильный ответ. :)

add_action( 'gform_after_submission', 'input_fields', 10, 2 );
function input_fields( $entry, $form ) {

$name = $entry[1];
$email = $entry[4];

update_user_meta( get_current_user_id(), 'description', $email );
update_user_meta( get_current_user_id(), 'former_name', $name );

}
person OguzKaganAslan    schedule 14.08.2017