Si actualizaste a WordPress 6.2.1, una actualización de seguridad y mantenimiento, y se ha roto tu web, foros o red social, o no se muestra parte de tus páginas es muy probable que sea debido a esta versión de WordPress incorpora un ajuste de seguridad que impide que se ejecuten shortcodes desde plantillas.
Esto está provocando no pocos problemas a montones de sitios WordPress que usan plugins como bbPress, con montones de shortcodes en las plantillas, y sobre todo a webs personalizadas mediante shortcodes, uno de los métodos más empleados en WordPress para realizar funciones complejas de manera sencilla.
Si te ha pasado algo de esto, y tienes claro que es debido a esta actualización, puedes aplicar una de estas 2 posibles soluciones:
- Volver a la versión anterior de WordPress, y esperar un parche que solucione este problema, posiblemente en una nueva actualización.
- Usar el siguiente código, compartido en el Trac por Anderson Martins, creando un plugin con él, para poder tener WordPress 6.2.1 pero manteniendo la compatibilidad con shortcodes en plantillas…
<?php /* Plugin Name: Fix shortcode Plugin URI: Description: Restore shortcode support on block templates Author: Anderson Martins Version: 0.1.0 */ add_filter('render_block_data', function($parsed_block) { if (isset($parsed_block['innerContent'])) { foreach ($parsed_block['innerContent'] as &$innerContent) { if (empty($innerContent)) { continue; } $innerContent = do_shortcode($innerContent); } } if (isset($parsed_block['innerBlocks'])) { foreach ($parsed_block['innerBlocks'] as $key => &$innerBlock) { if (! empty($innerBlock['innerContent'])) { foreach ($innerBlock['innerContent'] as &$innerContent) { if (empty($innerContent)) { continue; } $innerContent = do_shortcode($innerContent); } } } } return $parsed_block; }, 10, 1);
Si no te atreves o no sabes cómo crear un plugin con el código puedes descargarlo desde este enlace, que ya lo he creado yo y empaquetado en un zip, para instalar el plugin como cualquier otro.
Una vez instalado y activo no hay que hacer nada, solo comprobar que ya funciona tu web con normalidad, a pesar de haber actualizado a WordPress 6.2.1.
El artículo WordPress 6.2.1 ha roto mi web → Soluciones lo publicó Fernando Tellado previamente en Ayuda WordPress. Lo que ves aquí es una copia de dicho contenido :/Nota: Esto que he compartido aquí son soluciones temporales, que no deberías mantener sino buscar otra solución permanente, pues podría suponer una vulnerabilidad para tu web.
0 Commentaires