Il tuo carrello è vuoto!
Auto Populate
apply_filters_ref_array( 'vikappointments_auto_populate_custom_fields', bool $status, array &$data, array $fields, mixed $user )
Fires while binding the values of the custom fields.
Description
Trigger hook to allow external plugins to auto-populate the custom fields with other details that are not supported by default by the user instance.
Parameters
- $status
-
(bool) True on success, false otherwise.
- &$data
-
(array) Where to inject the fetched data. The keys of the array are equals to the name of the custom fields.
- $fields
-
(array) An array of custom fields.
- $user
-
(mixed) The user instance.
Example
This example auto-fill the address custom field with the street name assigned to the currently logged-in user, assuming that $user->address
has been supported by a third party plugin.
/**
* Trigger hook to allow external plugins to auto-populate the custom fields
* with other details that are not supported by default by the user instance.
*
* @param boolean $status True on success, false otherwise.
* @param mixed &$data Where to inject the fetched data.
* @param array $fields The custom fields list to display.
* @param mixed $user The details of the user.
*/
add_filter('vikappointments_auto_populate_custom_fields', function($status, &$data, $fields, $user)
{
if (empty($user->address))
{
// make sure the address is not empty
return false;
}
$addrFields = array();
// search for an address field
foreach ($fields as $cf)
{
if ($cf['rule'] == 'address')
{
$addrFields[] = $cf;
}
}
if ($addrFields)
{
// fetch field key
$key = $addrFields[0]['name'];
// register address value with the address assigned to the user
$data[$key] = $user->address;
}
return $status;
}, 10, 4);
Changelog
Version | Description |
---|---|
1.2 | Introduced. |
Ultimo aggiornamento: 2021-10-08
Utile?