1. Casa
  2. Knowledge Base
  3. WC Vendors
  4. Personalizzazione e Sviluppo Avanzati
  5. Snippet di Codice
  6. Come impedire alla ricerca ordini di trovare corrispondenze con gli indirizzi email dei clienti
  1. Casa
  2. Knowledge Base
  3. WC Vendors
  4. Personalizzazione e Sviluppo Avanzati
  5. Personalizzazione della Dashboard del Venditore
  6. Come impedire alla ricerca ordini di trovare corrispondenze con gli indirizzi email dei clienti
  1. Casa
  2. Knowledge Base
  3. WC Vendors
  4. Personalizzazione e Sviluppo Avanzati
  5. Come impedire alla ricerca ordini di trovare corrispondenze con gli indirizzi email dei clienti
  1. Casa
  2. Knowledge Base
  3. WC Vendors
  4. Come impedire alla ricerca ordini di trovare corrispondenze con gli indirizzi email dei clienti

Come impedire alla ricerca ordini di trovare corrispondenze con gli indirizzi email dei clienti

Preoccupato che i fornitori sul tuo marketplace possano ancora trovare un ordine digitando l'indirizzo email di un cliente, anche dopo aver nascosto le email alla vista? Questo è il comportamento previsto in WC Vendors oggi. Non esiste un'impostazione integrata per escludere l'email dalla ricerca Ordini nella dashboard del fornitore, ed è un controllo completamente separato dall'impostazione che nasconde gli indirizzi email dalla visualizzazione. Questo articolo spiega in che modo le due funzionalità differiscono e ti guida attraverso uno snippet di codice che rimuove la corrispondenza di email (e nome/indirizzo del cliente) dalla casella di ricerca.

Prima di iniziare

  • Un modo per aggiungere codice PHP personalizzato al tuo sito, sia nel file functions.php del tuo child theme, in un plugin specifico per il sito o nel plugin WPCode Lite
  • WC Vendors attivo, con fornitori che hanno già accesso alla loro pagina Ordini nella dashboard del fornitore
  • Un sito di staging su cui testare prima, poiché questo modifica ciò che i fornitori possono cercare

Cosa controlla effettivamente l'impostazione "Email cliente"

WC Vendors ha un'impostazione chiamata Email cliente, che si trova in Impostazioni → Capacità → Ordini. È abilitata per impostazione predefinita e la sua descrizione recita "Consenti ai fornitori di visualizzare l'indirizzo email del cliente". Disattivarla nasconde l'indirizzo email dalla tabella degli ordini del fornitore e dalle esportazioni CSV degli ordini.

L’opzione Email Cliente si trova in Impostazioni → Capacità → Ordini.

Quell'impostazione controlla solo ciò che viene visualizzato al fornitore. Non ha alcun effetto sulla casella di ricerca degli Ordini poiché un fornitore può ancora digitare l'email di un cliente nel campo di ricerca e ottenere una corrispondenza, indipendentemente dal fatto che la capacità Email cliente sia attivata o meno. Nascondere l'email ed escluderla dalla ricerca sono due comportamenti separati e non collegati.

Cosa può (e non può) fare questa correzione

WC Vendors non memorizza l'email di un cliente separatamente dal resto dei suoi dettagli di fatturazione e spedizione per quanto riguarda la ricerca. La ricerca Ordini effettua corrispondenze su un campo combinato che include il nome, l'indirizzo, il numero di telefono e l'email del cliente insieme. Ciò significa che non c'è modo di disattivare la corrispondenza solo per l'email lasciando attive le ricerche per nome o indirizzo. Lo snippet seguente disattiva entrambe le opzioni di ricerca Tutto e Cliente, rimuovendo insieme le corrispondenze di nome, indirizzo ed email, lasciando disponibili le ricerche per Prodotto e ID ordine.

Questa è anche una restrizione front-end sul modulo di ricerca stesso, non una regola rafforzata applicata sul server. Impedisce ai fornitori di attivare una corrispondenza via email attraverso la normale pagina Ordini, ma non è un confine garantito per la privacy o la conformità. Se hai bisogno di questo livello di garanzia, apri un ticket di supporto per discutere le tue opzioni.

