Skip Navigation

Este es el foro de soporte técnico de WPML, el plugin multilingüe de WordPress.

Todas las personas pueden leerlo pero solo los clientes de WPML pueden ingresar comentarios. El equipo de WPML responde en los foros 6 días a la semana, 22 horas por día.

Etiquetado: 

This topic contains 10 respuestas, has 2 mensajes.

Last updated by Andrés hace 4 years, 1 month.

Assigned support staff: Andrés.

Autor Mensajes
septiembre 3, 2016 a las 12:09 pm #1057663

marcS-27

I am trying to:

Utilizar los idiomas por directorios en las URLs del sitio.

URL of (my) website where problem appears:

hidden link
hidden link

I expected to see in both cases (in code):

<!--<em><u>hidden link</u></em>;

Instead, I got:

<!--<em><u>hidden link</u></em>;
<!--<em><u>hidden link</u></em>;

NOTAS:
No utilizo los enlaces predeterminados; el archivo .htaccess puede ser escrito y contiene la linea RewriteEngine On.

septiembre 5, 2016 a las 6:43 am #1059818

Andrés
Supporter

Languages: Inglés (English ) Español (Español ) Francés (Français )

Timezone: Europe/Paris (GMT+02:00)

Hola Marc,

Bienvenido al soporte de WPML.

Tal vez ya hayas podido resolver tu situación o me falten más detalles para reproducirla. He visitado tu sitio hidden link y hidden link y ambos son accesibles correctamente.

Sin embargo, si te preocupa el error que se genera en tu WPML > Idiomas, esta tal vez se deba que estás instalando tu WordPress fuera del repertorio raíz y lo haces en un subdirectorio /aj/.

En el caso que la situación persista, ¿me podrías decir como replicarla?

Un saludo,
Andrés

septiembre 8, 2016 a las 9:31 am #1067774

marcS-27

Gracias por tu atención,

cuándo hice la consulta estaba probando una copia del web en hidden link. El que realmente quiero poner en producción se encuentra en hidden link, y aquí el problema persiste:

hidden link
devuelve (código fuente) <!--hidden link;
y
hidden link
devuelve (código fuente) <!--hidden link;

De todos modos el "problema real" es que algunas URLS en el idioma secundario, en mi caso catalán, no resuelven correctamente. En concreto fallan las siguientes y creo que solamente las siguientes:

- la URL de tienda (que además es la página de inicio)
es: hidden link - ok
ca: hidden link - ko

NOTA: para estas dos pàginas el breadcrumb (<?php do_action('icl_navigation_breadcrumb', ['separator']); ?>) se muestra inesperadamente el title de un producto de WooCommerce.

- las URLs de TODAS las categorías superiores [las demás categorías sí funcionan!!]
es: hidden link - ok
ca: hidden link - ko

es: hidden link - ok
ca: hidden link - ko

...

Si necesitas más datos por favor házmelo saber.
Saludos

septiembre 8, 2016 a las 1:04 pm #1068510

Andrés
Supporter

Languages: Inglés (English ) Español (Español ) Francés (Français )

Timezone: Europe/Paris (GMT+02:00)

Hola,

Cuando accedo a tu sitio y visito las diferentes URL que me has indicado puedo descargar el contenido sin problema.

¿Me podrías explicar cual es el problema que experimentas?

Saludos

septiembre 8, 2016 a las 2:36 pm #1068990

marcS-27

Hola,

las URLs en castellano (es) muestran, tal como pido en lla configuración el WooCommerce, los accesos a las categorías que contienen productos. En cambio, las URLs en catalán (ca) muestran accesos a los productos a pesar de no pertenecer esos productos a esa catagoría sino a una de sus descendientes.

Esto se aprecia justo debajo de lo que muestran las capturas que me adjuntas.

Marc

septiembre 8, 2016 a las 3:41 pm #1069164

Andrés
Supporter

Languages: Inglés (English ) Español (Español ) Francés (Français )

Timezone: Europe/Paris (GMT+02:00)

Gracias, Marc. Ahora entiendo, no es que las URL no funcionen si no que visualizan el contenido equivocado. Vamos a trabajar en ello:

1. ¿Podrías actualizar tu extensión WooCommerce Multilingual ?

2. ¿Podrías ir a Ajustes > Enlaces permanentes y guardar de nuevo tu configuración?

3. Podrías revisar que esta situación se presenta cuando:
- Todos los plugins no relacionados con WPML están desactivados. Esto nos dirá si hay algún problema de interacción con otro plugin.
- Cambias a un tema por defecto de WordPress como el Twenty Fourteen. Esto nos dirá si hay un problema de interacción con tu tema.
- Si el problema desaparece, activa uno por uno para determinar quién genera esta situación.

