1. Inicio
  2. Base de Conocimiento
  3. WC Vendors
  4. Personalización y Desarrollo Avanzados
  5. Fragmentos de Código
  6. Cómo evitar que la búsqueda de pedidos coincida con las direcciones de correo electrónico de los clientes
  1. Inicio
  2. Base de Conocimiento
  3. WC Vendors
  4. Personalización y Desarrollo Avanzados
  5. Personalización del Panel del Vendedor
  6. Cómo evitar que la búsqueda de pedidos coincida con las direcciones de correo electrónico de los clientes
  1. Inicio
  2. Base de Conocimiento
  3. WC Vendors
  4. Personalización y Desarrollo Avanzados
  5. Cómo evitar que la búsqueda de pedidos coincida con las direcciones de correo electrónico de los clientes
  1. Inicio
  2. Base de Conocimiento
  3. WC Vendors
  4. Cómo evitar que la búsqueda de pedidos coincida con las direcciones de correo electrónico de los clientes

Cómo evitar que la búsqueda de pedidos coincida con las direcciones de correo electrónico de los clientes

¿Le preocupa que los vendedores de su mercado todavía puedan encontrar un pedido escribiendo la dirección de correo electrónico de un cliente, incluso después de haber ocultado los correos electrónicos de la vista? Ese es el comportamiento esperado en WC Vendors hoy en día. No hay una configuración incorporada para excluir el correo electrónico de la búsqueda de Pedidos en el panel del vendedor, y es un control completamente separado de la configuración que oculta las direcciones de correo electrónico de la visualización. Este artículo explica cómo difieren las dos funciones y lo guía a través de un fragmento de código que elimina la coincidencia de correo electrónico (y nombre/dirección del cliente) del cuadro de búsqueda.

Antes de empezar

  • Una forma de agregar código PHP personalizado a su sitio, ya sea en el archivo functions.php de su tema secundario, un complemento específico del sitio o el complemento WPCode Lite
  • WC Vendors activo, con vendedores que ya tienen acceso a su página de Pedidos en el panel del vendedor
  • Un sitio de prueba para probar primero, ya que esto cambia lo que los vendedores pueden buscar

Qué controla realmente la configuración "Correo electrónico del cliente"

WC Vendors tiene una configuración llamada Correo electrónico del cliente, que se encuentra en Ajustes → Capacidades → Pedidos. Está habilitada por defecto y su descripción dice "Permitir a los vendedores ver la dirección de correo electrónico del cliente". Desactivarla oculta la dirección de correo electrónico de la tabla de pedidos del vendedor y de las exportaciones de pedidos CSV.

La opción Correo electrónico del cliente se encuentra en Ajustes → Capacidades → Pedidos.

Esa configuración solo controla lo que se muestra al vendedor. No tiene ningún efecto en el cuadro de búsqueda de Pedidos, ya que un vendedor aún puede escribir el correo electrónico de un cliente en el campo de búsqueda y obtener una coincidencia, ya sea que la capacidad de Correo electrónico del cliente esté activada o no. Ocultar el correo electrónico y excluirlo de la búsqueda son dos comportamientos separados y no conectados.

Lo que esta corrección puede (y no puede) hacer

WC Vendors no almacena el correo electrónico de un cliente por separado del resto de sus datos de facturación y envío en lo que respecta a la búsqueda. La búsqueda de Pedidos coincide con un campo combinado que incluye el nombre, la dirección, el número de teléfono y el correo electrónico del cliente juntos. Eso significa que no hay forma de desactivar la coincidencia solo para el correo electrónico mientras se deja activada la búsqueda por nombre o dirección. El fragmento a continuación desactiva las opciones de búsqueda Todas y Cliente, lo que elimina la coincidencia de nombre, dirección y correo electrónico juntas, dejando disponibles las búsquedas de Producto y ID de pedido.

Esta es también una restricción del lado del cliente en el propio formulario de búsqueda, no una regla reforzada aplicada en el servidor. Evita que los vendedores activen una coincidencia de correo electrónico a través de la página normal de Pedidos, pero no es un límite garantizado de privacidad o cumplimiento. Si necesita ese nivel de seguridad, abra un ticket de soporte para discutir sus opciones.

Añadir el fragmento de código

  1. Abre el archivo donde guardas el código personalizado para tu sitio. Podría ser el archivo functions.php de tu tema hijo, un plugin específico del sitio o un nuevo fragmento en el plugin WPCode Lite.
  2. Pega el siguiente código y guarda:
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. Opcional: actualiza el texto de marcador de posición del cuadro de búsqueda, ya que de forma predeterminada todavía dice “Buscar por ID, cliente, producto o correo electrónico del 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 Panel del Vendedor → Pedidos como vendedor (o con permisos de vendedor) y confirma que el desplegable Buscar por ahora solo lista Producto y ID de pedido.
Página de Pedidos del Panel del Vendedor mostrando el desplegable "Buscar por" con solo las opciones "Producto" y "ID de pedido"

Solución de problemas

El desplegable “Buscar por” todavía muestra “Todos” y “Cliente” después de agregar el fragmento. Esto generalmente significa que el código se agregó a un tema o plugin que no está activo actualmente, o que un plugin de caché está sirviendo una versión anterior de la página de Pedidos. Confirma que el fragmento está en tu tema activo o en un plugin activo, luego borra la caché de la página u objeto y recarga la página.

Un vendedor todavía puede encontrar un pedido buscando el nombre o la dirección de un cliente, no solo el correo electrónico. Esto es lo esperado ya que WC Vendors busca el nombre, la dirección y el correo electrónico como un campo combinado. Eliminar “Cliente” y “Todos” elimina las coincidencias por nombre y dirección también, no solo por correo electrónico. Actualmente no hay forma de mantener la búsqueda por nombre o dirección funcionando mientras se excluye solo el correo electrónico.

Preguntas frecuentes

¿Desactivar “Correo electrónico del cliente” en Ajustes → Capacidades → Pedidos también impide que los vendedores busquen por correo electrónico?
No. Esa configuración solo oculta la columna de correo electrónico de la tabla de pedidos y de las exportaciones CSV, la función de búsqueda no la lee en absoluto. Usa el fragmento de código anterior si también quieres detener la búsqueda en sí misma para que no coincida con las direcciones de correo electrónico.

¿Puedo eliminar solo el correo electrónico de la búsqueda y mantener la búsqueda por nombre o dirección del cliente funcionando?
Actualmente no. WC Vendors busca los detalles de facturación y envío del cliente como un único campo combinado, por lo que no hay forma de excluir solo la parte del correo electrónico. El fragmento desactiva juntas las opciones de búsqueda “Todos” y “Cliente”.

¿Este fragmento afecta también a la pantalla de pedidos de administración de WooCommerce?
No. Solo cambia el desplegable “Buscar por” en la página de Pedidos del panel del vendedor. La búsqueda de pedidos de administración de WooCommerce es una función separada y no se ve afectada.

¿Necesitas ayuda?

¿Te ha resultado útil este artículo?

Artículos relacionados

Completa tu Compra