Drupal 7, Visualizações 3
Eu tenho várias visualizações configuradas que exibem dados ao longo de muitos anos. Os dados são filtrados por ano usando um campo de data como critério de filtro. Para cada ano, tenho visualizações de anexos que precisam ser filtradas ainda mais por semana. Em vez de determinar as datas exatas para as semanas de cada ano e inseri-las manualmente como critérios de filtro, estou pensando se há alguma maneira de adicionar um critério de filtro para filtrar por número da semana, ou seja, da semana 1 à semana 52. Dessa forma, o a única data que precisa ser definida é o ano para cada visualização, e o restante acontece automaticamente de acordo com o número da semana.
Estou agregando muitos dados por ano e semana em uma exibição de tabela em que cada coluna é um anexo de exibição adicional e tentando evitar a necessidade de inserir manualmente os filtros para datas da semana por ano.
Alguém tem algum conselho / dicas para mim sobre isso? Muito obrigado.
Aqui está o código com o qual estou jogando atualmente:
function x_week_start($date) {
$ts = strtotime($date);
$start = (date('w', $ts) == 0) ? $ts : strtotime('last sunday', $ts);
return date('Y-m-d', $start);
}
function x_week_end($date) {
$ts = strtotime($date);
$start = (date('w', $ts) == 0) ? $ts : strtotime('last sunday', $ts);
return date('Y-m-d', strtotime('next saturday', $start));
}
$date = '2013-01-14';
$start = x_week_start($date);
$end = x_week_end($date);
$inquiry_date = date('Y-m-d', $data->field_field_inquiry_date[0]['raw']['value']);
if ($inquiry_date <= $start) {return FALSE;}
Devo acrescentar que o field_inquiry_date field
é um timestamp unix.
Respostas:
Aqui está um truque: crie um novo formato de data navegando para Admin> Configuração> Regional e idioma> Data e hora e clicando na guia Formatos (admin / config / regional / date-time / formatos).
Defina-o como W (que é W maiúsculo) e fornecerá o número da semana, que você pode usar em qualquer data.
Dessa forma, você pode incluir o campo de data diretamente nas visualizações, definir o filtro W e usar a agregação, o filtro etc. sem nenhuma codificação adicional.
fonte
https://www.drupal.org/project/views_date_format_sql pode ajudá-lo a agrupar os dados da tabela com formatadores de data do SQL.
fonte