Plugin: Gerenciador de Eventos – Pesquisar apenas por data de início

EDITOU MINHA PERGUNTA PARA FAZER UMA MANEIRA MAIS CONCISE

Usando o plugin do WordPress, o Gerenciador de Eventos, meu objective é alterar o formulário de pesquisa para que ele busque events em datas únicas. Eu não quero uma pesquisa de intervalo de datas que seja incorporada.

A maioria dos meus events são events noturnos, que continuam até o dia seguinte. Por isso, eu também quero alterar a pesquisa de events, de modo que, se eu procurar por sábado, 18 de agosto, não quero exibir events que começaram na sexta-feira, mas terminaram no sábado às 3 da manhã.

Solutions Collecting From Web of "Plugin: Gerenciador de Eventos – Pesquisar apenas por data de início"

Eu resolvi isso. Primeiro adicione

$args['scope'] = $_REQUEST['scope'][0]; 

para os events-list.php abaixo da linha:

  em_locate_template('templates/events-search.php',true); 

Isso impedirá a pesquisa de encontrar um intervalo de datas e apenas pesquisar datas únicas. Em seguida, em events-search.php, remova a segunda checkbox para data final.

em seguida, na pasta do plugin do gerenciador de events pasta “classs” em-events.php

Isto é o que deve ser parecido com a linha 196. Por favor, notei que me livrei dos espaços extras entre as linhas, então minha linha 196 pode não ser a mesma da sua … faça uma pesquisa para “if ($ events_count> 0)” e Essa é a linha a partir da qual:

  if ( $events_count > 0 ) { foreach ( $events as $EM_Event ) { if ( !$args['scope'] || ( $args['scope'] == $EM_Event->event_start_date ) ) { $output .= $EM_Event->output($format); $stop_now = false; } else { $output = get_option ( 'dbem_no_events_message' ); $stop_now = true; // so that we don't add a header and footer if there are no events displayed } } if ( !$stop_now ) { // if there are events to display //Add headers and footers to output if( $format == get_option ( 'dbem_event_list_item_format' ) ){ $format_header = ( get_option( 'dbem_event_list_item_format_header') == '' ) ? '':get_option ( 'dbem_event_list_item_format_header' ); $format_footer = ( get_option ( 'dbem_event_list_item_format_footer' ) == '' ) ? '':get_option ( 'dbem_event_list_item_format_footer' ); }else{ $format_header = ( !empty($args['format_header']) ) ? $args['format_header']:''; $format_footer = ( !empty($args['format_footer']) ) ? $args['format_footer']:''; } $output = $format_header . $output . $format_footer; } 

Descobri uma configuração que resolve esse problema sem ter que cortar o código:

Página de configurações do Gerenciador de events -> guia Páginas -> Arquivo de events / lista

Você encontrará uma opção “Os events passados ​​são events passados?” definido para sim. Isso, por exemplo, causará pesquisas no domingo para não exibir events que começaram o sábado antes.

Em seguida, basta fazer o formulário de pesquisa ter uma input de data, mas não uma input de intervalo de data. Parece funcionar muito bem para mim.