Hola buenas tardes.
Queria preguntaros como podria cambiar el nombre de una de las cuatro pestañas inferiores que se encuentran en nuestras paginas de productos (en parte inferior de las paginas de productos tenemos cuatro pestañas la primera es Caracteristicas como podria cambiar el nombre de Caracteristicas por ejemplo para todas las paginas de productos en español e ingles). Tambien como podria añadir una 5ª pestaña?
Muchas gracias
Saludos
Jose Carlos
Contenido solo visible a usuarios registrados
Hola Jose Carlos,
Todo depende cuál pestaña quieres modificar, puedes enviarnos alguna captura sobre cuál quieres cambiar? de manera general puedes probar cambiarlo utilizando un código en el function.php de tu tema o un plugin como code snippets
function translate_any_text_wp( $translated_text ) {
if ( 'Texto Antiguo' === $translated_text ) {
$translated_text = 'Nuevo Texto';
}
return $translated_text;
}
add_filter( 'gettext', 'translate_any_text_wp', 20 );
Puedes verificar todo el procedimiento en el siguiente enlace que tenemos disponible → https://www.webempresa.com/blog/traducir-o-reemplazar-textos-en-wordpress-a-traves-de-tu-function-php.html
Por otro lado, si lo que quieres es añadir una nueva pestañas en los productos de WooCommerce, puedes utilizar un plugin como → https://wordpress.org/plugins/yikes-inc-easy-custom-woocommerce-product-tabs/
En el siguiente artículo explican de forma detallada como funciona → https://www.webempresa.com/blog/agregar-pestanas-personalizadas-a-productos-en-woocommerce.html
Verifícalo y nos comentas como va todo
Un Saludo
Hola Karen buenos dias.
Me ha sido de gran ayuda tu explicación, ya he cambiado los textos que deseaba y todo ok!!!! Solamente queria preguntarte como puedo borrar una de estas pestañas? O tambien pense que en vez de borrarla podria cambia el texto de la pestaña pero deseaba cambiar el contenido de esta pestaña por un enalce a una categoria.
Muchisimas gracias por tu ayuda
Saludos
Jose Carlos
Hola Jose Carlos.
Se podría eliminar con el ID de esa pestaña, por ejemplo para las pestañas que tienes:
// Eliminar una pestaña específica en la página de producto
add_filter( 'woocommerce_product_tabs', 'eliminar_pestana_woocommerce', 98 );
function eliminar_pestana_woocommerce( $tabs ) {
//unset( $tabs['additional_information'] ); // Elimina la pestaña 'Información adicional'
//unset( $tabs['description'] ); // Elimina la pestaña 'Bodega'
//unset( $tabs['reviews'] ); // Elimina la pestaña 'Reseñas'
//unset( $tabs['desc_tab'] ); // Elimina la pestaña 'Notas de cata'
unset( $tabs['car_tab'] ); // Elimina la pestaña 'Ficha Técnica'
return $tabs;
}
En este ejemplo solo se eliminaría la pestaña Ficha Técnica
Para mostrar las pestañas solo tienes que eliminar los comentarios que hay antes de unset
Un saludo
Hola Pepe buenos dias.
Gracias por la explicacion. Hemos estado analizandolo y pensamos más conveniente cambiar el nombre de la ultima pestaña y cambiar el contenido de esta pestaña para introducir algo como 3 productos relacionados (la misma idea y layout que Te recomendamos que aparece abajo del todo en la pagina de producto). Como prodriamos realizar este cambio?
La idea de este cambio es introducir más posibilidades de conversion en ventas, que te parece la idea? Alguna sugerencia al respecto?
Muchas gracias
Saludos
Jose Carlos
Hola Jose Carlos.
Puedes añadir una pestaña mas con productos recomendados:
// Añadir una nueva pestaña personalizada en la ficha de producto
add_filter( 'woocommerce_product_tabs', 'agregar_pestana_productos_recomendados' );
function agregar_pestana_productos_recomendados( $tabs ) {
$tabs['productos_recomendados'] = array(
'title' => __( 'Productos Recomendados', 'tu-text-domain' ), // Nombre de la pestaña
'priority' => 50, // Posición de la pestaña
'callback' => 'contenido_pestana_productos_recomendados', // Función que genera el contenido
);
return $tabs;
}
// Contenido de la pestaña de productos recomendados
function contenido_pestana_productos_recomendados() {
// Mostrar productos recomendados
echo '<h2>' . __( 'Productos que te pueden interesar', 'tu-text-domain' ) . '</h2>';
echo do_shortcode('[products limit="3" columns="3" orderby="rand"]'); // Shortcode para mostrar productos aleatorios
}
El código lo puedes añadir el el archivo functions.php o si utilizas algún plugin para añadir código como puede ser Code Snippets
Un Saludo
Hola Pepe buenas noches.
Gracias por tu ayuda. He insertado el codigo que me indicas y es genial!!!! El único problema es que en la version en ingles de la pagina de productos aparece Productos recomendados y nos gustaria insertar Recommended Products, como puedo modificarlo solamente en la version de la pagina de productos version en ingles?
Gracias
Saludos
Jose Carlos
Hola Jose Carlos,
En este caso si es una traducción en el cambio del idioma veo que utilizas WPML; debes buscar esa cadena de texto dentro de las opciones del plugin y modificarlo para el idioma inglés. Ten en cuenta que para traducciones con WooCommerce requieres un addons adicional → Contenido solo visible a usuarios registrados
Un saludo
Hola Karen buenas tardes.
No consigo encontrar la cadena de texto que deseo cambiar (la traduciría manualmente si es posible) en que apartado debería de estar si esta solamente en una pestaña de la pagina de productos?
Gracias
Saludos
Jose Carlos
Que tal Jose Carlos,
Repasando las respuestas previas de mis compañeros entiendo que la cadena de texto que aun deseas traducir no ha tomado los cambios por medio de los fragmentos de codigo personalizado que te han facilitado es correcto?
De ser este el caso si debes hacerlo por medio de WPML el cual es el plugin premium encargado de la traducción de tu sitio web, es necesario que consultes las cadenas de traducción tal como sugiere mi compañera
Al ser un plugin de paga no podemos profundizar en sus funciones, sin embargo te comparto su documentación para que la tengas presente https://wpml.org/documentation/getting-started-guide/string-translation/
Echale un vistazo
Saludos!
Hola Bruno buenos dias.
No he probado a traducir el texto con este codigo;
function translate_any_text_wp( $translated_text ) {
if ( 'Texto Antiguo' === $translated_text ) {
$translated_text = 'Nuevo Texto';
}
return $translated_text;
}
add_filter( 'gettext', 'translate_any_text_wp', 20 );
Ya que supongo que si lo hago me traducira tambien ese mismo texto en la version en español y yo lo que deseo es solamente traducir el texto en la version en ingles.
Gracias
Saludos
Jose Carlos
Que tal Jose Carlos,
Podríamos probar una modificación en el fragmento de código sugerido en la cual se verifique si el idioma actual en el que se presenta la web es en ingles, de ser asi se ejecutaría la traducción
function translate_any_text_wp( $translated_text ) {
// Verifica si el idioma actual es inglés
if ( get_locale() === 'en_US' ) {
if ( 'Texto Antiguo' === $translated_text ) {
$translated_text = 'Nuevo Texto';
}
}
return $translated_text;
}
add_filter( 'gettext', 'translate_any_text_wp', 20 );
Cabe destacar que este es un acercamiento y es necesario adaptar a medida para que pueda funcionar, si este es el caso desde aca no podemos hacer códigos personalizados por lo que puedes elevar la consulta a nuestros colaboradores que con gusto puede ver tu solicitud
Tambien en lo posible valida si es posible la traducción por medio de las cadenas de texto directamente dispuestas en WPML tal como te he citado en mi comentario anterior
Saludos!