En este artículo vamos a ver como arañar unos segundos al crono no utilizando ningún plugin o similar, si no a través de la línea de comandos.
¿Y cómo te preguntarás? pues a través de WP CLI. Lo primero que necesitarás es tenerlo instalado, escribí un artículo hace tiempo sobre cómo instalar WP CLI y los primeros pasos.
Una vez lo tengas, es necesario que te instales el paquete wp-cli/profile-command.
wp package install wp-cli/profile-command
Una vez instalado puedes teclear wp profile –help para acceder a la ayuda y ver todas las opciones disponibles. Lo interesante de este paquete es que nos va a permitir ver los tiempos y ejecuciones que tenemos en nuestro sitio y nos va a ayudar a detectar posibles cuellos de botella e incluso ver si algo de lo que se está ejecutando es realmente necesario o no.
Utilizando wp profile stage –all nos mostrará información de las 3 «etapas» de una petición: bootstrap, main_query y template (Más info en wp profile stage –help).
Nos aparecerá un listado de los hooks que se ejecutan en los 3 stages, donde podremos ver cuantas funciones están enganchadas a cada uno de ellos, el tiempo de ejecución que se «pierde», y el número de querys que se hacen.
Esto es muy útil para identificar posibles cuellos de botella, si vemos que en uno de estos hooks se dispara el tiempo. Y podremos decidir qué hacer con ello… si se puede optimizar, si se puede retrasar en el proceso de carga, etc…
Pero para profundizar aún más tenemos el comando hook, donde podremos ver los métodos enganchados a un hook concreto. Por ejemplo, si queremos ver qué se está ejecutando en el init, bastará con lanzar wp profile hook init:
Aquí veremos en detalle cuales son los métodos que se están ejecutando en el init. Este pantallazo es con un WordPress de serie, pero ten por seguro que cuanto más plugins tengas instalados, y cuanto más multipropósito sea tu tema… te aparecerán aquí más callbacks y aumentarán considerablemente los tiempos de ejecución.
Pues nada, sólo te queda instalártelo y trastear con ello para conseguir micro optimizaciones que ayudarán a mejorar el WPO de tu sitio.