*/ class Aftersalesprogr { /** * Define the core functionality of the plugin. * * @since 1.0.0 */ public function __invoke() { /* * Load dependencies */ require_once plugin_dir_path( dirname( __FILE__ ) ) . 'includes/class-aftersalesprogr-ordermapper.php'; require_once plugin_dir_path( dirname( __FILE__ ) ) . 'includes/class-aftersalesprogr-woocommerce.php'; /* * Admin Hooks */ require_once plugin_dir_path( dirname( __FILE__ ) ) . 'admin/class-aftersalesprogr-admin-navigation.php'; $plugin_admin_nav = new Aftersalesprogr_Admin_Navigation(); add_action( 'admin_menu',[ $plugin_admin_nav,'admin_navigation_options'],10,1); /* * Public hooks */ add_shortcode( 'aftersalesprogr_tracking_widget', function () { if ( get_option( 'aftersalesprogr_trackingwidget_status', '0' ) == '0' ) { return 'Please enable tracking widget.'; } $html = ''; return $html; } ); /* * Admin Scripts/styles */ add_action( 'admin_enqueue_scripts', function () { wp_enqueue_style( AFTERSALESPROGR_SLUG_F, plugin_dir_url( __FILE__ ) . '../admin/css/aftersalesprogr-admin.css', [], AFTERSALESPROGR_VERSION ); }, 0); /* * Custom api page */ add_action( 'parse_request', function ( $wp ) { // Check if the request is /apple-app-site-association if ( 'asp-api' !== $wp->request ) { return; } require_once plugin_dir_path( __FILE__ ) . 'class-aftersalesprogr-endpoints.php'; exit; }, 0 ); } }