Las pruebas de compatibilidad PHP de WordPress implican verificar si tu plugin se comporta correctamente en cada combinación de versiones de PHP y WordPress que soportas. Con un sandbox de WordPress en wp.run, puedes lanzar instalaciones de prueba limpias, como PHP 8.4 con WordPress 6.9, y luego repetir la misma prueba de humo sin servidores locales ni riesgo en producción.
Por qué la compatibilidad PHP de WordPress necesita una matriz
Un plugin puede pasar en un stack y fallar en otro. Los cambios en PHP pueden exponer sintaxis obsoleta, tipado más estricto, funciones eliminadas o advertencias que no aparecían en un entorno de ejecución anterior. Los cambios en WordPress pueden afectar el comportamiento del editor, los hooks, los endpoints REST y las pantallas de administración.
| Dimensión | Qué decidir | Ejemplo |
|---|---|---|
| Versiones de WordPress | Versión actual, anterior y siguiente que soportas | WordPress 6.9 y 6.8 |
| Versiones de PHP | La más antigua soportada, el objetivo predeterminado, el objetivo más nuevo | PHP 8.1, 8.4, 8.5 |
| Estado del plugin | Instalación nueva, ruta de actualización, dependencias activas | Instalación limpia más WooCommerce |
| Profundidad de la prueba | Prueba de humo, prueba de administración, prueba de front-end, prueba de desinstalación | Activar, configurar, usar, desactivar |
Construye una matriz pequeña de PHP x versiones de WordPress
Empieza con la matriz más pequeña que responda una pregunta real de lanzamiento — tres filas: el stack más antiguo soportado, el actual recomendado y el stack más nuevo.
En wp.run, usa URLs de lanzamiento para pruebas repetibles:
https://wp.run/new?php=8.4&wp=6.9
Agrega el parámetro de plugin para presets:
https://wp.run/new?plugin=woocommerce&php=8.4&wp=6.9
Cómo probar la compatibilidad del plugin con PHP 8.4 en wp.run
- Lanza el stack objetivo. Pulsa Iniciar WordPress, elige PHP 8.4 y la versión de WordPress, crea el sandbox.
- Confirma el entorno. Abre wp-admin, verifica Herramientas → Salud del sitio → Información para las versiones de PHP y WordPress.
- Instala o activa el plugin. Carga un preset desde un parámetro de URL de lanzamiento, o sube el ZIP de tu plugin en wp-admin.
- Ejecuta la comprobación de activación. Observa si hay errores fatales, avisos de administración, dependencias faltantes, bucles de redirección y fallos del asistente de configuración.
- Ejercita la función principal. Ejecuta el flujo de trabajo real más pequeño para el que existe el plugin.
- Verifica las superficies de administración y front-end. Abre el editor de bloques, la configuración del plugin, la salida de la página pública, los endpoints REST y la consola del navegador.
- Repite en el siguiente stack. Lanza la siguiente versión de PHP o WordPress y ejecuta la misma lista de verificación, cambiando una dimensión a la vez.
Añade análisis estático, pero no te detengas ahí
Usa ambas señales juntas:
- Análisis estático primero. Encuentra funciones eliminadas, firmas obsoletas y sintaxis PHP específica de versión.
- Prueba en sandbox segundo. Confirma que el plugin arranca, renderiza la interfaz y completa su flujo de trabajo real en el stack objetivo.
- Nota de regresión al final. Registra qué falló, las versiones exactas y si el problema es una advertencia, un error fatal, una interfaz rota o un problema de datos.
Qué verificar durante las pruebas de versiones de WP
- Activación y desactivación. El plugin debe activarse y desactivarse limpiamente.
- Ruta de actualización. Instala la versión anterior, crea datos de muestra, luego actualiza y confirma que las migraciones se ejecutan.
- Pantallas de administración y editor. Prueba cada menú que agrega el plugin en todas las versiones de WordPress.
- Salida del front-end. Confirma que las plantillas, shortcodes, formularios o widgets se renderizan correctamente.
- REST, AJAX y tareas programadas. Prueba las solicitudes a los endpoints y el comportamiento dependiente de cron.
- Higiene de desinstalación. Desactiva y elimina en un sandbox desechable para verificar el comportamiento de limpieza.
Una matriz práctica para el lanzamiento de un plugin
| Fila de prueba | PHP | WordPress | Build del plugin | Objetivo |
|---|---|---|---|---|
| Soporte base | 8.1 | 6.8 | Candidato a lanzamiento | Confirmar que el entorno de ejecución más antiguo soportado sigue funcionando |
| Objetivo actual | 8.4 | 6.9 | Candidato a lanzamiento | Confirmar que el stack de demostración y soporte predeterminado funciona |
| Comprobación más nueva | 8.5 | 7.0 | Candidato a lanzamiento | Encontrar problemas tempranos antes de que los usuarios los encuentren |
| Ruta de actualización | 8.4 | 6.9 | Anterior → candidato a lanzamiento | Confirmar que los ajustes y datos migran correctamente |
Fallos de compatibilidad comunes a observar
- Error fatal en la activación. Funciones PHP eliminadas, clases faltantes o problemas de carga automática de dependencias.
- Advertencias en PHP más nuevo. Propiedades dinámicas, argumentos anulables, firmas obsoletas.
- Ruptura del editor. El plugin funciona en el front-end pero el editor de bloques falla en WordPress más nuevo.
- Fallos de AJAX, REST o actualización. Manejo de nonces, registro de rutas o tablas personalizadas.
- Conflictos de dependencias. Dos plugins que envían versiones incompatibles de una biblioteca compartida.
Preguntas frecuentes
¿Qué es la compatibilidad PHP de WordPress? La capacidad de WordPress core, un plugin o un tema de ejecutarse correctamente en una versión específica de PHP. Los plugins deben probarse en un entorno de WordPress real.
¿Cómo pruebo un plugin en PHP 8.4? Lanza un sandbox de wp.run con PHP 8.4, confirma en Salud del sitio, instala el plugin, ejecuta las comprobaciones de activación, administración, editor, front-end y desinstalación.
¿La compatibilidad de WordPress core significa que mi plugin también es compatible? No. WordPress core puede ser compatible mientras un plugin sigue fallando debido a su propio código, dependencias o interfaz de administración.
¿Cuántas combinaciones de PHP y WordPress debo probar? Prueba la más antigua que soportas, la predeterminada actual y la más nueva. Agrega filas para rutas de actualización o entornos reportados por clientes.