Aggiungi lo snippet di codice

  1. Apri il file in cui conservi il codice personalizzato per il tuo sito. Potrebbe essere il file functions.php del tuo child theme, un plugin specifico per il sito o un nuovo snippet nel plugin WPCode Lite.
  2. Incolla il seguente codice e salva:
add_filter( 'wcv_order_filter_select', function( $args ) {
    // Remove "All" and "Customer" — both match against the customer's
    // name, address, and email address as a combined field.
    unset( $args['options']['all'] );
    unset( $args['options']['customer'] );

    // Default to "Product" so an empty selection can't fall back
    // to an "All" search.
    if ( empty( $args['value'] ) ) {
        $args['value'] = 'product';
    }

    return $args;
} );
  1. Facoltativo: aggiorna il testo segnaposto della casella di ricerca, poiché per impostazione predefinita mostra ancora “Cerca per ID, cliente, prodotto o email cliente”:
add_filter( 'wcv_order_search_input', function( $args ) {
    $args['placeholder'] = __( 'Search by order ID or product', 'wc-vendors' );
    return $args;
} );

add_action( 'wp_head', function() {
    ?>
    <style>
       .wcv-search-box-wrapper div.control-group:has(input.wcv-search-box-input) {
	  width: 250px;
	}
    </style>
    <?php
} );
  1. Visita Dashboard Venditore → Ordini come venditore (o con permessi di venditore) e conferma che il menu a discesa Cerca per ora elenca solo Prodotto e ID Ordine.
Pagina Ordini della Dashboard Venditore che mostra il menu a discesa “Cerca per” con solo le opzioni “Prodotto” e “ID Ordine”

Risoluzione dei problemi

Il menu a discesa “Cerca per” mostra ancora “Tutti” e “Cliente” dopo l’aggiunta dello snippet. Ciò significa solitamente che il codice è stato aggiunto a un tema o plugin non attivo, oppure che un plugin di cache sta servendo una versione precedente della pagina Ordini. Conferma che lo snippet si trova nel tuo tema attivo o in un plugin attivo, quindi cancella la cache della pagina o degli oggetti e ricarica la pagina.

Un venditore può ancora trovare un ordine cercando il nome o l’indirizzo di un cliente, non solo l’email. Questo è previsto poiché WC Vendors cerca nome, indirizzo ed email come un unico campo combinato. La rimozione di “Cliente” e “Tutti” rimuove la corrispondenza di nome e indirizzo, non solo dell’email. Attualmente non c’è modo di mantenere attiva la ricerca per nome o indirizzo escludendo solo l’email.

Domande frequenti

Disattivare “Email Cliente” in Impostazioni → Capacità → Ordini impedisce anche ai venditori di cercare per email?
No. Questa impostazione nasconde solo la colonna email dalla tabella degli ordini e dalle esportazioni CSV, non viene letta dalla funzione di ricerca. Usa lo snippet di codice sopra se vuoi anche impedire alla ricerca stessa di trovare corrispondenze con gli indirizzi email.

Posso rimuovere solo l’email dalla ricerca e mantenere attiva la ricerca per nome o indirizzo del cliente?
Attualmente no. WC Vendors cerca i dettagli di fatturazione e spedizione del cliente come un unico campo combinato, quindi non c’è modo di escludere solo la parte dell’email. Lo snippet disattiva entrambe le opzioni di ricerca “Tutti” e “Cliente” insieme.

Questo snippet influisce anche sulla schermata degli ordini dell’amministratore di WooCommerce?
No. Modifica solo il menu a discesa “Cerca per” nella pagina Ordini della dashboard del venditore. La ricerca degli ordini dell’amministratore di WooCommerce è una funzionalità separata e non viene influenzata.

Serve aiuto?

Questo articolo è stato utile?

Articoli Correlati

Completa il tuo acquisto