Visser Labs – Plugins de WooCommerce

  1. Inicio
  2. Base de conocimiento
  3. Exportador de Tiendas Deluxe de WooCommerce
  4. Solución de problemas
  5. Solución de problemas del error de propiedad dinámica de PHP 8.2 durante la exportación

Solución de problemas del error de propiedad dinámica de PHP 8.2 durante la exportación

¿Ves una línea Creation of dynamic property ... is deprecated en tu registro de errores después de una exportación? Aquí te explicamos qué significa el mensaje, cómo detenerlo y qué comprobar si vuelve a aparecer. Se aplica a Store Exporter Deluxe for WooCommerce en PHP 8.2 o posterior.

Aparece un aviso de propiedad dinámica después de exportar

¿Qué está pasando?

Ejecutas una exportación en PHP 8.2 o posterior. Entonces, tu registro de errores de PHP, o la parte superior de la pantalla de administración, muestra una línea como esta:

PHP Deprecated:  Creation of dynamic property Automattic\WooCommerce\Admin\Overrides\Order::$followup_optout is deprecated in /wp-content/plugins/woocommerce-store-exporter-deluxe/includes/order.php

El nombre después de ::$ cambia de un sitio a otro. Es posible que veas la clave de un campo meta personalizado en su lugar.

¿Por qué sucede?

PHP 8.2 marca un patrón de codificación común como obsoleto: agregar un valor a un objeto con un nombre que el objeto no declara. PHP 8.2 registra un aviso cada vez que el código hace esto.

Store Exporter Deluxe 5.4.1 y versiones posteriores incluyen actualizaciones para PHP 8.2 que cubren los casos más comunes.

Un aviso de obsolescencia es una advertencia sobre futuras versiones de PHP. No es un error fatal y, por sí solo, no impide que PHP ejecute la exportación.

Cómo solucionarlo

Actualiza Store Exporter Deluxe a la versión 5.4.1 o posterior.

Comprueba tu versión de PHP

  1. Ve a Herramientas → Salud del sitio.
  2. Haz clic en la pestaña Información.
  3. Abre la sección Servidor.
  4. Busca la fila Versión de PHP.
Pestaña Información de Salud del Sitio con la sección Servidor abierta y la fila de versión de PHP resaltada

Si la versión es 8.1 o inferior, la línea no proviene de la comprobación de propiedad dinámica de PHP 8.2. Lee la línea de registro completa o pregunta a tu proveedor de hosting qué código la registró.

Actualiza Store Exporter Deluxe

  1. Ve a Plugins → Plugins instalados.
  2. Busca Store Exporter Deluxe for WooCommerce en la lista.
  3. Comprueba el número de versión debajo de la descripción del plugin.
  4. Si la versión es inferior a 5.4.1, haz clic en actualizar ahora en el aviso de actualización debajo del plugin.
Lista de Plugins Instalados con la versión de Store Exporter Deluxe para WooCommerce y el enlace de actualizar ahora resaltado

¿No ves un aviso de actualización? Store Exporter Deluxe solo busca actualizaciones mientras tu licencia esté activa. Comprueba el estado de tu licencia, o descarga la última versión desde tu cuenta e instálala.

Vuelve a ejecutar la exportación

  1. Ejecuta la misma exportación que mostró el aviso.
  2. Abre tu registro de errores de PHP.
  3. Comprueba que no aparezcan nuevas líneas Creation of dynamic property de woocommerce-store-exporter-deluxe.

Si todavía aparece una línea de woocommerce-store-exporter-deluxe, sigue los pasos en El aviso todavía aparece después de actualizar.

¿No estás seguro de dónde está tu registro de errores? Pregúntale a tu proveedor de hosting. Muchos proveedores lo muestran en el panel de control de hosting. Si activaste el registro de depuración de WordPress, el archivo suele ser wp-content/debug.log.


El aviso todavía aparece después de actualizar

¿Qué está pasando?

Estás en la versión 5.4.1 o posterior, pero todavía aparece una línea de Creation of dynamic property.

¿Por qué sucede?

Muchos plugins y temas activan el mismo aviso de PHP 8.2. La línea puede provenir de un código diferente, o puede ser una entrada antigua escrita antes de que actualizaras.

Algunas configuraciones de exportación y complementos también pueden seguir registrando este aviso de Store Exporter Deluxe. El paso 4 a continuación cubre ese caso.

Cómo solucionarlo

  1. Comprueba la fecha y hora al principio de la línea del registro. Ignora las entradas de antes de que actualizaras.
  2. Lee la ruta del archivo que sigue a la palabra in cerca del final de la línea.
  3. Si la ruta no contiene woocommerce-store-exporter-deluxe, ponte en contacto con el autor del plugin o tema en esa ruta.
  4. Si la ruta contiene woocommerce-store-exporter-deluxe, abre un ticket de soporte.

En tu ticket, pega la línea de registro completa. Incluye también tu versión de Store Exporter Deluxe, el tipo de exportación que ejecutaste y cualquier complemento o campo personalizado en esa exportación.


Los avisos de deprecación se muestran en pantalla en tu tienda activa

¿Qué está pasando?

Los avisos de deprecación se imprimen en la parte superior de las páginas de administración o en el front-end de tu tienda.

¿Por qué sucede?

El modo de depuración de WordPress está activado (WP_DEBUG es true), y muestra avisos de PHP en pantalla por defecto. Eso es útil en un sitio de prueba, pero no en una tienda activa.

Cómo solucionarlo

Envía los avisos a un archivo de registro en su lugar. En tu archivo wp-config.php, asegúrate de que estas líneas estén por encima de la línea que comienza con /* That's all, stop editing!:

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

Los avisos irán entonces a wp-content/debug.log y dejarán de mostrarse en pantalla. Si no necesitas el registro, configura WP_DEBUG a false en su lugar. Si WP_DEBUG ya es false y los avisos siguen apareciendo, pídele a tu proveedor de hosting que desactive display_errors en tu configuración de PHP. Consulta Depuración en WordPress para ver todos los ajustes de depuración.


Preguntas frecuentes

¿Necesito volver a una versión anterior de PHP?
No. Actualiza Store Exporter Deluxe en su lugar. El plugin es compatible con PHP 7.4 y posterior, y Store Exporter Deluxe 5.4.1 y posterior incluyen actualizaciones para PHP 8.2.
¿Qué exportaciones mostraron el aviso?
Exportaciones de pedidos y exportaciones de clientes. La actualización a la versión 5.4.1 o posterior cubre los casos más comunes para ambos. Algunas configuraciones de exportación y complementos todavía pueden registrar el aviso. Consulta El aviso todavía aparece después de actualizar.

¿Necesita ayuda?

Si tiene alguna pregunta o encuentra algún problema, estamos aquí para ayudarle.

¿Fue útil este artículo?

Artículos relacionados

Recursos y ayuda