Skip to content

Configuración de Peek

Peek añade su propia página de ajustes al escritorio. Para administrarla, el usuario necesita la capacidad manage_woocommerce. Los valores se guardan en la opción peek_settings y se validan antes de persistirlos.

Puedes activar o desactivar la función, cambiar la etiqueta del botón y elegir su estilo. La posición tiene dos variantes:

  • Debajo de la tarjeta, mediante el hook posterior al elemento del bucle.
  • Sobre la imagen, visible al pasar el puntero y también al enfocar con teclado.

La opción de superposición no elimina el acceso por teclado. El botón sigue siendo un control real, con foco visible y nombre accesible.

El alcance determina en qué listados de WooCommerce se añade automáticamente Peek. Puedes limitarlo a la tienda y los archivos de producto, o incluir también los bucles de productos relacionados y ventas dirigidas en páginas de producto. Esto evita cargar recursos donde no forman parte del recorrido de compra.

Hay una regla fija: Peek no inserta automáticamente el botón en una página de producto individual. Si necesitas uno allí, utiliza [peek] o [peek_quick_view] con un ID explícito.

Además del cierre al pulsar el fondo, puedes configurar:

  • la visibilidad del encabezado del modal;
  • la visibilidad del botón de cierre y su etiqueta accesible;
  • el texto que aparece durante la carga;
  • el mensaje de error;
  • el texto del enlace a la página completa;
  • el prefijo utilizado antes del SKU.

Si borras uno de los campos de texto que necesita una etiqueta, al guardar se recupera el valor predeterminado incluido con el plugin.

Los controles de contenido permiten mostrar u ocultar las secciones ofrecidas por la edición gratuita:

  • galería;
  • imagen destacada;
  • título;
  • SKU;
  • precio;
  • stock;
  • descripción corta;
  • formulario de compra;
  • enlace a la página completa del producto.

El límite de imágenes de galería se normaliza entre 0 y 12. Un valor de 0 desactiva esa parte sin dejar un contenedor vacío.

Puedes decidir si una pulsación en el fondo cierra el diálogo. En cambio, estos comportamientos son fijos por accesibilidad:

  • Escape siempre cierra;
  • el foco queda atrapado mientras el diálogo está abierto;
  • al cerrar, el foco vuelve al control de origen;
  • el diálogo declara sus relaciones ARIA y usa una región viva para cambios relevantes.

El pequeño icono de ayuda de los ajustes usa la API nativa Popover cuando el navegador la admite y conserva title como alternativa.

La solicitud AJAX utiliza admin-ajax.php, la acción peek_quick_view y un nonce. Para visitantes sólo devuelve productos publicados. Un usuario con permiso para editar un producto puede previsualizarlo durante su trabajo editorial.

Peek no copia ni sustituye las plantillas del tema. Esto reduce el riesgo de que una actualización de WooCommerce deje una plantilla obsoleta. Para adaptar el aspecto, usa las variables CSS y los hooks de salida antes de recurrir a cambios estructurales.

HookTipoArgumentosUso
peek_quick_view_modal_dialog_startacciónningunoParte superior del diálogo.
peek_quick_view_before_cartacción$product, $settingsAntes del formulario de compra.
peek_quick_view_after_cartacción$product, $settingsDespués del formulario de compra.
peek_quick_view_content_endacción$product, $settingsFinal del contenido del producto.
peek_admin_settings_after_general_tableacción$settingsDespués de los ajustes generales.
peek_admin_settings_after_content_tableacción$settingsDespués de los ajustes de contenido.
peek_sanitize_settingsfiltro$sanitized, $rawModifica el array validado antes de guardarlo.

Ejemplo:

add_action( 'peek_quick_view_before_cart', function ( $product, $settings ) {
if ( ! $product instanceof WC_Product ) {
return;
}
echo '<p class="my-peek-note">' . esc_html__( 'Ships from our warehouse.', 'my-plugin' ) . '</p>';
}, 10, 2 );

El filtro peek_sanitize_settings debe devolver siempre un array ya preparado para guardar. Valida de nuevo cualquier valor añadido por tu extensión.

Al desinstalar, Peek elimina peek_settings y peek_db_version. No borra productos, pedidos, clientes ni otros datos de WooCommerce.