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() {
?>