1. Strona główna
  2. Baza wiedzy
  3. WC Vendors
  4. Zaawansowana personalizacja i rozwój
  5. Fragmenty kodu
  6. Jak zatrzymać wyszukiwanie zamówień przed dopasowaniem adresów e-mail klientów
  1. Strona główna
  2. Baza wiedzy
  3. WC Vendors
  4. Zaawansowana personalizacja i rozwój
  5. Personalizacja pulpitu sprzedawcy
  6. Jak zatrzymać wyszukiwanie zamówień przed dopasowaniem adresów e-mail klientów
  1. Strona główna
  2. Baza wiedzy
  3. WC Vendors
  4. Zaawansowana personalizacja i rozwój
  5. Jak zatrzymać wyszukiwanie zamówień przed dopasowaniem adresów e-mail klientów
  1. Strona główna
  2. Baza wiedzy
  3. WC Vendors
  4. Jak zatrzymać wyszukiwanie zamówień przed dopasowaniem adresów e-mail klientów

Jak zatrzymać wyszukiwanie zamówień przed dopasowaniem adresów e-mail klientów

Martwisz się, że sprzedawcy na Twoim rynku nadal mogą znaleźć zamówienie, wpisując adres e-mail klienta, nawet po ukryciu e-maili? Takie jest dzisiaj oczekiwane zachowanie w WC Vendors. Nie ma wbudowanego ustawienia, aby wykluczyć e-mail z wyszukiwania zamówień na pulpicie sprzedawcy, i jest to całkowicie oddzielna kontrola od ustawienia, które ukrywa adresy e-mail do wyświetlania. Ten artykuł wyjaśnia, czym różnią się te dwie funkcje i przeprowadzi Cię przez fragment kodu, który usuwa dopasowywanie e-maili (oraz nazwy/adresu klienta) z pola wyszukiwania.

Zanim zaczniesz

  • Sposób na dodanie niestandardowego kodu PHP do Twojej witryny, albo w pliku functions.php motywu potomnego, wtyczce specyficznej dla witryny, albo we wtyczce WPCode Lite
  • WC Vendors aktywny, ze sprzedawcami, którzy już mają dostęp do swojej strony Zamówienia na pulpicie sprzedawcy
  • Staging site do pierwszego przetestowania, ponieważ zmienia to, czego sprzedawcy mogą szukać

Co faktycznie kontroluje ustawienie „E-mail klienta”

WC Vendors ma ustawienie o nazwie E-mail klienta, znajdujące się w Ustawienia → Uprawnienia → Zamówienia. Jest ono domyślnie włączone, a jego opis brzmi: „Zezwól sprzedawcom na przeglądanie adresu e-mail klienta”. Wyłączenie go ukrywa adres e-mail z tabeli zamówień sprzedawcy i z eksportów zamówień CSV.

Opcja E-mail klienta znajduje się w Ustawienia → Uprawnienia → Zamówienia.

To ustawienie kontroluje tylko to, co jest wyświetlane sprzedawcy. Nie ma wpływu na pole wyszukiwania Zamówień, ponieważ sprzedawca nadal może wpisać e-mail klienta w pole wyszukiwania i uzyskać dopasowanie, niezależnie od tego, czy uprawnienie E-mail klienta jest włączone, czy nie. Ukrywanie e-maili i wykluczanie ich z wyszukiwania to dwa oddzielne, niepowiązane zachowania.

Co ten poprawka może (i czego nie może) zrobić

WC Vendors nie przechowuje adresu e-mail klienta oddzielnie od reszty jego danych rozliczeniowych i wysyłkowych w kontekście wyszukiwania. Wyszukiwanie Zamówień dopasowuje się do jednego połączonego pola, które zawiera nazwę klienta, adres, numer telefonu i e-mail razem. Oznacza to, że nie ma możliwości wyłączenia dopasowywania tylko dla e-maila, pozostawiając włączone wyszukiwanie według nazwy lub adresu. Poniższy fragment wyłącza zarówno opcje wyszukiwania Wszystko, jak i Klient, co razem usuwa dopasowywanie według nazwy, adresu i e-maila, pozostawiając dostępne wyszukiwanie według Produktu i ID zamówienia.

