Não precisa fazer nada de código, apenas usar a estrutura de URLs do WP.
Mostrar todos os posts de 2016
nomedosite.com.br/2016
Mostrar todos os posts de dezembro de 2016
nomedosite.com.br/2016/12
Mostrar todos os posts de 02 de dezembro de 2016
nomedosite.com.br/2016/12/02
Ou se preferir, usar argumentos na URL:
nomedosite.com.br/?year=2016&monthnum=12&day=02
O último funciona melhor com Custom Post Types
nomedosite.com.br/post-type/?year=2016&monthnum=12&day=02
E se quiser adicionar um parâmetro de busca pode usar “s”
nomedosite.com.br/post-type/?year=2016&monthnum=12&day=02&s=keywords
Mas pra fazer isso dinamicamente?
Tipo eu deixando um formulário para ele inserir a data e o wordpress buscar.
Como seria o código?
o Código na minha área de busca ficou assim:
<form method=”get” action=”<?php bloginfo(‘home’); ?>” id=”frm-search”>
<fieldset>
<label for=”frm-search-keyword”>Buscar</label>
<input type=”text” name=”s” id=”s” value=””>
<button type=”submit” id=”frm-search-submit” value=”Busca”></button>
</fieldset>
</form>
Como eu implementaria para ele buscar por data?
Sim, é só adcionar no seu formulário os campos year, monthnum e day
ex: <input type=”text” name=”year” id=”year” value=”2016”>
Tentei assim e não consegui.
Queria passar a data no formulário ex:
02/12/2016
Mandar fazer a busca e retornasse no search.php os Diários Oficiais cadastrados nesse dia.
Então, no formulário você vai ter que ter 3 campos com os nomes “year”, “monthnum” e “day”. Você pode colocar direto esses campos pra formar a data:
<input type=”text” name=”day” id=”day” value=”01”>/<input type=”text” name=”monthnum” id=”monthnum” value=”12”>/<input type=”text” name=”year” id=”year” value=”2016”>
E aí formata com css/javascript pra melhorar a experiência do usuário.
Só uma observação as “aspas” estão erradas devido ao forum wp converter o html.
Tem que ser assim:
<input type="text" name="day" id="day" value="01">/<input type="text" name="monthnum" id="monthnum" value="12">/<input type="text" name="year" id="year" value="2016">