4. Sería genial si me puedes suministrar la información del debug.log de WordPress. Por favor, lee estas instrucciones:
https://wpml.org/documentation/support/debugging-wpml/

Por favor abre tu archivo wp-config.php y busca la línea que dice: define(‘WP_DEBUG’, false);. y cámbialo por:

define('WP_DEBUG', true);
define( 'WP_DEBUG_LOG', true );

Luego busca en la carpeta /wp-content/ y mira si existe algún archivo debug.log.

Si puedes agregar la información del debug.log en pastebin.com y proveerme el link sería aún mejor (Es la manera más limpia porque algunas veces los logs pueden ser muy largos y la conversación se puede volver desordenar mucho).

Saludos

septiembre 8, 2016 a las 5:25 pm #1069332

marcS-27

Punto por punto:

1. ¿Podrías actualizar tu extensión WooCommerce Multilingual ?
2. ¿Podrías ir a Ajustes > Enlaces permanentes y guardar de nuevo tu configuración?

RESPUESTA:
Comprobados los dos puntos sin que resuelva el problema. WordPress, temas y plugins están totalmente actualizados.

3. Podrías revisar que esta situación se presenta cuando:
- Todos los plugins no relacionados con WPML están desactivados. Esto nos dirá si hay algún problema de interacción con otro plugin.

RESPUESTA:
Activando únicamente los plugins siguientes:

WooCommerce.Versión 2.6.4
WooCommerce Multilingual. Versión 3.8.6
WPML CMS Nav. Versión 1.4.19
WPML Media. Versión 2.1.22
WPML Multilingual. Versión 3.5.1.1
WPML Sticky Links. Versión 1.4.0
WPML String Translation. Versión 2.4.1.1
WPML Translation Management. Versión 2.2.2

El problema persiste.

- Cambias a un tema por defecto de WordPress como el Twenty Fourteen. Esto nos dirá si hay un problema de interacción con tu tema.

RESPUESTA:
Con el Twenty Sixteen (y tan sólo los plugins indicados en el punto 3) el problema persiste.

- Si el problema desaparece, activa uno por uno para determinar quién genera esta situación.

RESPUESTA:
El problema no desaparece.

4. Sería genial si me puedes suministrar la información del debug.log ....

He restablecido/activado temas y plugins a la configuración anterior, la que pretendo para el sitio. He puesto WP_DEBUG y WP_DEBUG_LOG a true en el archivo wp-config.php. He accedido vía http a hidden link y a hidden link. El problema se mantiene.

No aparece ningún archivo debug.log dentro de wp-content. He llegado a poner permisos 777 a wp-content sin que apareciese el archivo debug.log.

He copiado la 'información de depuración' obtenida en WPML > Soporte y la he pegado en http://pastebin.com/bHER363Y

Gracias por tu atención!

septiembre 9, 2016 a las 12:42 am #1069669

marcS-27

Hola, puedo añadir lo siguiente:

La función que busca y muestra las categorías de productos se declara en wc-template-functions.php (WooCommerce):

/**
* Display product sub categories as thumbnails.
*
* @subpackage Loop
* @param array $args
* @return null|boolean
*/
woocommerce_product_subcategories()
...

a su vez esta función utiliza get_categories():

...
// NOTE: using child_of instead of parent - this is not ideal but due to a WP bug ( https://core.trac.wordpress.org/ticket/15626 ) pad_counts won't work
$product_categories = get_categories( apply_filters( 'woocommerce_product_subcategories_args', array(
'parent' => $parent_id,
'menu_order' => 'ASC',
'hide_empty' => 0,
'hierarchical' => 1,
'taxonomy' => 'product_cat',
'pad_counts' => 1
) ) );
...

y es get_categories() la que se comporta correctamente en el idioma principal del WPML pero INCORRECTAMENTE EN EL IDIOMA SECUNDARIO. En concreto:

En el idioma principal (Español) solicitamos las hijas de la categoría 927 y encontramos que una de esas hijas es la 945:

[9]=> object(WP_Term)#14675 (16){
["term_id"]=> int(945)
["name"]=> string(22) "Remolques y accesorios"
["slug"]=> string(22) "remolques-y-accesorios"
["term_group"]=> int(0)
["term_taxonomy_id"]=> int(150)
["taxonomy"]=> string(11) "product_cat"
["description"]=> string(7) "0113-es"
["parent"]=> int(927)
["count"]=> int(1)
["filter"]=> string(3) "raw"
["cat_ID"]=> int(945)
["category_count"]=> int(1)
["category_description"]=> string(7) "0113-es"
["cat_name"]=> string(22) "Remolques y accesorios"
["category_nicename"]=> string(22) "remolques-y-accesorios"
["category_parent"]=> int(927)
}

