A pesquisa usa index.php em vez de search.php no campo de pesquisa de renomeação de “s”

Estou construindo um formulário de pesquisa personalizado que possui várias checkboxs de pesquisa e as mudo para “searchbox1” de “s”. Agora, o WP não usa search.php; Em vez disso, o código é executado de index.php. Como posso fazer com que use search.php?

Solutions Collecting From Web of "A pesquisa usa index.php em vez de search.php no campo de pesquisa de renomeação de “s”"

Bem, o s não é apenas um nome / ID, é uma consulta var, pois os campos do formulário são injetados por meio de GET ou POST para o URL que é verificado para a varredura s query.

Se a consulta s var for definida, o search.php (se presente no seu tema) será chamado automaticamente.

Está tudo bem se você tiver várias checkboxs de pesquisa com campos que compartilham o mesmo nome. Cada checkbox de pesquisa tem seu próprio formulário de qualquer maneira.

Em resumo: renomeie o campo de input da pesquisa de volta para s (ou altere os redirecionamentos / reescritas, etc., o que é absurdo, na minha opinião).

Eu acho que a sugestão do @ tf é boa. Você deve tentar manter o nome s . Se você não pode fazer isso, você pode filtrar template_include e retornar o modelo que deseja usar.

Idéia, não testada:

 if ( isset ( $_GET['searchbox1'] ) ) add_filter( 'template_include', 'get_search_template' );