Riassunto AI
Desideri limitare quali utenti possono visualizzare l'elenco dei Fogli Google connessi durante la configurazione di una connessione Fogli Google in WPForms? Per impostazione predefinita, qualsiasi utente con accesso al generatore di moduli può vedere ogni foglio di calcolo associato all'account Google connesso, il che potrebbe essere una preoccupazione per la privacy sui siti con più utenti backend.
Questa guida ti mostrerà come limitare l'accesso al selettore di Fogli Google utilizzando uno snippet di codice personalizzato.
Creazione dello Snippet
Prima di iniziare, assicurati di consultare la nostra guida su come aggiungere snippet di codice personalizzati al tuo sito.
Il selettore di Fogli Google carica i suoi dati tramite un endpoint AJAX quando un utente apre il provider di Fogli Google nel generatore di moduli. Agganciandoti al filtro wpforms_providers_settings_builder_ajax_access_token_data_get_google-sheets, puoi aggiungere un controllo dei permessi prima che l'elenco dei fogli di calcolo venga restituito.
Di seguito tratteremo due scenari comuni.
Limitare l'accesso solo agli amministratori
Lo snippet seguente limita l'accesso al selettore di Fogli Google agli utenti con la capacità manage_options. Per impostazione predefinita, questa è limitata agli amministratori.
/**
* Restrict the Google Sheets picker to administrators only.
*
* @link https://wpforms.com/developers/
*/
add_filter( 'wpforms_providers_settings_builder_ajax_access_token_data_get_google-sheets', 'wpf_restrict_picker_access_admins_only', 9 );
function wpf_restrict_picker_access_admins_only(): void {
// Restrict access to users with manage_options capability (administrators by default).
if ( ! current_user_can( 'manage_options' ) ) {
wp_send_json_error( 403 );
}
}
Una volta aggiunto questo snippet al tuo sito, qualsiasi utente non amministratore che tenti di aprire il selettore di Fogli Google riceverà un errore 403 invece di vedere l'elenco dei fogli di calcolo connessi. Gli amministratori continueranno a vedere il selettore esattamente come prima.
Limitare l'accesso a un utente specifico
Se preferisci limitare l'accesso a un singolo utente, puoi invece controllare un ID utente specifico. Questo è utile quando solo una persona del tuo team dovrebbe essere autorizzata a gestire le connessioni Fogli Google.
/**
* Restrict the Google Sheets picker to a specific user.
*
* @link https://wpforms.com/developers/
*/
add_filter( 'wpforms_providers_settings_builder_ajax_access_token_data_get_google-sheets', 'wpf_restrict_picker_access_single_user', 9 );
function wpf_restrict_picker_access_single_user(): void {
// Restrict access to a specific user ID. Replace 1 with the desired user ID.
if ( get_current_user_id() !== 1 ) {
wp_send_json_error( 403 );
}
}
Assicurati di sostituire 1 con l'ID dell'utente a cui desideri consentire l'accesso. Puoi trovare l'ID di un utente andando su Utenti nel tuo pannello di amministrazione di WordPress e passando il mouse sopra il nome dell'utente. L'ID appare nell'URL del link di modifica.
Fatto! Hai limitato con successo l'accesso al selettore di Fogli Google in WPForms. Desideri personalizzare altre parti dell'integrazione Fogli Google? Dai un'occhiata alla nostra guida su come configurare l'addon Fogli Google con WPForms.