Digamos, tengo una instalación de WordPress ejecutándose en example.com y tengo la siguiente URL
Ahora, quiero que WordPress ignore la parte w=100 porque, cada vez que paso un argumento numérico a w, WordPress me redirige a la página única, asumo que esto tiene algo que ver con los archivos adjuntos.
No puedo cambiar el nombre de w a nada más porque está fuera de mi control, mi sitio tiene que funcionar con una aplicación de terceros que no me permitirá modificar esta condición.
probé esto
add_filter('request', array($this,'on_request'));
function on_request($vars){
unset($vars['w']);
return $vars;
}
Y no funcionaría. ¿Algún consejo sobre esto, por favor?
Tendría cuidado con este enfoque. los w
parámetro es un Variable de consulta reservada de WordPress. El parámetro se usa para encontrar el número de semana en función de la opción start_of_week en la configuración y probablemente afecta a un montón de consultas.
Si no puede cambiar el parámetro como mencionó, si es posible, al menos verificaría si la solicitud proviene de ese proveedor externo y solo luego desactivaría el parámetro.
-
No sabía que es una variable de consulta reservada, supuse que tenía algo que ver con el cambio de tamaño de las imágenes y w representaba el ancho, ya que solo acepta valores numéricos. Seguiré tus instrucciones al respecto, muchas gracias.
– aghoshx
28/09/2013 a las 17:20
-
Para cualquiera que esté mirando esto ahora, se usa durante la semana.
– aghoshx
7 de marzo de 2020 a las 7:07
aghoshx
Está bien, lo resolví yo mismo.
add_filter( 'request', 'alter_the_query' );
function alter_the_query( $request ) {
unset($request['w']);
return $request;
}
-
¿Por qué es “$dummy_query = new WP_Query(); // la consulta no se ejecuta si no pasamos ninguna consulta vars $dummy_query->parse_query( $request );” ¿necesario?
– John Smith
10 de mayo de 2019 a las 11:19
-
No estoy seguro de entender la pregunta. ¿Está preguntando por qué se requiere esa línea?
– aghoshx
9 de julio de 2019 a las 9:42
-
sí, exactamente, no parece hacer nada
– John Smith
9 de julio de 2019 a las 15:36
-
Está creando una nueva instancia de WP_Query.
– aghoshx
7 de marzo de 2020 a las 7:06
-
Si solo desea que esto se haga para un subconjunto de su sitio web, envuelva el
unset
Comando en una declaración if: esto significa que WordPress aún puede usarlo cuando corresponda.– Ollie
24 de agosto de 2020 a las 2:59