| @@ -1,26 +1,26 @@ | ||
| 1 | -<?php if (!defined('WPO_VERSION')) die('No direct access allowed'); ?> | |
| 2 | -<?php if ($does_server_handles_cache) : ?> | |
| 1 | +<?php if (!defined('ABSPATH')) die('No direct access allowed'); ?> | |
| 2 | +<?php if ($does_server_handle_cache) : ?> | |
| 3 | 3 | <div class="wpo-info highlight-dashicons"> |
| 4 | - <h3><?php _e('Your web hosting company/server handles: ', 'wp-optimize'); ?></h3> | |
| 5 | - <p><?php _e('Page caching', 'wp-optimize'); ?><span class="dashicons dashicons-saved"></span></p> | |
| 6 | - <p><?php _e('Gzip compression', 'wp-optimize'); ?><span class="dashicons dashicons-saved"></span></p> | |
| 7 | - <p><?php _e('Browser static file caching (via headers)', 'wp-optimize'); ?><span class="dashicons dashicons-saved"></span></p> | |
| 4 | + <h3><?php esc_html_e('Your web hosting company/server handles:', 'wp-optimize'); ?></h3> | |
| 5 | + <p><?php esc_html_e('Page caching', 'wp-optimize'); ?><span class="dashicons dashicons-saved"></span></p> | |
| 6 | + <p><?php esc_html_e('Gzip compression', 'wp-optimize'); ?><span class="dashicons dashicons-saved"></span></p> | |
| 7 | + <p><?php esc_html_e('Browser static file caching (via headers)', 'wp-optimize'); ?><span class="dashicons dashicons-saved"></span></p> | |
| 8 | 8 | </div> |
| 9 | 9 | <?php else : ?> |
| 10 | 10 | <div class="wpo-info"> |
| 11 | - <a class="wpo-info__trigger" href="#"><span class="dashicons dashicons-sos"></span> <?php _e('How to use the cache feature', 'wp-optimize'); ?> <span class="wpo-info__close"><?php _e('Close', 'wp-optimize'); ?></span></a> | |
| 11 | + <a class="wpo-info__trigger" href="#"><span class="dashicons dashicons-sos"></span> <?php esc_html_e('How to use the cache feature', 'wp-optimize'); ?> <span class="wpo-info__close"><?php esc_html_e('Close', 'wp-optimize'); ?></span></a> | |
| 12 | 12 | <div class="wpo-info__content"> |
| 13 | - <p><strong><?php _e('Not sure how to use the cache feature?', 'wp-optimize'); ?></strong> <br><?php _e('Watch our how-to video below.', 'wp-optimize'); ?></p> | |
| 13 | + <p><strong><?php esc_html_e('Not sure how to use the cache feature?', 'wp-optimize'); ?></strong> <br><?php esc_html_e('Watch our how to video below.', 'wp-optimize'); ?></p> | |
| 14 | 14 | <div class="wpo-video-preview"> |
| 15 | - <a href="https://vimeo.com/337247770" data-embed="https://player.vimeo.com/video/337247770?color=df6926&title=0&byline=0&portrait=0" target="_blank"><img src="<?php echo trailingslashit(WPO_PLUGIN_URL); ?>images/notices/cache-video-preview.png" alt="<?php _e('Cache video preview', 'wp-optimize');?>" /></a> | |
| 15 | + <a href="https://vimeo.com/1014288082" data-embed="https://player.vimeo.com/video/1014288082?color=df6926&title=0&byline=0&portrait=0" target="_blank"><img src="<?php echo esc_url(trailingslashit(WPO_PLUGIN_URL) . 'images/notices/video-thumb.jpg'); ?>" alt="<?php esc_attr_e('Cache video preview', 'wp-optimize');?>" /></a> | |
| 16 | 16 | </div> |
| 17 | - <small>(<?php _e('Loads a video hosted on vimeo.com', 'wp-optimize'); ?>) - <a href="https://vimeo.com/337247770" target="_blank"><?php _e('Open the video in a new window', 'wp-optimize'); ?></a></small> | |
| 17 | + <small>(<?php esc_html_e('Loads a video hosted on vimeo.com', 'wp-optimize'); ?>) - <?php $wp_optimize->wp_optimize_url('https://vimeo.com/1014288082', __('Open the video in a new window', 'wp-optimize')); ?></small> | |
| 18 | 18 | </div> |
| 19 | 19 | </div> |
| 20 | 20 | <div class="wpo-fieldgroup wpo-first-child cache-options"> |
| 21 | 21 | <div class="notice notice-warning below-h2 wpo-warnings__enabling-cache wpo_hidden"><p></p><ul></ul></div> |
| 22 | - <div class="notice error below-h2 wpo-error wpo-error__enabling-cache wpo_hidden"><p></p></div> | |
| 22 | + <div class="notice error below-h2 wpo-error wpo-error__enabling-cache <?php echo empty($error) ? 'wpo_hidden' : ''; ?>"><p><?php echo esc_html($error); ?></p></div> | |
| 23 | 23 | |
| 24 | 24 | <pre id="wpo_advanced_cache_output" style="display: none;"></pre> |
| 25 | 25 | |
| 26 | 26 | <div class="switch-container"> |
| @@ -28,19 +28,23 @@ | ||
| 28 | 28 | <input name="enable_page_caching" id="enable_page_caching" class="cache-settings" type="checkbox" value="true" <?php checked($wpo_cache_options['enable_page_caching'] || $wpo_cache->is_enabled()); ?>> |
| 29 | 29 | <span class="slider round"></span> |
| 30 | 30 | </label> |
| 31 | 31 | <label for="enable_page_caching"> |
| 32 | - <?php _e('Enable page caching', 'wp-optimize'); ?> | |
| 32 | + <?php esc_html_e('Enable page caching', 'wp-optimize'); ?> | |
| 33 | 33 | </label> |
| 34 | 34 | </div> |
| 35 | 35 | <p> |
| 36 | - <?php echo __("This is all that's needed for caching to work.", 'wp-optimize').' '.__('WP-Optimize will automatically detect and configure itself optimally for your site.', 'wp-optimize').' '.__('You can tweak the the settings below and in the advanced settings tab, if needed.', 'wp-optimize'); ?> | |
| 36 | + <?php echo esc_html__("This is all that's needed for caching to work.", 'wp-optimize').' '.esc_html__('WP-Optimize will automatically detect and configure itself optimally for your site.', 'wp-optimize').' '.esc_html__('You can tweak the settings below and in the advanced settings tab, if needed.', 'wp-optimize'); ?> | |
| 37 | 37 | </p> |
| 38 | 38 | |
| 39 | 39 | <?php if (!empty($active_cache_plugins)) { ?> |
| 40 | 40 | <p class="wpo-error"> |
| 41 | 41 | <?php |
| 42 | - printf(__('It looks like you already have an active caching plugin (%s) installed. Having more than one active page cache might cause unexpected results.', 'wp-optimize'), implode(', ', $active_cache_plugins)); | |
| 42 | + // translators: %s - list of active caching plugins | |
| 43 | + $message = sprintf(__('It looks like you already have an active caching plugin (%s) installed.', 'wp-optimize'), implode(', ', $active_cache_plugins)); | |
| 44 | + $message .= ' '; | |
| 45 | + $message .= __('Having more than one active page cache might cause unexpected results.', 'wp-optimize'); | |
| 46 | + echo esc_html($message); | |
| 43 | 47 | ?> |
| 44 | 48 | </p> |
| 45 | 49 | <?php } ?> |
| 46 | 50 | |
| @@ -45,25 +49,36 @@ | ||
| 45 | 49 | <?php } ?> |
| 46 | 50 | |
| 47 | 51 | </div> |
| 48 | 52 | |
| 49 | -<h3 class="purge-cache" <?php echo $display; ?>> <?php _e('Purge the cache', 'wp-optimize'); ?></h3> | |
| 50 | -<div class="wpo-fieldgroup cache-options purge-cache" <?php echo $display; ?> > | |
| 51 | - <p class="wpo-button-wrap"> | |
| 53 | +<h3 class="purge-cache" style="<?php echo esc_attr($display); ?>"> <?php esc_html_e('Purge the cache', 'wp-optimize'); ?></h3> | |
| 54 | +<div class="wpo-fieldgroup cache-options purge-cache" style="<?php echo esc_attr($display); ?>" > | |
| 55 | + <div class="wpo-save-btn-container wpo-button-wrap"> | |
| 52 | 56 | <input id="wp-optimize-purge-cache" class="button button-primary <?php echo $can_purge_the_cache ? '' : 'disabled'; ?>" type="submit" value="<?php esc_attr_e('Purge cache', 'wp-optimize'); ?>" <?php echo $can_purge_the_cache ? '' : 'disabled'; ?>> |
| 53 | - <img class="wpo_spinner" src="<?php echo esc_attr(admin_url('images/spinner-2x.gif')); ?>" alt="..."> | |
| 57 | + <img class="wpo_spinner" src="<?php echo esc_url(admin_url('images/spinner-2x.gif')); // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage -- N/A ?>" alt="..."> | |
| 54 | 58 | <span class="save-done dashicons dashicons-yes display-none"></span> |
| 55 | - </p> | |
| 59 | + </div> | |
| 56 | 60 | <p> |
| 57 | - <?php _e('Deletes the entire cache contents but keeps the page cache enabled.', 'wp-optimize'); ?> | |
| 61 | + <?php esc_html_e('Deletes the entire cache contents but keeps the page cache enabled.', 'wp-optimize'); ?> | |
| 58 | 62 | </p> |
| 59 | 63 | <p> |
| 60 | - <span id="wpo_current_cache_size_information"><?php _e('Current cache size:', 'wp-optimize'); ?> <?php echo WP_Optimize()->format_size($cache_size['size']); ?></span> | |
| 61 | - <br><span id="wpo_current_cache_file_count"><?php _e('Number of files:', 'wp-optimize'); ?> <?php echo $cache_size['file_count']; ?></span> | |
| 64 | + <span id="wpo_current_cache_size_information"><?php esc_html_e('Current cache size:', 'wp-optimize'); ?> <?php echo esc_html(WP_Optimize()->format_size($cache_size['size'])); ?></span> | |
| 65 | + <br><span id="wpo_current_cache_file_count"><?php esc_html_e('Number of files:', 'wp-optimize'); ?> <?php echo esc_html($cache_size['file_count']); ?></span> | |
| 62 | 66 | </p> |
| 67 | + <div class="wpo-fieldgroup__subgroup" style="display: flex;"> | |
| 68 | + <div class="wpo-fieldgroup__subgroup"> | |
| 69 | + <label for="wpo-auto-preload-after-purge"> | |
| 70 | + <input type="checkbox" id="wpo-auto-preload-after-purge" class="cache-settings" name="auto_preload_purged_contents" <?php checked($auto_preload_purged_contents); ?>> | |
| 71 | + <?php esc_html_e('Automatically preload content after it is purged', 'wp-optimize'); ?> | |
| 72 | + </label> | |
| 73 | + <span tabindex="0" class="wpo-tooltip" data-tooltip="<?php echo esc_attr__('Automatically preload pages when a post or page is purged or updated.', 'wp-optimize') . ' ' . esc_attr__('Note that enabling this feature may extend the time it takes to save a post due to background preloading.', 'wp-optimize');?>"><span class="dashicons dashicons-editor-help"></span> </span> | |
| 74 | + </div> | |
| 75 | + <span class="dashicons dashicons-yes display-none save-done" style="line-height: 20px;"></span> | |
| 76 | + </div> | |
| 77 | + | |
| 63 | 78 | </div> |
| 64 | 79 | |
| 65 | -<h3><?php _e('Cache settings', 'wp-optimize'); ?></h3> | |
| 80 | +<h3><?php esc_html_e('Cache settings', 'wp-optimize'); ?></h3> | |
| 66 | 81 | |
| 67 | 82 | <div class="wpo-fieldgroup cache-options"> |
| 68 | 83 | |
| 69 | 84 | <div class="wpo-fieldgroup__subgroup"> |
| @@ -68,35 +83,35 @@ | ||
| 68 | 83 | |
| 69 | 84 | <div class="wpo-fieldgroup__subgroup"> |
| 70 | 85 | <label for="enable_mobile_caching"> |
| 71 | 86 | <input name="enable_mobile_caching" id="enable_mobile_caching" class="cache-settings" type="checkbox" value="true" <?php checked($wpo_cache_options['enable_mobile_caching'], 1); ?>> |
| 72 | - <?php _e('Generate separate files for mobile devices', 'wp-optimize'); ?> | |
| 87 | + <?php esc_html_e('Generate separate files for mobile devices', 'wp-optimize'); ?> | |
| 73 | 88 | </label> |
| 74 | - <span tabindex="0" data-tooltip="<?php _e('Useful if your website has mobile-specific content.', 'wp-optimize');?>"><span class="dashicons dashicons-editor-help"></span> </span> | |
| 89 | + <span tabindex="0" class="wpo-tooltip" data-tooltip="<?php esc_attr_e('Useful if your website has mobile-specific content.', 'wp-optimize');?>"><span class="dashicons dashicons-editor-help"></span> </span> | |
| 75 | 90 | </div> |
| 76 | 91 | |
| 77 | 92 | <div class="wpo-fieldgroup__subgroup"> |
| 78 | 93 | <label for="enable_user_caching"> |
| 79 | 94 | <input name="enable_user_caching" id="enable_user_caching" class="cache-settings wpo-select-group" type="checkbox" value="true" <?php checked($wpo_cache_options['enable_user_caching']); ?>> |
| 80 | - <?php _e('Serve cached pages to logged in users', 'wp-optimize'); ?> | |
| 95 | + <?php esc_html_e('Serve cached pages to logged in users', 'wp-optimize'); ?> | |
| 81 | 96 | </label> |
| 82 | - <span tabindex="0" data-tooltip="<?php _e('Enable this option if you do not have user-specific or restricted content on your website.', 'wp-optimize');?>"><span class="dashicons dashicons-editor-help"></span> </span> | |
| 97 | + <span tabindex="0" class="wpo-tooltip" data-tooltip="<?php esc_attr_e('Enable this option if you do not have user-specific or restricted content on your website (this works only when the cache is preloaded).', 'wp-optimize');?>"><span class="dashicons dashicons-editor-help"></span> </span> | |
| 83 | 98 | </div> |
| 84 | 99 | |
| 85 | 100 | <?php do_action('wpo_after_cache_settings'); ?> |
| 86 | 101 | |
| 87 | 102 | <div class="wpo-fieldgroup__subgroup"> |
| 88 | - <label for="page_cache_length_value"><?php _e('Cache lifespan', 'wp-optimize'); ?></label> | |
| 103 | + <label for="page_cache_length_value"><?php esc_html_e('Cache lifespan', 'wp-optimize'); ?></label> | |
| 89 | 104 | <p> |
| 90 | 105 | <input name="page_cache_length_value" id="page_cache_length_value" class="cache-settings" type="number" value="<?php echo esc_attr($wpo_cache_options['page_cache_length_value']); ?>"> |
| 91 | - <select name="page_cache_length_unit" id="page_cache_length_unit" class="cache-settings"> | |
| 92 | - <option value="hours" <?php selected('hours', $wpo_cache_options['page_cache_length_unit']); ?>><?php _e('Hours', 'wp-optimize'); ?></option> | |
| 93 | - <option value="days" <?php selected('days', $wpo_cache_options['page_cache_length_unit']); ?>><?php _e('Days', 'wp-optimize'); ?></option> | |
| 94 | - <option value="months" <?php selected('months', $wpo_cache_options['page_cache_length_unit']); ?>><?php _e('Months', 'wp-optimize'); ?></option> | |
| 106 | + <select name="page_cache_length_unit" id="page_cache_length_unit" class="cache-settings wpo-select2"> | |
| 107 | + <option value="hours" <?php selected('hours', $wpo_cache_options['page_cache_length_unit']); ?>><?php esc_html_e('Hours', 'wp-optimize'); ?></option> | |
| 108 | + <option value="days" <?php selected('days', $wpo_cache_options['page_cache_length_unit']); ?>><?php esc_html_e('Days', 'wp-optimize'); ?></option> | |
| 109 | + <option value="months" <?php selected('months', $wpo_cache_options['page_cache_length_unit']); ?>><?php esc_html_e('Months', 'wp-optimize'); ?></option> | |
| 95 | 110 | </select> |
| 96 | 111 | </p> |
| 97 | 112 | <span> |
| 98 | - <?php _e('Time after which a new cached version will be generated (0 = only when the cache is emptied)', 'wp-optimize'); ?> | |
| 113 | + <?php esc_html_e('Time after which a new cached version will be generated (0 = only when the cache is emptied)', 'wp-optimize'); ?> | |
| 99 | 114 | </span> |
| 100 | 115 | </div> |
| 101 | 116 | |
| 102 | 117 | <?php do_action('wpo_page_cache_settings_after', $wpo_cache_options); ?> |
| @@ -102,10 +117,12 @@ | ||
| 102 | 117 | <?php do_action('wpo_page_cache_settings_after', $wpo_cache_options); ?> |
| 103 | 118 | |
| 104 | 119 | </div> |
| 105 | 120 | |
| 106 | -<input id="wp-optimize-save-cache-settings" class="button button-primary" type="submit" name="wp-optimize-save-cache-settings" value="<?php esc_attr_e('Save changes', 'wp-optimize'); ?>"> | |
| 121 | +<div class="wpo-save-btn-container"> | |
| 122 | + <input id="wp-optimize-save-cache-settings" class="button button-primary" type="submit" name="wp-optimize-save-cache-settings" value="<?php esc_attr_e('Save changes', 'wp-optimize'); ?>"> | |
| 107 | 123 | |
| 108 | -<img class="wpo_spinner" src="<?php echo esc_attr(admin_url('images/spinner-2x.gif')); ?>" alt="...."> | |
| 124 | + <img class="wpo_spinner" src="<?php echo esc_url(admin_url('images/spinner-2x.gif')); // phpcs:ignore PluginCheck.CodeAnalysis.ImageFunctions.NonEnqueuedImage -- N/A ?>" alt="...."> | |
| 109 | 125 | |
| 110 | -<span class="save-done dashicons dashicons-yes display-none"></span> | |
| 126 | + <span class="save-done dashicons dashicons-yes display-none"></span> | |
| 127 | +</div> | |
| 111 | 128 | <?php endif; |