PluginProbe ʕ •ᴥ•ʔ
The Post Grid – Shortcode, Gutenberg Blocks and Elementor Addon for Post Grid / 4.1.2
The Post Grid – Shortcode, Gutenberg Blocks and Elementor Addon for Post Grid v4.1.2
7.9.4 7.9.3 7.9.2 trunk 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.0.5 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.1.5 4.2.0 4.2.1 4.2.2 4.2.3 5.0.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 6.0.0 7.0.0 7.0.1 7.0.2 7.1.0 7.2.0 7.2.1 7.2.10 7.2.11 7.2.2 7.2.3 7.2.4 7.2.5 7.2.6 7.2.7 7.2.8 7.2.9 7.3.0 7.3.1 7.4.0 7.4.1 7.4.2 7.4.3 7.5.0 7.6.0 7.6.1 7.7.0 7.7.1 7.7.10 7.7.11 7.7.12 7.7.13 7.7.14 7.7.15 7.7.16 7.7.17 7.7.18 7.7.19 7.7.2 7.7.20 7.7.21 7.7.22 7.7.3 7.7.4 7.7.5 7.7.6 7.7.7 7.7.8 7.7.9 7.8.0 7.8.1 7.8.2 7.8.3 7.8.4 7.8.5 7.8.6 7.8.7 7.8.8 7.8.9 7.9.0 7.9.1
the-post-grid / app / Widgets / TPGWidget.php
the-post-grid / app / Widgets Last commit date
elementor 4 years ago ElementorWidget.php 4 years ago TPGWidget.php 4 years ago
TPGWidget.php
81 lines
1 <?php
2
3 namespace RT\ThePostGrid\Widgets;
4
5 use RT\ThePostGrid\Helpers\Fns;
6 use WP_Widget;
7
8 /**
9 *
10 */
11 class TPGWidget extends WP_Widget {
12
13 function __construct() {
14
15 $widget_ops = [
16 'classname' => 'widget_tpg_post_grid',
17 'description' => __( 'Display the post grid.', 'the-post-grid' )
18 ];
19 parent::__construct( 'widget_tpg_post_grid', __( 'The Post Grid', 'the-post-grid' ), $widget_ops );
20
21 }
22
23 /**
24 * display the widgets on the screen.
25 */
26 function widget( $args, $instance ) {
27 extract( $args );
28 $id = ( ! empty( $instance['id'] ) ? absint( $instance['id'] ) : null );
29
30 echo $before_widget;
31 if ( ! empty( $instance['title'] ) ) {
32 echo $args['before_title'] . apply_filters( 'widget_title',
33 ( isset( $instance['title'] ) ? $instance['title'] : "The Post Grid" ) ) . $args['after_title'];
34 }
35 if ( ! empty( $id ) ) {
36 echo do_shortcode( "[the-post-grid id='{$id}' ]" );
37 }
38 echo $after_widget;
39 }
40
41 function form( $instance ) {
42
43 $scList = Fns::getAllTPGShortCodeList();
44 $defaults = array(
45 'title' => "The Post Grid",
46 'id' => null
47 );
48 $instance = wp_parse_args( (array) $instance, $defaults ); ?>
49
50 <p><label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:',
51 'the-post-grid' ); ?></label>
52 <input type="text" id="<?php echo $this->get_field_id( 'title' ); ?>"
53 name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo $instance['title']; ?>"
54 style="width:100%;"/></p>
55
56 <p><label for="<?php echo $this->get_field_id( 'id' ); ?>"><?php _e( 'Select post grid',
57 'the-post-grid' ); ?></label>
58 <select id="<?php echo $this->get_field_id( 'id' ); ?>"
59 name="<?php echo $this->get_field_name( 'id' ); ?>">
60 <option value="">Select one</option>
61 <?php
62 if ( ! empty( $scList ) ) {
63 foreach ( $scList as $scId => $sc ) {
64 $selected = ( $scId == $instance['id'] ? "selected" : null );
65 echo "<option value='{$scId}' {$selected}>{$sc}</option>";
66 }
67 }
68 ?>
69 </select></p>
70 <?php
71 }
72
73 public function update( $new_instance, $old_instance ) {
74 $instance = array();
75 $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : '';
76 $instance['id'] = ( ! empty( $new_instance['id'] ) ) ? absint( $new_instance['id'] ) : '';
77
78 return $instance;
79 }
80
81 }