-
Notifications
You must be signed in to change notification settings - Fork 218
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement Data Collection for DJE Safe Mode Usage #7057
Comments
Scope a SolutionOutdated
~~Click to expand the code~~ 'delay_js_execution_safe_mode' => [
'type' => 'checkbox',
'label' => __( 'Delay JavaScript Execution safe mode', 'rocket' ),
'container_class' => [
'wpr-field--children',
'wpr-isParent',
],
'description' => $invalid_license ? __( 'Delay JavaScript Execution safe mode temporarily resolves issues with Delay JavaScript execution but may reduce your PageSpeed Scores and performance. Contact support for help excluding problematic scripts to use this feature fully.', 'rocket' ) : '',
'section' => 'js',
'parent' => 'delay_js',
'page' => 'file_optimization',
'default' => 0,
'sanitize_callback' => 'sanitize_checkbox',
'input_attr' => [
'disabled' => get_rocket_option( 'delay_js_execution_safe_mode' ) ? 1 : 0,
],
'helper' => '',
],
'delay_js_execution_safe_mode_method' => [
'type' => 'radio_buttons',
'label' => __( 'Delay JavaScript Execution safe mode', 'rocket' ),
'container_class' => [
'wpr-field--children',
'wpr-field--js-execution-safe-mode-delivery',
'wpr-field--optimize-css-delivery',
],
'buttons_container_class' => '',
'parent' => 'delay_js_execution_safe_mode',
'section' => 'js',
'page' => 'file_optimization',
'default' => 'dje_safe_mode',
'sanitize_callback' => 'sanitize_checkbox',
'options' => [
'dje_safe_mode' => [
'label' => __( 'Delay JavaScript Execution safe mode', 'rocket' ),
'disabled' => $invalid_license ? 'disabled' : false,
'description' => '',
// translators: %1$s = opening <a> tag, %2$s = closing </a> tag.
'warning' => $invalid_license ? [] : [
'title' => __( 'This will decrease the effect of Delay JavaScript Execution', 'rocket' ),
'description' => __( 'This mode temporarily resolves issues with Delay JavaScript execution but may reduce your PageSpeed Scores and performance. Contact support for help excluding problematic scripts to use this feature fully.', 'rocket' ),
'button_label' => __( 'Activate Safe Mode', 'rocket' ),
],
'sub_fields' => $invalid_license ? [] : [
'delay_js_exclusions' => [
'type' => 'textarea',
'label' => __( 'Excluded JavaScript Files', 'rocket' ),
'description' => __( 'Specify URLs or keywords that can identify inline or JavaScript files to be excluded from delaying execution (one per line).', 'rocket' ),
'parent' => '',
'section' => 'js',
'page' => 'file_optimization',
'default' => [],
'sanitize_callback' => 'sanitize_textarea',
'input_attr' => [
'disabled' => get_rocket_option( 'delay_js_execution_safe_mode' ) ? 0 : 1,
],
'helper' => DelayJSSettings::exclusion_list_has_default() ? $delay_js_found_list_helper : $delay_js_list_helper,
'placeholder' => '',
],
],
/***
* Track DJE Safe Mode Checkbox
***/
function trackDJESafeMode() {
var isChecked = $('#delay_js_execution_safe_mode').is(':checked');
if (isChecked) {
var exclusions = $('#delay_js_exclusions').val();
if (typeof mixpanel !== 'undefined') {
mixpanel.track('DJE Safe Mode Clicked', {
'exclusions': exclusions
});
}
}
}
$('#wpr-options-submit').on('click', function() {
trackDJESafeMode();
});
wp-rocket/inc/admin/ui/enqueue.php Line 70 in 612980f
mixpanel.track( 'DJE Safe Mode Clicked', localStorage.getItem('dje-safe-mode-clicked') ); |
Do you need additional code for mixpanel? All the options using checkboxes are tracked automatically already I believe (it's been a long time I checked that) |
We may be tracking all checkboxes already, @wp-media/product could you confirm ?, However, from the notion here we need to track the content of the textarea, and for this I guess we'll need to set it up. |
Yes. The feature state and its exclusions entries are sent to mixpanel. But each as a single entry which makes it hard to filter and analyze:
What is needed is tracking when the above exact consecutive lines are present to know the extent of usage and help decide the next step. The same should be done for previous iterations of the jquery exclusion pattern (first line). I believe it was changed 2 times or maybe more. |
Ummm, first of all, this grooming is to forget then, as I thought we didn't track everything already. Then, If I understand well @DahmaniAdame , You want to send something to mixpanel each time someone has
In their exclusions. If this is correct, then I don't really understand why would we track this as it won't stay in the As in the future, if these three lines are within the textarea while saving, it should turn on automatically the safe mode (that's something we discussed during the 3.18 presentation, not sure if that's still a plan). |
@DahmaniAdame Wouldn't it make sense to collect everything what's there? We might use this data in the future while looking for the opportunities for enhancements. |
Metrics Collection:
Implement Mixpanel tracking to collect data on the usage of the DJE safe mode checkbox.
The text was updated successfully, but these errors were encountered: