PluginProbe
Themify Event Post / trunk
Themify Event Post vtrunk
1.3.7 trunk 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6
themify-event-post / templates / widget-posts.php

widget-posts.php in Themify Event Post trunk, at templates/widget-posts.php

75 lines 1.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * Template to display Event Post widget
4 *
5 * To override this file copy it to <your_theme>/themify-event-post/widget-posts.php
6 *
7 * @var $args
8 * @var $instance
9 * @var $widget
10 *
11 * @package Themify Event Post
12 */
13 global $post;
14
15 $query_args = array(
16 'post_type' => 'event',
17 'posts_per_page' => $instance['show_count'],
18 'suppress_filters' => false,
19 );
20 if ( ! empty( $instance['category'] ) ) {
21 $query_args['tax_query'][] = array(
22 'taxonomy' => 'event-category',
23 'field' => 'id',
24 'terms' => $instance['category']
25 );
26 }
27 if ( $instance['show'] === 'upcoming' ) {
28 $query_args['meta_query'] = array(
29 'relation' => 'OR',
30 array(
31 'key' => 'end_date',
32 'value' => date_i18n( 'Y-m-d H:i' ),
33 'compare' => '>='
34 ),
35 array(
36 'key' => 'start_date',
37 'value' => date_i18n( 'Y-m-d H:i' ),
38 'compare' => '>='
39 )
40 );
41 } else if ( $instance['show'] === 'past' ) {
42 $query_args['tep_past_filter'] = true;
43 }
44
45 $posts = get_posts( apply_filters( 'themify_event_post_widget_query_args', $query_args, $instance ) );
46 if ( ! empty( $posts ) ) {
47 // cache $post object
48 if ( is_object( $post ) )
49 $saved_post = clone $post;
50
51 echo $args['before_widget'];
52
53 $title = apply_filters( 'widget_title', $instance['title'], $instance, $widget->id_base );
54 if ( $title ) {
55 echo $args['before_title'] . $title . $args['after_title'];
56 }
57
58 ?>
59
60 <ul>
61 <?php foreach ( $posts as $post ) : setup_postdata( $post ); ?>
62 <li>
63 <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
64 </li>
65 <?php endforeach; ?>
66 </ul>
67
68 <?php
69 if ( isset( $saved_post ) && is_object( $saved_post ) ) {
70 $post = $saved_post;
71 setup_postdata( $saved_post );
72 }
73
74 echo $args['after_widget'];
75 }