PluginProbe
ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution with eCommerce Templates & Woo Widgets / 4.7.3
ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution with eCommerce Templates & Woo Widgets v4.7.3
4.9.5 4.9.4 4.9.3 4.9.2 4.9.1 4.9.0 2.0.0 2.1.0 2.2.0 2.2.1 2.2.2 2.3.0 2.4.0 2.5.0 2.5.1 3.0.0 3.1.0 3.1.1 4.0.0 4.0.1 4.1.0 4.1.1 4.2.0 4.2.1 4.3.0 All 85 releases
shopengine / trunk / base / widget.php

widget.php in ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution with eCommerce Templates & Woo Widgets 4.7.3, at trunk/base/widget.php

73 lines 1.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace ShopEngine\Base;
4
5 defined('ABSPATH') || exit;
6
7 use ShopEngine\Widgets\Products;
8
9 abstract class Widget extends \Elementor\Widget_Base {
10
11 abstract public function config();
12
13 abstract protected function screen();
14
15 public function get_help_url() {
16 return 'https://wpmet.com/knowledgebase/shopengine/?ref__widget=' . $this->config()->get_name();
17 }
18
19 public function show_in_panel() {
20
21 $territory = $this->config()->get_template_territory();
22
23 if(empty($territory)) {
24 return true;
25 }
26
27 // phpcs:ignore WordPress.Security.NonceVerification.Recommended -- It's a fronted user part, not possible to verify nonce here
28 $current_template_id = (int)((isset($_GET['action']) && sanitize_text_field(wp_unslash($_GET['action'])) == 'elementor' && !empty($_GET['post']) ) ? sanitize_text_field(wp_unslash($_GET['post'])) : get_the_ID());
29
30 $current_template = Products::instance()->get_template_type_by_id($current_template_id);
31
32 return in_array($current_template, $territory);
33 }
34
35 public function shopengine_widget_before_render() {
36 //todo - remove shopengine later
37
38 echo '<div class="shopengine shopengine-widget">';
39 }
40
41 public function shopengine_widget_after_render() {
42 echo '</div>';
43 }
44
45 public function render() {
46 $this->shopengine_widget_before_render();
47 if( !is_null(WC()->cart) ) {
48 $this->screen();
49 }
50 $this->shopengine_widget_after_render();
51 }
52
53 public function get_name() {
54 return 'shopengine-' . $this->config()->get_name();
55 }
56
57 public function get_title() {
58 return $this->config()->get_title();
59 }
60
61 public function get_icon() {
62 return $this->config()->get_icon();
63 }
64
65 public function get_categories() {
66 return $this->config()->get_categories();
67 }
68
69 public function get_keywords() {
70 return $this->config()->get_keywords();
71 }
72 }
73