En el adjunto puede verse el código instalado en la carpeta Functions para cambiar "agotado" x "fuera de stock"...no funciona...
Contenido solo visible a usuarios registrados
Hola Alberto,
En este caso verifica si el siguiente código function te permite modificar el texto que necesitas
add_filter('gettext', 'translate_text');
add_filter('ngettext', 'translate_text');
function translate_text($translated) {
$translated = str_ireplace('Agotado', 'Fuera de stock', $translated);
return $translated;
}
Verifica esto y nos comentas como ha ido todo
Un Saludo
Hola Keren....si funciona...que interesante filtro...pero has puesto dos: gettex u ngettex
Ahora he puesto: sin stock-a la espera de entrada...entonces se podría utilizar este filtro para identificando determinados productos poner:"descabalgado"...??
Hola Alberto,
Enhorabuena funciona, un placer siempre poder ayudarte. Por otro lado disculpa si no comprendo bien tu ultima consulta, puedes explicarnos con mayor detalle a que te refieres con
Ahora he puesto: sin stock-a la espera de entrada...entonces se podría utilizar este filtro para identificando determinados productos poner:"descabalgado"...??
Un Saludo 😊
Mira el adjunto...puedo poner lo que quiera... entonces imagina que quiero que en determinados productos poner "descabalgado"...
Hola Alberto,
En este caso no sé si se aplique correctamente según cada producto, ten en cuenta que si modificas un texto este se modifica en toda la web
Sin embargo, realiza la prueba y nos comentas como ha ido todo
Un Saludo
Si bueno...esa era la pregunta...¿cómo incorporar al código el o los identificadores de producto?
Hola Alberto,
Ya entiendo, en este caso necesitas usar un código diferente que te permita especificarle según el ID de tu producto que texto se mostrara, para ello primero debes saber el ID del producto que tendrá un texto especifico
Luego en el siguiente código debes añadir el ID para este producto, de forma que se modifique el texto para este solo, por ejemplo
De esta forma, el producto con el ID 166 se mostrará el texto que configuramos para él mientras que el resto tendrá el texto general
El código para esto debe ser
function webempresa_woocommerce_get_availability_text_specific_product( $text, $product ) {
if( $product->get_id() == '166'){
$text = 'Texto especifico para producto';
} else {
$text = 'Texto general';
}
return $text;
}
add_filter( 'woocommerce_get_availability_text', 'webempresa_woocommerce_get_availability_text_specific_product', 999, 2);
Si en su lugar deseas añadir varios ID de productos, en este caso debes usar el siguiente codigo
function webempresa_woocommerce_get_availability_text_specific_product( $text, $product ) {
$product_ids = array("166", "67");
if( in_array( $product->get_id(), $product_ids ) ){
$text = 'Texto especifico para producto';
} else {
$text = 'Texto general';
}
return $text;
}
add_filter( 'woocommerce_get_availability_text', 'webempresa_woocommerce_get_availability_text_specific_product', 999, 2);
Donde menciona $product_ids = array("166", "67"); debes añadir los ID de los productos a los que se aplique el texto especifico
Un Saludo
He probado los dos y no me funcionan...te adjunto el código instalado...
Hola Alberto,
Realizando las pruebas en mi instalación veo que funciona, en este caso si tienes otros códigos añadidos dentro de tu función que afecten este código intenta borrarlo y comprueba si se aplica
De igual forma prueba borrar la cache de tu sitio web y comprueba si con ello se muestra el cambio
Así mismo veo que actualmente tienes este plugin en tu sitio web -> https://es.wordpress.org/plugins/woo-custom-stock-status/ el cual gestiona el texto del stock para un producto especifico, por lo que es posible que por ello el código no funcione, ya que el código del plugin sobreescirbe cualquier modificación que intentes hacer en el core de woocommerce, para verifica si este plugin impide su funcionamiento prueba desactivarlo y verifica si con ello se aplica el código que te indicamos
Revisa esto y nos comentas como ha ido todo
Un Saludo
Efectivamente...nada más desactivar el plugin aparece el texto del código como puedes ver en el adjunto....se ve en la ficha de producto... sin embargo no se ve en la vista general de página como también puedes ver en el adjunto...¿te pasa a ti lo mismo en tu prueba??
Hola Alberto.
Por defecto no es posible si no es con programación a media, con una función podrías asignar un texto genérico a todos los productos segun estado de Stock del producto pero no podrías definirlo por ID de producto.
Si necesitas algo a medida puedes ponerte en contacto con algún colaborador y te ayudaran en lop que buscas:
-> https://www.webempresa.com/directorio-colaboradores.html
En el Foro no damos soporte de programación solo podemos ofrecerte cosas estándar como hizo Karen pero no podemos meternos en temas de programación.
Un saludo