
📅 Publicado el 7 de agosto, 2026 · Por Equipo RedServicio
Si quieres que tu web vuele, hay un detalle técnico que a menudo se pasa por alto pero que frena todo: los query strings. Herramientas como GTmetrix o PageSpeed Insights te lo van a señalar con una luz roja. Y tienen razón. Esos parámetros extra que cuelgan de tus archivos CSS y JavaScript parecen inofensivos, pero son un obstáculo real para que los proxies y navegadores hagan bien su trabajo de caché. La consecuencia es clara: el visitante que regresa tiene que esperar más de la cuenta.
¿Qué son exactamente estos query strings?
Un query string es ese fragmento de la URL que sirve para enviar datos al servidor. Empieza con un signo de interrogación ? y suele traer unos cuantos pares de valores unidos por el signo &. En el día a día del desarrollo web, es muy común encontrarse con enlaces a hojas de estilo o scripts que tienen este aspecto:
https://tudominio.com/style.css?v=1.2.4https://tudominio.com/main.js?ver=5.8
Normalmente, el desarrollador pone ahí el parámetro (como ?v=... o ?ver=...) para el control de versiones. Es una lógica entendible: al actualizar el archivo, se cambia el número en la URL para obligar al navegador a bajar la nueva versión y no usar la antigua que ya tiene guardada. La intención es buena. El problema es que los servidores proxy y las CDNs odian estas URLs.
¿Por qué rompen el Caching?
Para ver el daño, hay que entender cómo funciona la caché. La mayoría de los proxies y firewalls están configurados, por defecto, para no cachear recursos que lleven query strings. Es una herencia de los viejos tiempos, donde una URL con parámetros sinificaba contenido dinámico que cambiaba a cada segundo (resultados de búsqueda, carritos de la compra). Guardar eso como algo estático no tenía ningún sentido.
Si tus archivos estáticos llevan un signo de interrogación, lo más probable es que:
- El navegador del usuario se descargue el archivo una y otra vez en cada visita. Malgastando ancho de banda.
- Las CDNs no sirvan el archivo desde el nodo más cercano, ralentizando la entrega.
- Tu puntuación de optimización se venga abajo, lo cual no ayuda nada a tu SEO.
Dato clave: Las reglas de rendimiento de Yahoo son claras: eliminar los query strings de los recursos estáticos es una de las prácticas de «alto impacto» para recortar los tiempos de carga de retorno.
Cómo quitarlos en WordPress
WordPress, por su propia naturaleza, añade el parámetro ?ver=X.X.X a todos sus estilos y scripts registrados. Pero puedes limpiar esas URLs sin perder el control de versiones.
Método 1: Tocar el archivo functions.php
Si tienes acceso para editar tu tema, un pequeño fragmento de código basta para eliminar el parámetro de versión de la URL. Es más eficiente que cargar un plugin, ya que no añade sobrecarga. Abre tu archivo functions.php y pega esto:
function redservicio_eliminar_query_strings( $src ) {
if( strpos( $src, '?ver=' ) )
$src = remove_query_arg( 'ver', $src );
return $src;
}
add_filter( 'script_loader_src', 'redservicio_eliminar_query_strings', 15, 1 );
add_filter( 'style_loader_src', 'redservicio_eliminar_query_strings', 15, 1 );
El código usa los filtros script_loader_src y style_loader_src para interceptar la URL antes de que se imprima en el HTML, borrando específicamente el argumento ver. Limpio y directo.
Método 2: Plugins de optimización
Si no quieres ver ni una línea de código, plugins como W3 Total Cache, WP Rocket o Autoptimize traen esta función integrada. Suelen ponerla en la sección de «Optimización de archivos» o «Caché de navegador». Busca la casilla «Eliminar query strings de recursos estáticos» y márcala.
En RedServicio siempre aconsejamos probar primero sin plugins si sabes lo que haces, para mantener la instalación ligera. Ahora bien, si ya usas un plugin de caché, aprovechar esa función es totalmente válido.
Alternativa: Versionamiento por nombre de archivo
Quitar el query string arregla el tema de la caché, pero surge un problema: ¿qué pasa cuando actualizas tu archivo style.css? Si el nombre se queda igual, un usuario que visitó tu sitio ayer no verá los cambios. Su navegador seguirá usando la versión vieja que tenía guardada.
La salida profesional —y la que Google prefiere— es el versionamiento por nombre de archivo. En vez de style.css?v=1.2, renombras el archivo físico a style.12345.css (usando un hash único o el timestamp de la última modificación).
Un ejemplo:
- Viejo (con query string):
/wp-content/themes/mi-tema/style.css?ver=1.2 - Nuevo (sin query string):
/wp-content/themes/mi-tema/style.1625098432.css
Así, la URL es estática (sin el maldito ?), así que los proxies y CDNs la cachéan sin problemas. Pero como el código de la URL cambia, el navegador entiende que es un recurso nuevo y lo descarga.
Poniendo en práctica el versionamiento por nombre
Si usas herramientas de construcción como Webpack, Gulp o Laravel Mix, pueden automatizar esto añadiendo un «hash» al nombre del archivo al compilar. En un entorno PHP puro, puedes lograr algo parecido con enlaces dinámicos:
<link rel="stylesheet" href="style.css?v=<?php echo filemtime('style.css'); ?>">
Pero espera, ¡esto vuelve a usar ?v=! Exacto. Para hacerlo sin query strings, necesitas reescribir la URL desde el servidor web. Hay técnicas para renombrar el archivo en tiempo real o usar reglas de reescritura, aunque lo más sensato en entornos modernos es dejar que tu proceso de «build» genere los archivos con el nombre modificado (ej. main.a1b2c3d4.js) y actualizar las referencias en el HTML solo.
Verificación y Pruebas
Nada de aplicar cambios y dejarlo ahí. Tienes que comprobar que todo sigue funcionando. No querrás haber eliminado los query strings y terminar sirviendo un CSS antiguo que rompa el diseño por completo.
- Limpia la caché: Si usas un plugin o servicios como Cloudflare, purga la caché al completo.
- Mira el código fuente: Clic derecho, «Ver código fuente». Busca enlaces a archivos
.cssy.jsy asegúrate de que no terminen en?ver=.... - Prueba externa: Corre una prueba en GTmetrix o Google PageSpeed Insights. Busca la fila «Remove query strings from static resources». Si está en verde, lo has logrado.
Seguridad y Hosting
Cuando toques la carga de recursos, haz copia de seguridad. Un error de sintaxis en functions.php puede dejar tu sitio fuera de servicio en un segundo.
La velocidad no es solo cuestión de pequeños ajustes de código; la infraestructura cuenta mucho. En RedServicio sabemos que cada milisegundo es oro. Por eso, nuestros planes de hosting usan servidores optimizados para contenido estático y tenemos soporte técnico 24/7 para ayudarte con estas optimizaciones.
Conclusión
Eliminar los query strings de los recursos estáticos es una de esas tareas técnicas que parecen menores, pero que marcan la diferencia. Inciden directamente en cómo se gestiona la caché de tu sitio, y por ende, en la velocidad de carga. Ya sea con un ajuste rápido en el functions.php o implementando un versionado por nombre de archivo más sólido, el resultado es una web más ágil. En este trabajo, la velocidad es éxito, y cada detalle suma.
Preguntas Frecuentes
¿Es seguro eliminar los query strings?
Sí, siempre que mantengas algún método de control de versiones. Si borras el parámetro ?ver= y luego actualizas el archivo sin cambiarle el nombre, es posible que los usuarios no vean tus cambios.
¿Esto mejorará mi posicionamiento en Google?
Indirectamente. Google usa las «Core Web Vitals» y la velocidad de página como factores de ranking. Si mejoras la caché y la carga, tu sitio tiene más papeletas para subir.
Equipo RedServicio
Artículos escritos y revisados por nuestro equipo técnico especializado en hosting e infraestructura web en España.
¿Listo para un hosting de verdad?
Servidores en España · Soporte 24/7 en español · Migración gratuita
Ver Planes desde 3,95€/mes →