Sustitución de función
-
Hasta la versión 8.1.1 del plugin JetPack funcionaba perfectamente lo siguiente:
if (!class_exists('Jetpack') || !Jetpack::is_module_active('publicize')) return;
Esto hacía que el código restante no se aplicara en caso de que Jetpack no esuviera instalado o que el módulo Publicize no estuviera activo. No obstante, a partir de la mencionada versión daba un error:
Notice: Jetpack_Options was called incorrectly. Not all plugins have loaded yet but we requested the class Jetpack_Options Please see Debugging in WordPress for more information. (This message was added in version 1.1.2.0.) in /xxxxxx/wp-includes/functions.php on line 4989
De las dos funcionas, es
!Jetpack::is_module_active('publicize')
la que provoca el error.He preguntado en el foro de JetPack y me dice que use https://developer.jetpack.com/hooks/jetpack_active_modules/
Ahora bien, la función «is_module_active» existe:
https://github.com/Automattic/jetpack/blob/8.4.2/class.jetpack.php/#L2799
He probado con
$bool = Jetpack::is_module_active( 'publicize' ); if (!class_exists('Jetpack') || $bool == false ) return;
pero sigue arrojando el mismo error.
La pregunta, por tanto, sería:
1) ¿Cómo usar la función «is_module_active»?
2) Si eso no fuera posible, ¿cómo saber si un código está activo o no usando el filtro que me han indicado en el foro del plugin?
- El debate ‘Sustitución de función’ está cerrado a nuevas respuestas.