Cómo solucionar el error en plugin Configurable Report en Moodle™ 4.4, 4.5, 5 clean() can not process arrays

📖 2 minutos

Iniciación

Actualizado 28/11/2025

En Moodle 4.5.5 el plugin Configurable Reports (Informes Configurables) muestra un error.

Si has actualizado tu Moodle a la versión 4.4, 4.5.5 o 5 y utilizas el plugin Configurable Reports (Informes Configurables) (para Moodle 5 aún no hay versión oficial pero se puede usar), es muy probable que te encuentres con este error al usar filtros como fechas o nombres:

Detectado un error de codificación, debe ser corregido por un programador:
clean() can not process arrays, please use clean_array() instead.

Este problema aparece porque, a partir de Moodle 4.4, el core ya no permite procesar arrays con la función optional_param(). Ahora se debe usar optional_param_array().

Además, este bug ya ha sido reportado oficialmente en GitHub en el issue #278 del repositorio del plugin, donde se confirma que es necesario actualizar las llamadas a optional_param para garantizar compatibilidad en Moodle 4.5. 👉 Ver issue en GitHub

Tutorial para corregir el error

1. Busca el fichero:

/blocks/configurable_reports/components/columns/userstats/plugin.class.php

⚠️ Haz una copia de seguridad del archivo original antes de editarlo. ⚠️
Yo lo que hago es duplicarlo y cambiarle el nombre, por ejemplo, a plugin.class-backup.php

2. Edita el archivo y busca estas líneas (alrededor de la línea 72):

$filterstarttime = optional_param('filter_starttime', 0, PARAM_RAW);
$filterendtime = optional_param('filter_endtime', 0, PARAM_RAW);

Sustituye esas líneas por esto:

$filterstarttime = optional_param_array('filter_starttime', [], PARAM_RAW);
$filterendtime = optional_param_array('filter_endtime', [], PARAM_RAW);

$starttime = is_array($filterstarttime) ? ($filterstarttime[0] ?? 0) : $filterstarttime;
$endtime = is_array($filterendtime) ? ($filterendtime[1] ?? 0) : $filterendtime;

3. Guarda el archivo y sube los cambios (si trabajas en local)

4. Limpia el caché

Administración del sitio > Desarrollo > Purgar todas las cachés

5. Prueba los filtros en tu informe

Haz una prueba aplicando filtros de fecha o nombres en el informe que usaba userstats. Si todo está bien, el error ya no debería aparecer.Haz una copia de seguridad del archivo original antes de editarlo.

Espero te sea de ayuda, deja tu comentario 🤗

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

"Crear Cursos en Moodle"

🎯 Descarga GRATIS nuestro Checklist en PDF

Descubre los pasos clave para crear un curso rentable y profesional.
La palabra Moodle y los logotipos asociados de Moodle son marcas comerciales o marcas comerciales registradas de Moodle Pty Ltd o sus afiliados relacionados.

eLearning Fácil utiliza el software Moodle™ pero no tiene ninguna relación con Moodle Pty Ltd.
© 2024. Todos los derechos reservados.