Saltar navegación

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.

Hoy no hay asistentes de soporte disponibles en el foro Spanish. Siéntase libre de enviar sus tiques y les daremos trámite tan pronto como estemos disponibles en línea. Gracias por su comprensión.

Etiquetado: 

Este tema contiene 15 respuestas, tiene 3 voces.

Última actualización por Alejandro hace 12 meses.

Asistido por: Alejandro.

Autor Entradas
mayo 17, 2023 en 3:25 pm #13665711

christianC-44

Estoy tratando de: Actualizar un publicación

URL de (mi) sitio web donde aparece el problema: enlace oculto

Yo esperaba ver: Actualizar la publicación sin problemas

En vez de eso, obtuve: un error en la clase wpml-post-translation-job.class.php, específicamente en la función load_resultant_element_id. El cual surge al intentar acceder a la propiedad translation_id del objeto basic_data. Al investigar por qué este objeto estaba vacío, notamos la falta de información en la tabla icl_translate de la base de datos. Llegamos a la conclusión de que la sincronización no se estaba llevando a cabo debido a la ausencia de columnas en las tablas icl_translate (columna field_wrap_tag), icl_strings (columna wrap_tag) e icl_translate_job (columna edit_timestamp). Después de agregar estas columnas, las nuevas traducciones comenzaron a sincronizarse correctamente.

Sin embargo, aún persiste el problema con las traducciones existentes(anteriores), lo cual puede requerir acciones adicionales. Se ha considerado forzar la sincronización o realizarla de forma manual, pero no hemos encontrado información sobre cómo llevar a cabo esta acción. Actualmente, hemos implementado una solución temporal que modifica el código del plugin para evitar la aparición del error. No obstante, somos conscientes de que esta no es la mejor opción a largo plazo.

Por esta razón, nos hemos puesto en contacto con el soporte para obtener asistencia adicional y orientación específica en relación con la sincronización de las traducciones existentes y cualquier otra medida recomendada para resolver por completo el problema.

se adjunta imagen del error que se produce al actualizar un post.

error_wpml.png
mayo 18, 2023 en 8:34 am #13670063

Carlos Rojas
Supporter

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

Hola,
Muchas gracias por contactarnos

1.- Por favor incremente el límite de memoria de WordPress. El mínimo requerido es de 128Mb: https://wpml.org/home/minimum-requirements/
Para ello puede agregar el siguiente código al archivo wp-config.php que se encuentra en la raíz del sitio:

 /* Memory Limit */
define('WP_MEMORY_LIMIT', '128M');

- Añádelo encima de la línea /* That's all, stop editing! Happy blogging. */

Puede comprobar el límite de memoria de WordPress en WPML -> Soporte

2.- Una vez incrementado el límite de memoria de WordPress le pido que actualice cualquier plugin o tema que pueda estar desactualizado, especialmente los plugins de WPML que puede actualizar en Plugins -> Añadir nuevo -> Pestaña 'Comercial'

3.- Si el problema persiste luego de realizar los pasos anteriores entonces le pido que:
- Cree una copia de seguridad del sitio completo
- Pegue este código en el archivo functions.php que se encuentra en la carpeta del tema:

function wpmlsupp_1891_fix_missing_icl_tables() {
    if( function_exists( 'icl_sitepress_activate' ) )
        icl_sitepress_activate();
}
add_action( 'wp_footer', 'wpmlsupp_1891_fix_missing_icl_tables' );

- Guarde los cambios
- Visite el sitio en el frontend y espere a que cargue completamente
- Borre el código del archivo functions.php
- Compruebe si el problema desapareció

Puede decirme el resultado de los pasos anteriores?

Saludos,
Carlos

mayo 18, 2023 en 6:37 pm #13674597

christianC-44

Hola, gracias por tu pronta respuesta. Después de seguir las acciones que mencionaste, no obtuve el resultado deseado. La actualización de los plugins, temas y el aumento de límite de memoria se realizó sin problemas. En cuanto a la función que me sugeriste añadir, tampoco presentó problemas, pero me surgió una duda: ¿esta función se encarga de cargar las tablas si no existen, además de cargar la configuración y reparar la tabla icl_translations? como observacion en la tabla icl_translations sí tengo información, de hecho, tengo alrededor de 41.000 registros.

Después de seguir todos los pasos mencionados, intenté actualizar un post y surgió el mismo error. Por esta razón, creo que el problema radica en una sección específica, más precisamente en una consulta SQL que se ejecuta en la función retrieve_job_data del archivo class-wpml-translation-job-factory en la línea 303. Esta consulta devuelve un array vacío, lo que hace que la función maybe_load_basic_data del archivo wpml-translation-job.class devuelva un objeto vacío, lo cual desencadena el error al intentar acceder a la propiedad translation_id del objeto basic_data.

