X

Personalizar la herramienta de Salud del Sitio en WordPress

En un artículo anterior aprendimos a usar la Herramienta de Salud del Sitio de WordPress, en este artículo veremos cómo eliminar alguno de los registros que nos reporta el estado del sitio o incluso evitar copiar información sensible colocándola como privada.

 

Generalidades

Existen algunos plugins que te permiten gestionar qué información reportar a través de la herramienta de Salud del Sitio de WordPress, por ejemplo Site Health Manager, sin embargo en este artículo veremos cómo realizar lo mismo pero a través de código.

 

Eliminar registros del Estado del Sitio

Para eliminar registros del estado de la herramienta de Salud del Sitio, podemos usar elHook site_status_tests.

En el siguiente código vemos un ejemplo de eliminación de la comprobación de plugins desactualizados


function dcms_remove_items_site_state( $tests ) {
    unset( $tests['direct']['plugin_version']);
    return $tests;
}
add_filter( 'site_status_tests', 'dcms_remove_items_site_state' );

Puedes usar la depuración de PHP para saber que keys tiene el array asociativo y ver qué elementos puedes remover.

En el código anterior:

  • Usamos el Hook de filtro site_status_tests que hace referencia a la función dcms_remove_items_site_state()
  • La función acepta una parámetro llamado $test que es un array asociativo y que tiene los registros a ser reportados
  • Localizamos el key del array y usamos la función unset() de PHP para eliminarlo
  • Finalmente devolvemos la $test variable modificada

 
Al final veremos que el registro de comprobación de actualización de plugins habrá desaparecido, tal como se simula en la siguiente imagen:

 

Eliminar registros Información del Sitio

En la sección de Información de Salud del Sitio tenemos la opción de copiar la información reportada para enviarla a quien lo solicite, sin embargo es posible que quieras evitar copiar cierta información sensible y dejarla sólo como privada. Para hacer cambios podemos usar el Hook de filtro debug_information.

En el siguiente código vemos un ejemplo de cómo colocar como privada la versión de WordPress, de manera que cuando se copie y pegue el contenido esta información no sea tomada en cuenta.


function dcms_remove_items_site_info( $info ) {
    $info['wp-core']['fields']['version']['private'] = true;
    return $info;
}
add_filter( 'debug_information', 'dcms_remove_items_site_info' );

Puedes usar la depuración de PHP para saber que keys tiene el array asociativo y ver qué elementos puedes colocar como privados.

En el código anterior:

  • Usamos el Hook de filtro debug_information que hace referencia a la función dcms_remove_items_site_info()
  • La función acepta un parámetro que es un array asociativo, para que cierta información no se copie se te tiene que agregar la clave private a true
  • Finalmente retornamos el array modificado

 
Al final veremos que el registro que muestra la versión de WordPress no será tomado en cuenta cuando copiemos y peguemos el reporte.

 

Conclusión

Tal como hemos visto, es posible personalizar la información reportada por la Herramienta de Salud del Sitio que tiene WordPress y lo podemos hacer de manera sencilla utilizando código.

 
¿Aún con dudas?, en el siguiente video se detallan los puntos tratados anteriormente.

Suscríbete a DecodeCMS:  

 

Categorías: Core
Etiquetas: herramientas