parent
c79c3dd00b
commit
f1d89b018d
@ -0,0 +1,101 @@
|
||||
Read a field from wpfroms:
|
||||
```
|
||||
function wpf_dev_process_entry_save( $fields, $entry, $form_id, $form_data ) {
|
||||
// Only run on my form with ID = 4117
|
||||
if ( absint( $form_data['id'] ) !== 4117 ) {
|
||||
return $fields;
|
||||
}
|
||||
$_SESSION['age'] = $fields[3]['value']; // This is where we access the form data
|
||||
$_SESSION['gender'] = $fields[2]['value'];
|
||||
}
|
||||
```
|
||||
|
||||
Sign up using snippets:
|
||||
```
|
||||
$user_id = wp_insert_user( array(
|
||||
'user_login' => 'janedoe',
|
||||
'user_pass' => 'passwordgoeshere',
|
||||
'user_email' => 'jane.doe@example.com',
|
||||
'first_name' => 'Jane',
|
||||
'last_name' => 'Doe',
|
||||
'display_name' => 'Jane Doe',
|
||||
'role' => 'editor'
|
||||
));
|
||||
```
|
||||
more information:
|
||||
```
|
||||
$user_data = array(
|
||||
'ID' ( null | integer ),
|
||||
'user_pass' ( null | string ),
|
||||
'user_login' ( null | string ),
|
||||
'user_nicename' ( null | string ),
|
||||
'user_url' ( null | string ),
|
||||
'user_email' ( null | string ),
|
||||
'display_name'( null | string ),
|
||||
'nickname' ( null | string ),
|
||||
'first_name' ( null | string ),
|
||||
'last_name' ( null | string ),
|
||||
'description' ( null | string ),
|
||||
'user_registered' ( null | string ),
|
||||
'role' ( null | string ),
|
||||
'jabber' ( null | string ),
|
||||
'aim' ( null | string ),
|
||||
'yim' ( null | string ),
|
||||
'locale' ( null | string ) ,
|
||||
//...
|
||||
);
|
||||
```
|
||||
|
||||
Working example of signup and auto login combined together:
|
||||
```
|
||||
/**
|
||||
* This will fire at the very end of a (successful) form entry.
|
||||
*
|
||||
* @link https://wpforms.com/developers/wpforms_process_complete/
|
||||
*
|
||||
* @param array $fields Sanitized entry field values/properties.
|
||||
* @param array $entry Original $_POST global.
|
||||
* @param array $form_data Form data and settings.
|
||||
* @param int $entry_id Entry ID. Will return 0 if entry storage is disabled or using WPForms Lite.
|
||||
*/
|
||||
|
||||
function wpf_dev_process_complete( $fields, $entry, $form_data, $entry_id ) {
|
||||
|
||||
// Optional, you can limit to specific forms. Below, we restrict output to
|
||||
// form #5.
|
||||
if ( absint( $form_data['id'] ) !== 130 ) {
|
||||
return;
|
||||
}
|
||||
|
||||
$userFullName= $fields[7]['value'];
|
||||
$codeMeli= $fields[48]['value'];
|
||||
|
||||
//Create a user
|
||||
// Update user data
|
||||
$user_id = wp_insert_user( array(
|
||||
'display_name' => $userFullName,
|
||||
'user_login' => $codeMeli,
|
||||
'user_pass' => $codeMeli
|
||||
));
|
||||
// $result = wp_create_user( $codeMeli, $codeMeli);
|
||||
// if(is_wp_error($result)){
|
||||
// $error = $result->get_error_message();
|
||||
//handle error here
|
||||
// }else{
|
||||
// $user = get_user_by('id', $result);
|
||||
//handle successful creation here
|
||||
// }
|
||||
wp_signon(
|
||||
array(
|
||||
'user_login' => $codeMeli,
|
||||
'user_password' => $codeMeli,
|
||||
'remember' => true,
|
||||
)
|
||||
);
|
||||
}
|
||||
add_action( 'wpforms_process_complete', 'wpf_dev_process_complete', 10, 4 );
|
||||
```
|
||||
|
||||
sources:
|
||||
[Login/Signup snippets](https://usersinsights.com/create-wordpress-users-programmatically/#:~:text=The%20wp_create_user()%20function,get%20a%20WordPress%20error%20object.)
|
||||
[Autologin after signup in wpfroms](https://wpforms.com/developers/automatically-log-in-users-after-registration/)
|
Loading…
Reference in new issue