Como parar o WordPress de remover e de URL

Então eu tenho uma URL que possui um link de rastreamento aplicado ao final. Por algum motivo, o WordPress está removendo o “&” que está causando que o rastreamento falhe. Você pode ver o URL exmaple aqui:

http://www.domain.co.uk/internalpage/?&mkwid=smWfvaLGf_dm

Quando você passa por isso, você então é “redirecionado” de forma a:

http://www.domain.co.uk/internalpage/?mkwid=smWfvaLGf_dm

Observe que o “&” foi removido. Isso também acontece nas páginas internas. Alguém sabe como parar isso?

Obrigado e ajuda muito apreciado!

Solutions Collecting From Web of "Como parar o WordPress de remover e de URL"

Você pode usar aqui a function rawurlencode (). First pass “? & Mkwid = smWfvaLGf_dm” esta url para a function, então você terá “% 3F% 26mkwid% 3DsmWfvaLGf_dm” valor codificado.

Agora vá no functions.php e coloque este código lá (Mas este código será executado em cada chamada do seu site)

 //for accessing current url $accessUrl = get_site_url() .$_SERVER['REQUEST_URI']; $pos = strpos($accessUrl, "%"); if ($pos !== false) { $accessString = rawurldecode($accessUrl); wp_redirect($accessString); exit(); } 

Eu sinto que isso irá ajudá-lo. obrigado

Aqui está a parte por que :

Esta parte do redirect_canonical() está removendo o líder & na parte de consulta de redirecionamento :

 // tack on any additional query vars $redirect['query'] = preg_replace( '#^\??&*?#', '', $redirect['query'] ); 

Exemplo:

 example.tld/?&a=1&b=2&c=3 

é redirecionado para

 example.tld/?a=1&b=2&c=3 

Se você deve ter o líder & você pode tentar ajustá-lo através do filtro redirect_canonical :

 /** * Filter the canonical redirect URL. * * Returning false to this filter will cancel the redirect. * * @since 2.3.0 * * @param string $redirect_url The redirect URL. * @param string $requested_url The requested URL. */ $redirect_url = apply_filters( 'redirect_canonical', $redirect_url, $requested_url );