En resumen, creo que este error está relacionado con la tabla icl_translate que está vacía. Por lo tanto, me gustaría saber si existe alguna forma de reconstruir esta información.

Adjunto el SQL con la consulta que se ejecuta para el post que estoy tratando de actualizar.
Obs: la tablas wp_icl_translations, wp_icl_translate_job,wp_icl_translation_status tienen la información asociada al post que se esta buscando

 
SELECT j.rid,
				j.translator_id,
				t.translation_id,
				s.batch_id,
				j.translated,
				j.manager_id,
				s.status,
				s.review_status,
				s.needs_update,
				s.translation_service,
				s.uuid,
				s.ate_comm_retry_count,
				t.trid,
				t.language_code,
				t.source_language_code,
				iclt.field_data AS original_doc_id,
				iclt.job_id,
				ito.element_type AS original_post_type,
				j.title,
				j.deadline_date,
				j.completed_date,
				j.editor,
				j.editor_job_id,
				j.automatic,
								  SUBSTRING_INDEX(ito.element_type, '_', 1 ) as element_type_prefix
						FROM wp_icl_translate_job j
                JOIN wp_icl_translation_status s
                  ON j.rid = s.rid
                JOIN wp_icl_translations t
                  ON s.translation_id = t.translation_id
                JOIN wp_icl_translate iclt
                  ON iclt.job_id = j.job_id
                JOIN wp_icl_translations ito
                  ON ito.element_id = iclt.field_data
                    AND ito.trid = t.trid

			            LEFT JOIN wp_posts p
                  ON ito.element_id = p.ID
                     AND ito.element_type = CONCAT('post_', p.post_type)
						WHERE j.job_id IN (32)
						  AND iclt.field_type = 'original_id'
			            LIMIT 1
mayo 19, 2023 en 8:10 am #13676555

Carlos Rojas
Supporter

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

Hola,
Muchas gracias por su mensaje

1.- Por favor describa paso a paso como reproducir el problema original en el sitio

2.- Me gustaría solicitar acceso temporal al sitio (wp-admin y FTP) con el objetivo de ver el problema más de cerca. Su próxima respuesta será privada y en ella encontrará los campos correspondientes a las credenciales solicitadas.

Aunque no realizaré ningún cambio en el sitio siempre es recomendable crear una copia de seguridad del sitio completo antes de compartir las credenciales de acceso.

Saludos,
Carlos

mayo 23, 2023 en 7:40 am #13695437

Carlos Rojas
Supporter

Idiomas: Inglés (English ) Español (Español )

Zona horaria: Europe/Madrid (GMT+02:00)

Hola,
Muchas gracias por compartir la información solicitada

Es posible crear un sitio de pruebas que no sea necesario acceder a través de VPN? Es posible que necesite solicitar a algún colega que revise el problema y sería más fácil poder acceder al sitio de manera más directa. Puede editar su mensaje anterior (privado) en caso de ser necesario.

Quedo a la espera de su mensaje.
Saludos,
Carlos

mayo 26, 2023 en 4:31 pm #13724329

christianC-44

Hola, buenas. No es posible brindar acceso al servidor sin estar conectado a una VPN. Esto se debe a que, por políticas de la empresa, se bloquean todas las direcciones IP extranjeras. Por lo tanto, solo se puede ingresar a través de una VPN.

mayo 29, 2023 en 1:16 pm #13732671

Alejandro
Supporter

Idiomas: Inglés (English ) Español (Español ) Italiano (Italiano )

Zona horaria: Europe/Rome (GMT+02:00)

Hola,

estamos intentando acceder al VPN pero me parece que nos falta un dato: el tipo de VPN (SSTP, L2TP/IPSEC, etc). si tienes una guía para la configuración o tienes ese dato, podrías enviarnoslo, por favor, para poder conectarnos y revisar que sucede?

junio 6, 2023 en 2:10 pm #13779515

christianC-44

¡Hola! Buenas tardes. No sé si han visto mi respuesta anterior. Dejé un paso a paso en un archivo de Drive en el mensaje privado. Por favor, avísenme si tienen algún problema. Estaré atento. ¡Saludos!

junio 6, 2023 en 4:13 pm #13780603

Alejandro
Supporter

Idiomas: Inglés (English ) Español (Español ) Italiano (Italiano )

Zona horaria: Europe/Rome (GMT+02:00)

Si, pero las indicaciones del documento no parecen ser correctas a menos que no se use iOS y actualmente no tenemos supporters en español con acceso a ese sistema operativo.

Te muestro aquí lo que veo: enlace oculto

Hemos accedido muchas veces a sitios con VPN como los tuyos y en la mayoría de los casos se nos ofrece información extra.

Si logras obtener el IP del vp, puedo tratar en ese modo, o tratar de encontrar la información necesaria.