Jest to również ograniczenie po stronie front-endu samego formularza wyszukiwania, a nie wzmocniona zasada egzekwowana po stronie serwera. Powstrzymuje sprzedawców przed wywołaniem dopasowania e-maila za pomocą zwykłej strony Zamówień, ale nie jest to gwarantowana granica prywatności ani zgodności. Jeśli potrzebujesz takiego poziomu pewności, otwórz zgłoszenie wsparcia, aby omówić swoje opcje.

Dodaj fragment kodu

  1. Otwórz plik, w którym przechowujesz niestandardowy kod dla swojej witryny. Może to być plik functions.php motywu potomnego, wtyczka specyficzna dla witryny lub nowy fragment w wtyczce WPCode Lite.
  2. Wklej poniższy kod i zapisz:
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. Opcjonalnie: zaktualizuj tekst zastępczy pola wyszukiwania, ponieważ domyślnie nadal wyświetla „Szukaj według ID, klienta, produktu lub adresu e-mail klienta”:
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. Odwiedź Panel sprzedawcy → Zamówienia jako sprzedawca (lub z uprawnieniami sprzedawcy) i potwierdź, że lista rozwijana Szukaj według zawiera teraz tylko Produkt i ID zamówienia.
Strona Zamówienia w Panelu sprzedawcy pokazująca listę rozwijaną „Szukaj według” z opcjami tylko „Produkt” i „ID zamówienia”

Rozwiązywanie problemów

Po dodaniu fragmentu kodu na liście rozwijanej „Szukaj według” nadal widnieją opcje „Wszystko” i „Klient”. Zwykle oznacza to, że kod został dodany do motywu lub wtyczki, która nie jest obecnie aktywna, lub wtyczka buforująca serwuje starszą wersję strony Zamówienia. Potwierdź, że fragment kodu znajduje się w Twoim aktywnym motywie lub aktywnej wtyczce, a następnie wyczyść pamięć podręczną stron lub obiektów i przeładuj stronę.

Sprzedawca nadal może znaleźć zamówienie, wyszukując nazwę lub adres klienta, a nie tylko adres e-mail. Jest to oczekiwane, ponieważ WC Vendors wyszukuje nazwę, adres i adres e-mail jako jedno połączone pole. Usunięcie opcji „Klient” i „Wszystko” powoduje również wykluczenie wyszukiwania według nazwy i adresu, a nie tylko adresu e-mail. Obecnie nie ma sposobu, aby zachować działanie wyszukiwania według nazwy lub adresu, jednocześnie wykluczając tylko adres e-mail.

Często zadawane pytania

Czy wyłączenie „E-mail klienta” w Ustawienia → Uprawnienia → Zamówienia również uniemożliwia sprzedawcom wyszukiwanie według adresu e-mail?
Nie. To ustawienie tylko ukrywa kolumnę adresu e-mail w tabeli zamówień i w eksportach CSV, nie jest w ogóle odczytywane przez funkcję wyszukiwania. Użyj powyższego fragmentu kodu, jeśli chcesz również zatrzymać dopasowywanie adresów e-mail przez wyszukiwanie.

Czy mogę usunąć tylko adres e-mail z wyszukiwania i zachować wyszukiwanie według nazwy klienta lub adresu?
Obecnie nie. WC Vendors przeszukuje dane rozliczeniowe i wysyłkowe klienta jako jedno połączone pole, więc nie ma możliwości wykluczenia tylko części dotyczącej adresu e-mail. Fragment kodu wyłącza obie opcje wyszukiwania: „Wszystko” i „Klient” jednocześnie.

Czy ten fragment wpływa również na ekran zamówień administratora WooCommerce?
Nie. Zmienia tylko listę rozwijaną „Szukaj według” na stronie Zamówienia w panelu sprzedawcy. Własne wyszukiwanie zamówień administratora w WooCommerce jest osobną funkcją i nie jest dotknięte.

Potrzebujesz pomocy?

Czy ten artykuł był pomocny?

Powiązane artykuły

Zakończ zakup