PageRenderTime 28ms CodeModel.GetById 8ms RepoModel.GetById 0ms app.codeStats 0ms

/wp-content/plugins/taqyeem/taqyeem-widgets.php

https://gitlab.com/eita/agencia-consumo-responsavel
PHP | 250 lines | 214 code | 33 blank | 3 comment | 34 complexity | 742dcc6a2b5c0f217d0fddbbcb9be85d MD5 | raw file
  1. <?php
  2. ## Reviews Widget
  3. add_action( 'widgets_init', 'taqyeem_review_widget_box' );
  4. function taqyeem_review_widget_box() {
  5. register_widget( 'taqyeem_review_widget' );
  6. }
  7. class taqyeem_review_widget extends WP_Widget {
  8. function taqyeem_review_widget() {
  9. $widget_ops = array( 'classname' => 'taqyeem-review-widget' );
  10. $control_ops = array( 'width' => 250, 'height' => 350, 'id_base' => 'taqyeem-review-widget' );
  11. $this->WP_Widget( 'taqyeem-review-widget',TIE_Plugin .' - Review Box', $widget_ops, $control_ops );
  12. }
  13. function widget( $args, $instance ) {
  14. extract( $args );
  15. global $post ;
  16. $get_meta = get_post_custom($post->ID);
  17. if ( is_singular() && !empty( $get_meta['taq_review_position'][0] )) :
  18. $title = apply_filters('widget_title', $instance['title'] );
  19. $page_url = $instance['page_url'];
  20. echo $before_widget;
  21. if ( $title )
  22. echo $before_title;
  23. echo $title ;
  24. echo $after_title;
  25. echo taqyeem_get_review( 'review-bottom' );
  26. echo $after_widget;
  27. endif;
  28. }
  29. function update( $new_instance, $old_instance ) {
  30. $instance = $old_instance;
  31. $instance['title'] = strip_tags( $new_instance['title'] );
  32. $instance['page_url'] = strip_tags( $new_instance['page_url'] );
  33. return $instance;
  34. }
  35. function form( $instance ) {
  36. $defaults = array( 'title' =>__( 'Review Overview' , 'taq') );
  37. $instance = wp_parse_args( (array) $instance, $defaults ); ?>
  38. <p><em style="color:red;"><?php _e( 'This Widget appears in single post only .' , 'taq') ?></em></p>
  39. <p>
  40. <label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title : ' , 'taq') ?></label>
  41. <input id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" value="<?php echo $instance['title']; ?>" class="widefat" type="text" />
  42. </p>
  43. <?php
  44. }
  45. }
  46. /** Best, latest & random Review Widget **/
  47. add_action( 'widgets_init', 'taqyeem_reviews_widget' );
  48. function taqyeem_reviews_widget() {
  49. register_widget( 'taqyeem_get_reviews' );
  50. }
  51. class taqyeem_get_reviews extends WP_Widget {
  52. function taqyeem_get_reviews() {
  53. $widget_ops = array( 'classname' => 'reviews-posts-widget' );
  54. $control_ops = array( 'width' => 250, 'height' => 350, 'id_base' => 'reviews-posts-widget' );
  55. $this->WP_Widget( 'reviews-posts-widget',TIE_Plugin .' - Reviews Posts', $widget_ops, $control_ops );
  56. }
  57. function widget( $args, $instance ) {
  58. extract( $args );
  59. $title = apply_filters('widget_title', $instance['cat_posts_title'] );
  60. $num_posts = $instance['num_posts'];
  61. $cats_id = $instance['cats_id'];
  62. $thumb = $instance['thumb'];
  63. $thumb_size = $instance['thumb_size'];
  64. $reviews_order = $instance['reviews_order'];
  65. if( empty($thumb) ){ $thumb_size = false; }
  66. else{
  67. if(empty($thumb_size) || !is_numeric($thumb_size)) $thumb_size = array(50,50);
  68. else $thumb_size = array($thumb_size,$thumb_size);
  69. }
  70. echo $before_widget;
  71. echo $before_title;
  72. echo $title ;
  73. echo $after_title;
  74. taqyeem_get_reviews($num_posts , $reviews_order , $thumb_size , $cats_id);
  75. echo $after_widget;
  76. }
  77. function update( $new_instance, $old_instance ) {
  78. $instance = $old_instance;
  79. $instance['cat_posts_title'] = strip_tags( $new_instance['cat_posts_title'] );
  80. $instance['num_posts'] = strip_tags( $new_instance['num_posts'] );
  81. $instance['cats_id'] = implode(',' , $new_instance['cats_id'] );
  82. $instance['thumb'] = strip_tags( $new_instance['thumb'] );
  83. $instance['thumb_size'] = strip_tags( $new_instance['thumb_size'] );
  84. $instance['reviews_order'] = strip_tags( $new_instance['reviews_order'] );
  85. return $instance;
  86. }
  87. function form( $instance ) {
  88. $defaults = array( 'cat_posts_title' =>__( 'Best Reviews' , 'taq'), 'num_posts' => '5' , 'reviews_order' => 'best' , 'cats_id' => '1' , 'thumb' => 'true', 'thumb_size' => 50 );
  89. $instance = wp_parse_args( (array) $instance, $defaults );
  90. $categories_obj = get_categories();
  91. $categories = array();
  92. foreach ($categories_obj as $pn_cat) {
  93. $categories[$pn_cat->cat_ID] = $pn_cat->cat_name;
  94. }
  95. ?>
  96. <p>
  97. <label for="<?php echo $this->get_field_id( 'cat_posts_title' ); ?>"><?php _e( 'Title : ' , 'taq') ?></label>
  98. <input id="<?php echo $this->get_field_id( 'cat_posts_title' ); ?>" name="<?php echo $this->get_field_name( 'cat_posts_title' ); ?>" value="<?php echo $instance['cat_posts_title']; ?>" class="widefat" type="text" />
  99. </p>
  100. <p>
  101. <label for="<?php echo $this->get_field_id( 'num_posts' ); ?>"><?php _e( 'Number of posts to show :' , 'taq') ?></label>
  102. <input id="<?php echo $this->get_field_id( 'num_posts' ); ?>" name="<?php echo $this->get_field_name( 'num_posts' ); ?>" value="<?php echo $instance['num_posts']; ?>" type="text" size="3" />
  103. </p>
  104. <p>
  105. <?php $cats_id = explode ( ',' , $instance['cats_id'] ) ; ?>
  106. <label for="<?php echo $this->get_field_id( 'cats_id' ); ?>"><?php _e( 'Categories :' , 'taq') ?></label>
  107. <select multiple="multiple" id="<?php echo $this->get_field_id( 'cats_id' ); ?>[]" name="<?php echo $this->get_field_name( 'cats_id' ); ?>[]">
  108. <?php foreach ($categories as $key => $option) { ?>
  109. <option value="<?php echo $key ?>" <?php if ( in_array( $key , $cats_id ) ) { echo ' selected="selected"' ; } ?>><?php echo $option; ?></option>
  110. <?php } ?>
  111. </select>
  112. </p>
  113. <p>
  114. <label for="<?php echo $this->get_field_id( 'reviews_order' ); ?>"><?php _e( 'Posts Order :' , 'taq') ?></label>
  115. <select id="<?php echo $this->get_field_id( 'reviews_order' ); ?>" name="<?php echo $this->get_field_name( 'reviews_order' ); ?>" >
  116. <option value="latest" <?php if( $instance['reviews_order'] == 'latest' ) echo "selected=\"selected\""; else echo ""; ?>><?php _e( 'Recent Reviews' , 'taq') ?></option>
  117. <option value="random" <?php if( $instance['reviews_order'] == 'random' ) echo "selected=\"selected\""; else echo ""; ?>><?php _e( 'Random Reviews' , 'taq') ?></option>
  118. <option value="best" <?php if( $instance['reviews_order'] == 'best' ) echo "selected=\"selected\""; else echo ""; ?>><?php _e( 'Best Reviews' , 'taq') ?></option>
  119. </select>
  120. </p>
  121. <p>
  122. <input id="<?php echo $this->get_field_id( 'thumb' ); ?>" name="<?php echo $this->get_field_name( 'thumb' ); ?>" value="true" <?php if( $instance['thumb'] ) echo 'checked="checked"'; ?> type="checkbox" />
  123. <label for="<?php echo $this->get_field_id( 'thumb' ); ?>"> <?php _e( 'Display Thumbinals' , 'taq') ?></label>
  124. </p>
  125. <p>
  126. <label for="<?php echo $this->get_field_id( 'thumb_size' ); ?>"><?php _e( 'Thumbinals Size :' , 'taq') ?></label>
  127. <input id="<?php echo $this->get_field_id( 'thumb_size' ); ?>" name="<?php echo $this->get_field_name( 'thumb_size' ); ?>" value="<?php echo $instance['thumb_size']; ?>" type="text" size="3" />
  128. </p>
  129. <?php
  130. }
  131. }
  132. /** Post Types Review Widget **/
  133. add_action( 'widgets_init', 'taqyeem_types_reviews_widget' );
  134. function taqyeem_types_reviews_widget() {
  135. register_widget( 'taqyeem_types_get_reviews' );
  136. }
  137. class taqyeem_types_get_reviews extends WP_Widget {
  138. function taqyeem_types_get_reviews() {
  139. $widget_ops = array( 'classname' => 'reviews-posts-widget' );
  140. $control_ops = array( 'width' => 250, 'height' => 350, 'id_base' => 'reviews-types-widget' );
  141. $this->WP_Widget( 'reviews-types-widget',TIE_Plugin .' - Reviews Post Types', $widget_ops, $control_ops );
  142. }
  143. function widget( $args, $instance ) {
  144. extract( $args );
  145. $title = apply_filters('widget_title', $instance['cat_posts_title'] );
  146. $num_posts = $instance['num_posts'];
  147. $types = $instance['types'];
  148. $thumb = $instance['thumb'];
  149. $thumb_size = $instance['thumb_size'];
  150. $reviews_order = $instance['reviews_order'];
  151. if( empty($thumb) ){ $thumb_size = false; }
  152. else{
  153. if(empty($thumb_size) || !is_numeric($thumb_size)) $thumb_size = array(50,50);
  154. else $thumb_size = array($thumb_size,$thumb_size);
  155. }
  156. echo $before_widget;
  157. echo $before_title;
  158. echo $title ;
  159. echo $after_title;
  160. taqyeem_get_types_reviews($num_posts , $reviews_order , $thumb_size , $types);
  161. echo $after_widget;
  162. }
  163. function update( $new_instance, $old_instance ) {
  164. $instance = $old_instance;
  165. $instance['cat_posts_title'] = strip_tags( $new_instance['cat_posts_title'] );
  166. $instance['num_posts'] = strip_tags( $new_instance['num_posts'] );
  167. $instance['types'] = $new_instance['types'] ;
  168. $instance['thumb'] = strip_tags( $new_instance['thumb'] );
  169. $instance['thumb_size'] = strip_tags( $new_instance['thumb_size'] );
  170. $instance['reviews_order'] = strip_tags( $new_instance['reviews_order'] );
  171. return $instance;
  172. }
  173. function form( $instance ) {
  174. $defaults = array( 'cat_posts_title' =>__( 'Best Reviews' , 'taq'), 'num_posts' => '5' , 'reviews_order' => 'best' , 'thumb' => 'true', 'thumb_size' => 50 );
  175. $instance = wp_parse_args( (array) $instance, $defaults );
  176. $post_types = array();
  177. $post_types = get_post_types( array('_builtin' => false ) ,'names');
  178. $post_types['post'] = 'post';
  179. $post_types['page'] = 'page';
  180. ?>
  181. <p>
  182. <label for="<?php echo $this->get_field_id( 'cat_posts_title' ); ?>"><?php _e( 'Title : ' , 'taq') ?></label>
  183. <input id="<?php echo $this->get_field_id( 'cat_posts_title' ); ?>" name="<?php echo $this->get_field_name( 'cat_posts_title' ); ?>" value="<?php echo $instance['cat_posts_title']; ?>" class="widefat" type="text" />
  184. </p>
  185. <p>
  186. <label for="<?php echo $this->get_field_id( 'num_posts' ); ?>"><?php _e( 'Number of posts to show :' , 'taq') ?></label>
  187. <input id="<?php echo $this->get_field_id( 'num_posts' ); ?>" name="<?php echo $this->get_field_name( 'num_posts' ); ?>" value="<?php echo $instance['num_posts']; ?>" type="text" size="3" />
  188. </p>
  189. <p>
  190. <?php $types = $instance['types'] ; ?>
  191. <label for="<?php echo $this->get_field_id( 'types' ); ?>"><?php _e( 'Post Types :' , 'taq') ?></label>
  192. <select multiple="multiple" id="<?php echo $this->get_field_id( 'types' ); ?>[]" name="<?php echo $this->get_field_name( 'types' ); ?>[]">
  193. <?php foreach ($post_types as $key => $option) { ?>
  194. <option value="<?php echo $key ?>" <?php if ( !empty($types) && in_array( $key , $types ) ) { echo ' selected="selected"' ; } ?>><?php echo $option; ?></option>
  195. <?php } ?>
  196. </select>
  197. </p>
  198. <p>
  199. <label for="<?php echo $this->get_field_id( 'reviews_order' ); ?>"><?php _e( 'Posts Order :' , 'taq') ?></label>
  200. <select id="<?php echo $this->get_field_id( 'reviews_order' ); ?>" name="<?php echo $this->get_field_name( 'reviews_order' ); ?>" >
  201. <option value="latest" <?php if( $instance['reviews_order'] == 'latest' ) echo "selected=\"selected\""; else echo ""; ?>><?php _e( 'Recent Reviews' , 'taq') ?></option>
  202. <option value="random" <?php if( $instance['reviews_order'] == 'random' ) echo "selected=\"selected\""; else echo ""; ?>><?php _e( 'Random Reviews' , 'taq') ?></option>
  203. <option value="best" <?php if( $instance['reviews_order'] == 'best' ) echo "selected=\"selected\""; else echo ""; ?>><?php _e( 'Best Reviews' , 'taq') ?></option>
  204. </select>
  205. </p>
  206. <p>
  207. <input id="<?php echo $this->get_field_id( 'thumb' ); ?>" name="<?php echo $this->get_field_name( 'thumb' ); ?>" value="true" <?php if( $instance['thumb'] ) echo 'checked="checked"'; ?> type="checkbox" />
  208. <label for="<?php echo $this->get_field_id( 'thumb' ); ?>"> <?php _e( 'Display Thumbinals' , 'taq') ?></label>
  209. </p>
  210. <p>
  211. <label for="<?php echo $this->get_field_id( 'thumb_size' ); ?>"><?php _e( 'Thumbinals Size :' , 'taq') ?></label>
  212. <input id="<?php echo $this->get_field_id( 'thumb_size' ); ?>" name="<?php echo $this->get_field_name( 'thumb_size' ); ?>" value="<?php echo $instance['thumb_size']; ?>" type="text" size="3" />
  213. </p>
  214. <?php
  215. }
  216. }
  217. ?>