Skip to content

Tag: extensión

Solución para WP-Serverinfo 1.40

Si usas la extensión WP-Serverinfo de Lester ‘GaMeRz’ Chan en su última versión (1.40) seguramente te hayan dejado de funcionar los enlaces que permiten pasar a las páginas Display PHP Information y Display MYSQL Information.

Captura de WP-Serverinfo
Captura de WP-Serverinfo

Esto ocurre porque no se realiza correctamente la llamada al código que inserta el archivo javascript necesario para que funcionen dichos enlaces.

Al consultar el foro de WP-Serverinfo encontré una solución muy sencilla que lo hacía funcionar, pero también hacía que el archivo javascript utilizado (solo) por esta extensión se cargara en todas las páginas de administración en lugar de sólo en su página, como era la intención inicial del autor de esta extensión y lo recomendable para evitar problemas con otras extensiones.

Así que tras analizar el código y echar mano de la mejor documentación de WordPress que existe (por no decir la única), he realizado mi propia corrección al código que ahora comparto con vosotros (y que también he puesto en el foro de la extensión, claro).

Sobreescribe funciones del núcleo de WordPress

¿Por qué sobreescribir en lugar de eliminar?

A primera vista, modificar los archivos del núcleo parece mucho más fácil que sobreescribir las funciones. Pero ¿qué harás cuando tengas que actualizar tu blog?. Más o menos cada dos meses salen nuevas versiones de WordPress, así que será un largo y aburrido trabajo de volver a modificar cada archivo del núcleo previamente modificado por ti.

Por suerte, hay una solución al problema. Las llamadas a las funciones de filtro de WordPress. Por ejemplo, cuando instalas una extensión de WordPress que modifica alguna función del núcleo de WordPress, puedes estar seguro de que esa extensión usa  un filtro.

Usando filtros

Como he dicho, un filtro puede usarse desde una extensión. Pero no necesariamente: También puedes usar uno en el archivo functions.php de tu tema. Si tu tema no tiene un archivo functions.php, podrías crearlo.

La función de filtro más común se llama add_filter():

add_filter('hook_name', 'your_filter', [priority], [accepted_args]);