Pretty Permalinks

4

Eu criei minha própria funcionalidade de pesquisa, que basicamente encontra a loja mais próxima mais próxima do código postal inserido.

Meu URL para a pesquisa atualmente parece com este http://www.example.com/stores?searchTerm=London , que não é muito amigável para SEO. Gostaria que meu URL estivesse no seguinte formato - http://www.example.com/stores/London , mas devido à minha falta de conhecimento sobre como o URL do WordPress Reescreve o trabalho, estou tendo dificuldades com isso e gostaria de receber ajuda para resolver esse problema.

As lojas são uma página que percorre os resultados.

Se alguém tiver alguma ideia de como fazer isso ou puder me apontar na direção certa, será muito apreciado.

    
por Codarz360 09.07.2013 / 22:44

1 resposta

1

Você deve adicionar sua própria variável de consulta personalizada primeiro:

function add_search_store_query_var($vars) {
    $vars[] = 'search_store';
    return $vars;
}
add_filter( 'query_vars', 'add_search_store_query_var');

E adicione a regra de reescrita:

function add_search_store_rewrite_rule() {
    add_rewrite_rule('stores/([^/]+)$', 'index.php?page_id=<YOUR SEARCH PAGE ID>&search_store=$matches[1]', 'top');
}
add_action('init', 'add_search_store_rewrite_rule');

Você pode usar get_query_var('search_store'); para obter o termo de pesquisa.

Lembre-se de liberar as regras de reescrita antes de verificar - não funcionará sem regras de liberação. (Basta ir para permalink configurações e clique em salvar).

PS. Codificado diretamente aqui, então pode ser um pouco buggy.

    
por Krzysiek Dróżdż 11.07.2013 / 18:27