✅ Noticias, temas, complementos de WEB y WordPress. Aquí compartimos consejos y las mejores soluciones para sitios web.

Cómo cambiar textos comunes de WooCommerce con código

73

WooCommerce está repleto de filtros, ganchos y funciones para ayudarlo a personalizar y utilizar el complemento en su tema o complemento. Aquí hay algunos ejemplos de código pequeños, pero útiles, a-ha y procedimientos de cambios comunes de diferentes salidas de texto.

Cambiar los textos del botón "Agregar al carrito"

Hay dos filtros; uno para los textos de “agregar al carrito" en loop (woocommerce_product_add_to_cart_text), y otro para el botón en producto único (woocommerce_product_single_add_to_cart_text):

// Single product view add_filter('woocommerce_product_single_add_to_cart_text', function($text) { return __('Buy this now', 'txtdomain'); });   // Loop add_filter('woocommerce_product_add_to_cart_text', function($text) { return __('Buy this', 'txtdomain'); });

Sin embargo, tenga en cuenta que esto anula todos los textos de "Agregar al carrito". Incluso aquellos que originalmente eran “Seleccionar opciones” (productos variables) o “Leer más” (productos no adquiribles – sin precio o sin stock). Si desea más ajustes, incluya el segundo argumento para estos filtros; el objeto del producto. Utilice el objeto del producto para controlar condicionalmente la salida. Por ejemplo, por tipo de producto o si el producto se puede comprar o no:

Cambiar la salida del rango de precios en productos variables y agrupados

De forma predeterminada, WooCommerce mostrará el precio más bajo y más alto en productos variables y agrupados, con un "-" en el medio. Puede modificar muy fácilmente esta salida de rango. Por ejemplo, asegúrese de que solo muestre el precio más bajo, en forma de "Desde:". WooCommerce tiene un filtro para productos variables y otro para productos agrupados, así que veamos ambos a la vez.

El control de la salida HTML del rango de precios para productos variables se realiza con el filtro woocommerce_variable_price_html. El objeto del producto se proporciona como segundo argumento.

Dentro de la función necesitamos obtener todos los precios. WooCommerce ofrece una función útil en objetos de productos variables, get_variation_prices(). Esto devuelve una matriz de todos los precios de las variantes, ordenados por el más bajo primero. Todo lo que tenemos que hacer es extraer el primer elemento de la matriz de precios y generarlo correctamente:

El filtro de salida HTML de rango de precios para productos agrupados es muy similar a los productos variables pero con una diferencia; se incluye una matriz de todos los precios de los productos "niños" agrupados como argumento para el filtro. El filtro a utilizar es woocommerce_grouped_price_html:

Modificar salida de texto de estado de existencias

Si ha activado la visualización del estado del stock en la configuración de WooCommerce, debería mostrar la cantidad precisa de stock que queda en la vista de un solo producto (por ejemplo, "42 en stock"). Sin embargo, puede modificar la salida para mostrar un rango en lugar de la cantidad precisa. O simplemente "En stock" si desea ocultar el número.

El filtro para hacer esto es woocommerce_get_stock_htmly si incluye el segundo argumento, obtiene el objeto del producto. Con el objeto del producto puede realizar las operaciones necesarias para ajustar la salida. Tenga en cuenta que la salida filtrable está envuelta dentro de un <p>elemento, y su salida también debería hacerlo.

Para simplemente mostrar "En stock" o "No en stock" esto será suficiente:

Mostrar stock en "valores de rango" se puede hacer así:

Cambiar el nombre de los estados de los pedidos

A veces, un cliente quiere etiquetas diferentes en los estados de los pedidos para que tengan más sentido de acuerdo con las prácticas de su tienda web. Por ejemplo, es posible que desee cambiar el nombre de "En espera" a "Sin enviar" o "Completado" a "Enviado". Solo para que tenga más sentido qué pedidos deben enviarse y cuáles ya se han enviado. WooCommerce ofrece un filtro simple, wc_order_statuses, en todos los nombres de estados de pedidos disponibles.

add_filter('wc_order_statuses', function($order_statuses) { $order_statuses['wc-on-hold'] = __('Unsent', 'txtdomain'); $order_statuses['wc-completed'] = __('Sent', 'txtdomain'); return $order_statuses; });

Las teclas disponibles son wc-pending, wc-processing, wc-on-hold, wc-completed, wc-cancelled, wc-refundedy wc-failed.

Fuente de grabación: awhitepixel.com

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More