| Current File : //home/tekstore/new.tekstore.ng/wp-content/plugins/sw_wooswatches/sw-wooswatches.php |
<?php
/**
* Plugin Name: Sw Woocommerce Swatches
* Plugin URI: http://www.smartaddons.com/
* Description: A plugin help to display woocommerce beauty.
* Version: 1.1.7
* Author: SmartAddons
* Author URI: http://www.smartaddons.com/
* Requires at least: 4.1
* Tested up to: WorPress 6.4.x and WooCommerce 8.4.x
* WC tested up to: 8.4.0
* Text Domain: sw_wooswatches
* Domain Path: /languages/
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
// define plugin path
if ( ! defined( 'WSPATH' ) ) {
define( 'WSPATH', plugin_dir_path( __FILE__ ) );
}
// define plugin URL
if ( ! defined( 'WSURL' ) ) {
define( 'WSURL', plugins_url(). '/sw_wooswatches' );
}
// define plugin theme path
if ( ! defined( 'WSTHEME' ) ) {
define( 'WSTHEME', plugin_dir_path( __FILE__ ). 'includes/themes' );
}
function sw_wooswatches_construct(){
global $woocommerce;
if ( ! isset( $woocommerce ) || ! function_exists( 'WC' ) ) {
add_action( 'admin_notices', 'sw_wooswatches_admin_notice' );
return;
}
/* Enqueue Script */
add_action( 'wp_enqueue_scripts', 'sw_wooswatches_custom_script', 1001 );
add_action( 'before_woocommerce_init', 'sw_swatches_hpos_compatible_init' );
/* Load text domain */
load_plugin_textdomain( 'sw_wooswatches', false, dirname( plugin_basename( __FILE__ ) ) . '/languages' );
/* Include files */
require_once( WSPATH . '/admin/admin-settings.php' );
require_once( WSPATH . '/admin/admin-attribute-metabox.php' );
require_once( WSPATH . '/includes/product-variation.php' );
}
add_action( 'plugins_loaded', 'sw_wooswatches_construct', 40 );
function sw_swatches_hpos_compatible_init(){
if ( class_exists( \Automattic\WooCommerce\Utilities\FeaturesUtil::class ) ) {
\Automattic\WooCommerce\Utilities\FeaturesUtil::declare_compatibility( 'custom_order_tables', __FILE__, true );
}
}
/*
** Load admin notice when WooCommerce not active
*/
function sw_wooswatches_admin_notice(){
?>
<div class="error">
<p><?php _e( 'Sw WooSwatches is enabled but not effective. It requires WooCommerce in order to work.', 'sw_wooswatches' ); ?></p>
</div>
<?php
}
/*
** Load Custom variation script
*/
function sw_wooswatches_custom_script(){
if( current_theme_supports( 'sw_theme' ) || get_option( 'sw_wooswatches_enable' ) === 'yes' ) :
wp_dequeue_script('wc-add-to-cart-variation');
wp_deregister_script('wc-add-to-cart-variation');
$w_folder = ( ! current_theme_supports( 'sw_theme' ) ) ? 'woocommerce' : 'woocommerce/custom';
if( get_option( 'sw_wooswatches_enable' ) === 'no' ){
$w_folder = 'woocommerce-select';
}
if ( wp_script_is('slick_slider_js') ) {
wp_enqueue_style( 'sw-wooswatches', plugins_url( 'css/style.css', __FILE__ ), array(), null );
wp_enqueue_script( 'wc-add-to-cart-variation', WSURL . '/js/'. $w_folder .'/add-to-cart-variation.min.js', array( 'jquery', 'wp-util' ),null, true );
}
endif;
}