插件:活动管理器-仅按开始日期搜索

时间:2012-08-21 作者:Graham Morley

编辑了我的问题,使其更加简洁

使用Wordpress插件事件管理器,我的目标是改变搜索表单,以便它在单个日期搜索事件。我不想要内置的日期范围搜索。

我的大多数活动都是夜总会活动,一直持续到第二天。因此,我还想更改事件搜索,以便如果我搜索8月18日星期六,我不希望它显示星期五开始但星期六凌晨3点结束的事件。

2 个回复
最合适的回答,由SO网友:Graham Morley 整理而成

我发现了一种不用破解代码就能解决此问题的设置:

事件管理器设置页面->页面选项卡->事件/列表存档

您会发现一个选项“当前事件是过去的事件吗?”设置为“是”。例如,这将导致对星期日的搜索不显示在星期六之前开始的事件。

然后只需在搜索表单中输入日期,而不是输入日期范围。。似乎对我很有用。

SO网友:Graham Morley

我解决了这个问题。首次添加

$args[\'scope\'] = $_REQUEST[\'scope\'][0]; 
到事件列表。php下线:

 em_locate_template(\'templates/events-search.php\',true);
这将阻止搜索查找日期范围,而只搜索单个日期。然后在事件搜索中。php,删除结束日期的第二个框。

然后在events manager插件文件夹“classes”文件em events中。php

这是196行的样子。请注意,我去掉了两行之间多余的空格,所以我的196行可能与你的不一样。。搜索“if($events\\u count>0)”,我将从这行开始:

        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;       
        }

结束