PluginProbe ʕ •ᴥ•ʔ
ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution / 1.0.0
ShopEngine Elementor WooCommerce Builder Addon – All in One WooCommerce Solution v1.0.0
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 4.3.1 4.4.0 4.5.0 4.5.1 4.6.0 4.6.1 4.6.2 4.6.3 4.6.4 4.6.5 4.6.6 4.6.7 4.6.8 4.6.9 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.7.8 4.7.9 4.8.0 4.8.1 4.8.2 4.8.3 4.8.4 4.8.5 4.8.6 4.8.7 4.8.8 4.8.9 trunk 0.1.2-beta 0.1.3-beta 0.1.4-beta 1.0.0 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.2.1 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.4.0 1.4.1 1.5.0 1.5.1 1.6.0 1.6.1 1.7.0 1.8.0 1.8.1 1.9.0
shopengine / modules / badge / badge.php
shopengine / modules / badge Last commit date
assets 5 years ago badge.php 5 years ago
badge.php
35 lines
1 <?php
2
3 namespace ShopEngine\Modules\Badge;
4
5 use ShopEngine\Traits\Singleton;
6
7 class Badge
8 {
9 use Singleton;
10
11 public function init() {
12
13 add_filter('woocommerce_format_sale_price', [$this, 'format_price_badge'], 9999, 3);
14
15 add_action('wp_enqueue_scripts', [$this, 'enqueue']);
16 }
17
18 public function enqueue() {
19
20 wp_enqueue_style('lib-badge', plugin_dir_url(__FILE__) . '/assets/css/badge.css');
21 }
22
23 public function format_price_badge($price, $regular_price, $sale_price) {
24
25 $pct = ($regular_price - $sale_price) * 100 / $regular_price;
26 $pct = ceil($pct);
27
28 $price = '<del>' . ( is_numeric( $regular_price ) ? wc_price( $regular_price ) : $regular_price ) . '</del> '.
29 '<ins>' . ( is_numeric( $sale_price ) ? wc_price( $sale_price ) : $sale_price ) . '</ins>'.
30 '<span class="shopengine-badge shopengine-discount-badge">' . $pct . '% '.__('OFF', 'shopengine').'</span>';
31
32 return $price;
33 }
34 }
35