En el idioma secundario (Catalán) solicitamos las hijas de la categoría 1004 (traducción de la 927) y encontramos que una de esas hijas es la 1022 (traducción de la 945):

[9]=> object(WP_Term)#13378 (16){
["term_id"]=> int(1022)
["name"]=> string(22) "Remolques y accesorios"
["slug"]=> string(25) "remolques-y-accesorios-ca"
["term_group"]=> int(0)
["term_taxonomy_id"]=> int(227)
["taxonomy"]=> string(11) "product_cat"
["description"]=> string(7) "0113-ca"
["parent"]=> int(1004)
["count"]=> int(0)
["filter"]=> string(3) "raw"
["cat_ID"]=> int(1022)
["category_count"]=> int(0)
["category_description"]=> string(7) "0113-ca"
["cat_name"]=> string(22) "Remolques y accesorios"
["category_nicename"]=> string(25) "remolques-y-accesorios-ca"
["category_parent"]=> int(1004)
}

El resultado es el esperado salvo la incoherencia siguiente:

en el idioma principal la categoría hija 945 (que contiene categorías con artículos) entrega ["count"]=> int(1) y ["category_count"]=> int(1)

mientras que

en el idioma secundario la categoría hija 1022 (que también contiene categorías con artículos) entrega ["count"]=> int(0) y ["category_count"]=> int(0)

Probablmente esto explica el distinto comportamiento (por lo menos al mostrar las categorías) en hidden link y en hidden link

Espero que esto ayude, yo ya no sé qué más mirar.

Saludos

septiembre 9, 2016 a las 8:02 am #1070234

Andrés
Supporter

Languages: Inglés (English ) Español (Español ) Francés (Français )

Timezone: Europe/Paris (GMT+02:00)

Muchas gracias por tu información, Marc.

Por un lado veo que tu tema está desactualizado y esto podría haber sido resuelto por el creador del tema. ¿Podrías actualizarlo a la versión 2.5.4?
hidden link

Si esto no funciona, ¿me podrías dar las credenciales de tu sitio web de prueba, de esta manera podemos dar un vistazo a tus ajustes?

Para esto, debes poder ver una forma protegida en la parte inferior de este tópico. (Te pide hacer un backup y un + Aviso legal). Una instalación de test es preferible y nos haría mucho más fácil hacer una evaluación. En cuanto tenga más información te lo haré saber

Importante: Haz un backup completo de tu sitio. Puedes usar un plugin como Duplicator para este propósito. Mira en: http://wordpress.org/plugins/duplicator/

Privacidad y seguridad al proporcionar información de Debug para soporte:
https://wpml.org/purchase/support-policy/privacy-and-security-when-providing-debug-information-for-support/

Saludos

septiembre 13, 2016 a las 7:39 am #1076454

marcS-27

Hola,
disculpa el retraso. He estado probando hasta dar con una "solución" que por lo menos me permite seguir con mi proyecto (más adelante buscaré/buscaremos el verdadero origen del problema). Te explico:

En el archivo 'archive-product.php' en la carpeta 'woocommerce' de mi tema hijo he sustituido:

woocommerce_product_subcategories();

por:

$queried_object=get_queried_object();
$term_id=$queried_object->term_id;
$product_categories = wp_list_categories( apply_filters( 'woocommerce_product_subcategories_args', array(
'child_of' => $term_id,
'current_category' => 0,
'depth' => 4,
'echo' => 1,
'exclude' => '',
'exclude_tree' => '',
'feed' => '',
'feed_image' => '',
'feed_type' => '',
'hide_empty' => 1,
'hide_title_if_empty' => false,
'hierarchical' => true,
'order' => 'ASC',
'orderby' => 'name',
'separator' => '<br />',
'show_count' => 0,
'show_option_all' => '',
'show_option_none' => __( 'No categories' ),
'style' => 'list',
'taxonomy' => 'product_cat',
'title_li' => __( 'Categories' ),
'use_desc_for_title' => 1,
) ) );

Ahora empiezo a maquetar a conveniencia.

Ya me dirás tu opinión. En todo caso te agradezo el soporte prestado hasta ahora.

septiembre 13, 2016 a las 9:25 am #1076809

Andrés
Supporter

Languages: Inglés (English ) Español (Español ) Francés (Français )

Timezone: Europe/Paris (GMT+02:00)

Hola Marc,

Leyendo el código de una manera aislada parece correcto y en orden, pero necesitaría más investigación, sobre todo para entender por que fallaba el original.

Entiendo que el tiempo apremia para tu fecha límite, así que con gusto me gustaría asistirte más adelante.

Saludos,
Andrés

El debate ‘[Cerrado] La comprobación icl_validate_directory=1 sale mal y no sé cómo corregirla.’ está cerrado y no admite más respuestas.