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 27 respuestas, tiene 3 voces.

Última actualización por Alejandro hace 8 meses, 3 semanas.

Asistido por: Alejandro.

Autor Entradas
julio 28, 2023 en 7:25 am #14114895

luisB-20

Cada vez que trato de traducir una página de opciones de ACF me da el siguiente error:

Fatal error: Uncaught Error: Illegal offset type in isset or empty
in /usr/home/fundacionmargaritasalas.com/web/wp-content/plugins/advanced-custom-fields-pro/pro/fields/class-acf-field-flexible-content.php on line 783

Call stack:

acf_field_flexible_content::load_value()
wp-includes/class-wp-hook.php:308
WP_Hook::apply_filters()
wp-includes/plugin.php:256
apply_filters_ref_array()
wp-content/plugins/advanced-custom-fields-pro/includes/acf-hook-functions.php:109
_acf_apply_hook_variations()
wp-includes/class-wp-hook.php:308
WP_Hook::apply_filters()
wp-includes/plugin.php:205
apply_filters()
wp-content/plugins/advanced-custom-fields-pro/includes/acf-value-functions.php:118
acf_get_value()
wp-content/plugins/advanced-custom-fields-pro/includes/api/api-template.php:307
get_field_objects()
wp-content/plugins/acfml/classes/strategy/repeater-sync/OptionPageHooks.php:42
ACFML\R\S\OptionPageHooks::add_hooks()
wp-content/plugins/sitepress-multilingual-cms/classes/action-filter-loader/class-wpml-action-filter-loader.php:158
WPML_Action_Filter_Loader::run_factory()
wp-content/plugins/sitepress-multilingual-cms/classes/action-filter-loader/class-wpml-action-filter-loader.php:125
WPML_Action_Filter_Loader::deferred_loader()
wp-includes/class-wp-hook.php:308
WP_Hook::apply_filters()
wp-includes/class-wp-hook.php:332
WP_Hook::do_action()
wp-includes/plugin.php:517
do_action()
wp-settings.php:645
require_once()
wp-config.php:104
require_once()
wp-load.php:50
require_once()
wp-admin/admin.php:34

julio 28, 2023 en 12:32 pm #14117151

Paola Mendiburu
Supporter

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

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

Hola!

Soy Paola y espero que todo vaya bien.

El problema está relacionado con este:
https://wpml.org/forums/topic/fatal-error-uncaught-typeerror-illegal-offset-type-in-isset-or-empty-in-var-w/#post-14086985

Para solucionarlo debes aplicar mientras tanto está solución alternativa:
- accede a tu base de datos
- y en la tabla de wp_options
- busca por options_es_resources y eliminalo

Ya me dice si tienes cualquier problema.

Gracias.

julio 28, 2023 en 2:40 pm #14118107

luisB-20

Hola Paola,

Ya vi ese post, pero en mi tabla de wp_options no existe esa entrada.

Busqué también si existía un options_en_resources, ya que el idioma principal es el español, pero tampoco tengo esa entrada.

Saludos!

julio 28, 2023 en 3:13 pm #14118405

Paola Mendiburu
Supporter

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

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

Para investigar el problema, puede darme acceso al sitio wp-admin.

Acabo de marcar las casillas necesarias para poder agregar credenciales de forma segura y privada.

De esta manera solo nosotros dos podemos observarlos.

Le sugiero que cree un usuario temporal, para que pueda eliminarlo después de cerrar el ticket.

julio 31, 2023 en 10:24 am #14126009

Paola Mendiburu
Supporter

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

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

Para ver si está relacionado con la versión de PHP puedes cambiar la versión de PHP a 7.4 y dime si el problema desaparece.

julio 31, 2023 en 11:16 am #14126289

luisB-20

Hola Paola,

He solicitado el cambio de versión, pero no sé si se podrá hacer efectivo rápidamente porque yo no gestiono ese servidor y no sé si la persona que me puede dar acceso está de vacaciones.

Tengo una copia de esa página funcionando en un servidor de desarrollo con una versión 8.1 de PHP y no me da ese problema, ha sido al pasar a producción cuando ha empezado a darme esa advertencia.

Lo digo por si se puede descartar lo de la versión de PHP y además no cargar una versión ya sin soporte en un sitio en producción.

Saludos!

julio 31, 2023 en 11:27 am #14126425

Paola Mendiburu
Supporter

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

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

Ok entonces primero prueba a cambiar a la versión PHP 8.1.

Luego borrar el plugin ACF Pro y vuelve a instalar una copia fresca puede ser que haya habido un problema durante la migración.

julio 31, 2023 en 11:52 am #14126741

luisB-20

Hola Paola,

mientras me dan acceso al otro servidor he cambiado el de desarrollo a la versión 8.0 para que los dos estén igual y en la versión de desarrollo funciona sin problema.

En la de producción he borrado el plugin de ACF y el de ACF Multilingual, los he reinstalado pero sigue apareciendo el error.

julio 31, 2023 en 2:40 pm #14128349

Paola Mendiburu
Supporter

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

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

Ok gracias.

Puedes probar a desactivar todos los plugins menos los de WPML y ACF y decir si el problema persiste.

Para que no afecte a tu sitio en producción puedes instalar el plugin Check Conflicts.

Dime lo que encuentras

julio 31, 2023 en 3:34 pm #14128627

luisB-20

Hola Paola,

ya tengo acceso a la configuración de PHP.

Con la versión 7.4 puedo acceder a las páginas de opciones, el error existe pero está marcado como warning y no me corta la ejecución.

A partir de esa versión (he probado la 8.0, 8.1 y 8.2) sigue pasando lo mismo.

He probado lo de los plugins, pero no soluciona nada.

Saludos!

agosto 1, 2023 en 9:19 am #14131925

Paola Mendiburu
Supporter

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

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

Ya lo he conseguido solucionar y está solución será aplicada en la próxima versión de ACF Multilingual.

Te comento lo que he realizado:
- he ido al archivo acfml/classes/class-wpml-acf-options-page.php
- he cambiado esta línea

return isset( $field['type'] ) && 'repeater' === $field['type'];

- por esta:

return isset( $field['type'] ) && ( 'repeater' === $field['type'] || 'flexible_content' === $field['type'] );

Ahora ya funciona sin ningún error.

Ya me dices si tienes cualquier problema.

Gracias.

agosto 1, 2023 en 10:11 am #14132729

luisB-20

Hola Paola,

he comprobado que el fichero está como dices, pero al subir la versión de PHP me vuelve a dar el error, adjunto una captura de pantalla.

Saludos!

Captura de Pantalla 2023-08-01 a las 12.08.43.png
agosto 1, 2023 en 11:08 am #14133007

Paola Mendiburu
Supporter

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

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

El fichero lo he modificado yo para arreglar.

Me das permiso para instalar el plugin adminer y así tener acceso a la base de datos?

Gracias.

agosto 2, 2023 en 7:20 am #14139435

luisB-20

Sí, sin problema.

Saludos!

agosto 2, 2023 en 12:15 pm #14142077

Paola Mendiburu
Supporter

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

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

He cambiado el grupo de Configuración Sitio a "Los mismos campos en todos los idiomas", ¿me puedes confirmar si ya no aparece el error con la versión de php 8?

This ticket is now closed. If you're a WPML client and need related help, please open a new support ticket.