Enhanced E-commerce Tracking Scripts in your woocommerce store. * Version: 1.0.1 * Author: MakeWebBetter * Author URI: https://makewebbetter.com/ * License: GPL-3.0+ * License URI: http://www.gnu.org/licenses/gpl-3.0.txt * Text Domain: anawoo * Domain Path: /languages */ // If this file is called directly, abort. if ( ! defined( 'WPINC' ) ) { die; } $mwb_anawoo_activated = true; $mwb_anawoo_org_flag = 1; /** * Checking if WooCommerce is active **/ if ( !in_array( 'woocommerce/woocommerce.php', apply_filters( 'active_plugins', get_option( 'active_plugins' ) ) ) ) { $mwb_anawoo_activated = false; $mwb_anawoo_org_flag = 0; } if( $mwb_anawoo_activated && $mwb_anawoo_org_flag){ /** * The code that runs during plugin activation. * This action is documented in includes/class-mwb-enhanced-ecommerce-activator.php */ function activate_analytics_for_woocommerce() { require_once plugin_dir_path( __FILE__ ) . 'includes/class-analytics-for-woocommerce-activator.php'; Analytics_For_Woocommerce_Activator::activate(); } /** * The code that runs during plugin deactivation. * This action is documented in includes/class-mwb-enhanced-ecommerce-deactivator.php */ function deactivate_analytics_for_woocommerce() { require_once plugin_dir_path( __FILE__ ) . 'includes/class-analytics-for-woocommerce-deactivator.php'; Analytics_For_Woocommerce_Deactivator::deactivate(); } register_activation_hook( __FILE__, 'activate_analytics_for_woocommerce' ); register_deactivation_hook( __FILE__, 'deactivate_analytics_for_woocommerce' ); /** * The core plugin class that is used to define internationalization, * admin-specific hooks, and public-facing site hooks. */ require plugin_dir_path( __FILE__ ) . 'includes/class-analytics-for-woocommerce.php'; /** * define constants. * * @since 1.0.0 */ function mwb_anawoo_define_constants(){ mwb_anawoo_define( 'MWB_ANAWOO_ABSPATH',dirname( __FILE__ )."/" ); mwb_anawoo_define( 'MWB_ANAWOO_URL',plugin_dir_url( __FILE__)); $report_link = 'https://datastudio.google.com/u/0/reporting/1bmmhcWmw5vOqeqhybX8fnReLyCWcwct5/page/P5Fh' ; mwb_anawoo_define('MWB_ANAWOO_DEMO_REPORT' , $report_link) ; mwb_anawoo_define('MWB_SUPPORT_EMAIL' , 'support@makewebbetter.com') ; } /** * Define constant if not already set. * * @param string $name * @param string|bool $value * @since 1.0.0 */ function mwb_anawoo_define($name,$value){ if(!defined($name)){ define($name,$value); } } /** * Setting Page Link * @since 1.0.0 * @author MakeWebBetter * @link http://makewebbetter.com/ */ function mwb_anawoo_admin_settings( $actions, $plugin_file ) { static $plugin; if ( !isset( $plugin ) ) { $plugin = plugin_basename ( __FILE__ ); } if ( $plugin == $plugin_file ) { $settings = array ( 'settings' => '' . __ ( 'Settings', 'mwb-anawoo' ) . '', ); $actions = array_merge ( $settings, $actions ); } return $actions; } //add link for settings add_filter ( 'plugin_action_links','mwb_anawoo_admin_settings', 10, 5 ); /** * Add plugin row meta * @since 1.0.0 */ function mwb_anawoo_plugin_row_meta( $links, $file ) { if ( strpos( $file, 'analytics-for-woocommerce' ) !== false ) { $row_meta = array( 'docs' => ''.esc_html__("Documentation","mwb-ecc").'', ); return array_merge( $links, $row_meta ); } return (array) $links; } add_filter( 'plugin_row_meta', 'mwb_anawoo_plugin_row_meta', 10, 2 ); /** * Auto Redirection to settings page after plugin activation * @since 1.0.0 * @author MakeWebBetter * @link https://makewebbetter.com/ */ function mwb_anawoo_activation_redirect( $plugin ) { if( $plugin == plugin_basename( __FILE__ ) ) { exit( wp_redirect( admin_url( 'admin.php?page=mwb_anawoo' ) ) ); } } //redirect to settings page as soon as plugin is activated add_action( 'activated_plugin', 'mwb_anawoo_activation_redirect' ); /** * Begins execution of the plugin. * * Since everything within the plugin is registered via hooks, * then kicking off the plugin from this point in the file does * not affect the page life cycle. * * @since 1.0.0 */ function run_analytics_for_woocommerce() { mwb_anawoo_define_constants(); $plugin = new Analytics_For_Woocommerce(); $plugin->run(); } run_analytics_for_woocommerce(); } if( !$mwb_anawoo_activated && $mwb_anawoo_org_flag === 0){ add_action( 'admin_init', 'mwb_anawoo_plugin_deactivate' ); /** * Call Admin notices * * @name mwb_anawoo_plugin_deactivate() * @author MakeWebBetter * @link https://www.makewebbetter.com/ */ function mwb_anawoo_plugin_deactivate() { deactivate_plugins( plugin_basename( __FILE__ ) ); add_action( 'admin_notices', 'mwb_anawoo_plugin_error_notice' ); } /** * Show warning message if woocommerce is not install * @since 1.0.0 * @author MakeWebBetter * @link https://www.makewebbetter.com/ */ function mwb_anawoo_plugin_error_notice() { ?>