Beskrivning
Detta tillägg är inaktiverat sedan 11 oktober 2024 och är inte längre tillgängligt för nedladdning. Denna stängning är permanent. Orsak: På begäran från upphovsman.
Recensioner
2 juni 2018
Exactly what I was looking for. Was scared that it hasn’t been updated in a moment but works just fine
3 september 2016
1 svar
this plugin is great! i made small mod to show sale in percent:
<?php
if ( ! defined( 'ABSPATH' ) ) exit;
class WooCommerce_Smart_Sale_Badge {
private $dir;
private $file;
public function __construct( $file ) {
$this->dir = dirname( $file );
$this->file = $file;
// Handle localisation
$this->load_plugin_textdomain();
add_action( 'init', array( &$this, 'load_localisation' ), 0 );
add_filter( 'woocommerce_sale_flash', array( &$this, 'badge_sale_amount' ), 10, 3 );
}
public function badge_sale_amount( $message, $post, $product ) {
$saving_amount = 0;
if ( $product->has_child() ) {
// Loop through children if this is a variable product
foreach ( $product->get_children() as $child_id ) {
$regular_price = get_post_meta( $child_id, '_regular_price', true );
$sale_price = get_post_meta( $child_id, '_sale_price', true );
if( $regular_price != '' && $sale_price != '' && $regular_price > $sale_price ) {
$new_saving_amount = $regular_price – $sale_price;
// Only display the largest saving amount
if( $new_saving_amount > $saving_amount ) {
$saving_amount = $new_saving_amount;
}
}
}
$button_text = apply_filters("wc_smart_sale_badge_title", __( 'Do', 'wc_smart_sale_badge' ), $product->has_child(), $product);
} else {
// Fetch prices for simple products
$regular_price = get_post_meta( $post->ID, '_regular_price', true );
$sale_price = get_post_meta( $post->ID, '_sale_price', true );
if( $regular_price != '' && $sale_price != '' && $regular_price > $sale_price ) {
$saving_amount = $regular_price – $sale_price;
}
$button_text = apply_filters("wc_smart_sale_badge_title", __( '', 'wc_smart_sale_badge' ), $product->has_child(), $product);
}
// Only modify badge if saving amount is larger than 0
if( $saving_amount > 0 ) {
$saving_price = woocommerce_price( $saving_amount );
$percentage = round( ( ( $product->regular_price – $product->sale_price ) / $product->regular_price ) * 100 );
$saving_price_r = apply_filters("wc_smart_sale_badge_price", sprintf( __( ' %s!', 'wc_smart_sale_badge' ), $saving_price ), $saving_price, $product);
$message = '<span class="onsale">' . $button_text .'-'. $percentage .'%'. '</span>';
}
return $message;
}
public function load_localisation() {
load_plugin_textdomain( 'wc_smart_sale_badge' , false , dirname( plugin_basename( $this->file ) ) . '/lang/' );
}
public function load_plugin_textdomain() {
$domain = 'wc_smart_sale_badge';
$locale = apply_filters( 'plugin_locale' , get_locale() , $domain );
load_textdomain( $domain , WP_LANG_DIR . '/' . $domain . '/' . $domain . '-' . $locale . '.mo' );
load_plugin_textdomain( $domain , FALSE , dirname( plugin_basename( $this->file ) ) . '/lang/' );
}
}
Bidragsgivare och utvecklare
”WooCommerce Smart Sale Badge” är programvara med öppen källkod. Följande personer har bidragit till detta tillägg.
Bidragande personerÖversätt ”WooCommerce Smart Sale Badge” till ditt språk.
Intresserad av programutveckling?
Läs programkoden, kika på SVN-filförvaret eller prenumerera på utvecklarloggen via RSS.