fixed wp plugin
This commit is contained in:
@@ -0,0 +1,92 @@
|
||||
<?php
|
||||
/**
|
||||
* Asset loader class
|
||||
*/
|
||||
|
||||
// Exit if accessed directly
|
||||
if (!defined('ABSPATH')) {
|
||||
exit;
|
||||
}
|
||||
|
||||
class Palantics_Loader {
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
public function __construct() {
|
||||
// Enqueue frontend scripts
|
||||
add_action('wp_enqueue_scripts', array($this, 'enqueue_frontend_scripts'));
|
||||
|
||||
// Enqueue admin scripts
|
||||
add_action('admin_enqueue_scripts', array($this, 'enqueue_admin_scripts'));
|
||||
}
|
||||
|
||||
/**
|
||||
* Enqueue frontend scripts
|
||||
*/
|
||||
public function enqueue_frontend_scripts() {
|
||||
// Register main tracking script
|
||||
wp_register_script(
|
||||
'palantics-tracking-script',
|
||||
PALANTICS_PLUGIN_URL . 'assets/js/tracking-script.js',
|
||||
array(),
|
||||
PALANTICS_PLUGIN_VERSION,
|
||||
false
|
||||
);
|
||||
|
||||
// Register class tracking script
|
||||
wp_register_script(
|
||||
'palantics-class-tracking',
|
||||
PALANTICS_PLUGIN_URL . 'assets/js/class-tracking.js',
|
||||
array('palantics-tracking-script'),
|
||||
PALANTICS_PLUGIN_VERSION,
|
||||
true
|
||||
);
|
||||
|
||||
// Get tracking classes from options
|
||||
$track_classes = get_option('palantics_tracking_track_classes', '');
|
||||
$track_classes_array = array_filter(array_map('trim', explode(',', $track_classes)));
|
||||
|
||||
// Only enqueue class tracking if we have classes to track
|
||||
if (!empty($track_classes_array)) {
|
||||
// Add trackClasses as a JavaScript variable
|
||||
wp_localize_script(
|
||||
'palantics-class-tracking',
|
||||
'trackClasses',
|
||||
$track_classes_array
|
||||
);
|
||||
|
||||
// Enqueue the script
|
||||
wp_enqueue_script('palantics-class-tracking');
|
||||
}
|
||||
|
||||
// Always enqueue the main tracking script
|
||||
wp_enqueue_script('palantics-tracking-script');
|
||||
|
||||
// Add server URL to JavaScript
|
||||
$server_url = esc_url(get_option('palantics_tracking_server_url', 'tracking1.karlbreuer.com'));
|
||||
wp_add_inline_script(
|
||||
'palantics-tracking-script',
|
||||
"const server = 'https://" . $server_url . "';",
|
||||
'before'
|
||||
);
|
||||
}
|
||||
|
||||
/**
|
||||
* Enqueue admin scripts
|
||||
*/
|
||||
public function enqueue_admin_scripts($hook) {
|
||||
// Only load on our settings page
|
||||
if ($hook != 'settings_page_palantics-tracking-settings') {
|
||||
return;
|
||||
}
|
||||
|
||||
// Enqueue admin styles
|
||||
wp_enqueue_style(
|
||||
'palantics-admin-style',
|
||||
PALANTICS_PLUGIN_URL . 'assets/css/admin.css',
|
||||
array(),
|
||||
PALANTICS_PLUGIN_VERSION
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user