Sino, no sería posible migrar el sitio a un servidor que podemos darte a disposición, donde podrás borrar lo que necesites antes de darnos acceso?

junio 7, 2023 en 8:36 pm #13789039

christianC-44

Hola, buenas. Modifiqué el documento que compartí en el mensaje privado y se realizaron pruebas de conexión con Windows para verificar las credenciales. En cuanto a mover el proyecto a otro servidor, es un poco complicado, pero ahora deberían poder entrar sin problemas. Se utilizó FortiClient para poder utilizar la VPN, ya que al usar la nativa de Windows no se logró conectar. Investigando, encontré un problema relacionado con esto. Adjunto el enlace (enlace oculto). Quedo atento a comentarios. Saludos.

junio 12, 2023 en 5:45 pm #13812045

Alejandro
Supporter

Idiomas: Inglés (English ) Español (Español ) Italiano (Italiano )

Zona horaria: Europe/Rome (GMT+02:00)

Hola!

Disculpa si no te he respondido. tuve unos problemas descargando el installer de forticlient. Por alguna razón me lo bloquea google, pero lo encontré por otro lado. gracias por actualizar la guía. apenas lograré entrar y descubrir lo que sucede, lo escribiré aquí.

Saludos y de nuevo disculpa por el retraso.

junio 12, 2023 en 6:14 pm #13812179

Alejandro
Supporter

Idiomas: Inglés (English ) Español (Español ) Italiano (Italiano )

Zona horaria: Europe/Rome (GMT+02:00)

Cuando entré vi que uno de los problemas era que no tenías memoria definida para usar en WordPress (De tu memoria PHP), por lo que las cosas seguramente no estaban funcionando. si has instalado WPML cuando WordPress tenía esa configuración, entonces es probable que haya sid la causa del problema de la base de datos.

No pude acceder al FTP (sospecho que tal tiene algún bloqueo porque las credenciales funcionan pero el sistema cae en timeout luego de un rato que no logra acceder y usualmente eso sucede cuando hay bloqueos de tipo IP o parecidos en el servidor). Traté de acceder y revisar el wp-config.php desde un plugin File manager pero no parece existir lo que me dice que o está bloqueado y por ende el plugin no lo ve o usas algún otro sistema modificado para que tome la info por otro lado u otro archivo.

1) Por favor agrega el siguiente código en el archivo wp-config.php de tu configuración o donde des valor a las constantes de WordPress, justo luego de la información de la base de datos:

define('WP_MEMORY_LIMIT','128M');

2)Creé una página nueva pero vi que el editor manual de WordPress está activado y me pregunto entonces si esto lo has hecho a raíz del problema con las sincronizaciones? y de ser así si me puedes dar una referencia de página o elemento en donde puedo hacer tests, por favor.

Gracias.

junio 15, 2023 en 3:48 pm #13833939

christianC-44

Hola, buen día. Acabo de realizar algunas pruebas de conexión mediante FTP y he modificado el documento correspondiente. Quisiera destacar que es necesario estar conectado a la VPN indicada en el documento para poder acceder al servidor. En cuanto al segundo punto, puedes realizar modificaciones en el sitio, crear nuevas páginas o cualquier otra acción que desees. Recuerda que este entorno es de pruebas y tengo una copia de respaldo del sitio en caso de que ocurra algo inesperado. Como recordatorio, el error que estamos experimentando se debe a que la tabla wp_icl_translate está vacía. Existe una consulta, como se menciona en los comentarios anteriores, que realiza un join con esta tabla, generando así el error.

junio 15, 2023 en 9:42 pm #13835499

Alejandro
Supporter

Idiomas: Inglés (English ) Español (Español ) Italiano (Italiano )

Zona horaria: Europe/Rome (GMT+02:00)

Hola, entiendo el error que mencionas, pero cuando yo trato de crear una página y traducirla que sea con el editor de traducción o en modo manual, esta funciona y no me da ningún problema.

Al inicio del ticket habías mencionado que tenías problemas con páginas viejas y por ende me gustaría saber si me puedes dar una página de referencia donde hacer algunos tests para poder entonces hacer las pruebas corrientes y ver exactamente que es lo que falta en las tablas, ya que estoy casi seguro que se trata de un índice específico único pero si no logro ver el problema no podré verificar si se ha resuelto.

junio 16, 2023 en 4:39 pm #13841835

christianC-44

Hola, buenas. Puedes probar lo siguiente:

1. Ingresa al panel administrativo de WordPress.
2. Cambia al modo inglés.
3. Accede al menú Brand Center.
4. Busca la publicación con el nombre "[Amelia] Brand Presentation – ENG" y el ID 90773.
5. Al actualizar la publicación, podrás ver el problema.

Saludos.

brandCenter.png
Este ticket ya está cerrado. Si eres cliente de WPML y necesitas ayuda relacionada, abre un nuevo ticket de soporte.