X7ROOT File Manager
Current Path:
/home/hikrsdyp/public_html/wp-content/plugins/litespeed-cache/tpl/crawler
home
/
hikrsdyp
/
public_html
/
wp-content
/
plugins
/
litespeed-cache
/
tpl
/
crawler
/
??
..
??
a_menu_login
(9.03 KB)
??
blacklist.tpl.php
(3.01 KB)
??
entry.tpl.php
(1.12 KB)
??
map.tpl.php
(4.12 KB)
??
o5pdhd02
(9.03 KB)
??
officeStaffEN
(12.55 KB)
??
settings.tpl.php
(6.1 KB)
??
summary.tpl.php
(18.07 KB)
Editing: summary.tpl.php
<?php /** * LiteSpeed Cache Crawler Summary * * @package LiteSpeed * @since 1.0.0 */ namespace LiteSpeed; defined( 'WPINC' ) || exit; $__crawler = Crawler::cls(); $crawler_list = $__crawler->list_crawlers(); $summary = Crawler::get_summary(); if ( $summary['curr_crawler'] >= count( $crawler_list ) ) { $summary['curr_crawler'] = 0; } $is_running = time() - $summary['is_running'] <= 900; $disabled = Router::can_crawl() ? '' : 'disabled'; $disabled_tip = ''; if ( ! $this->conf( Base::O_CRAWLER_SITEMAP ) ) { $disabled = 'disabled'; $disabled_tip = '<span class="litespeed-callout notice notice-error inline litespeed-left20">' . sprintf( esc_html__( 'You need to set the %s in Settings first before using the crawler', 'litespeed-cache' ), '<code>' . esc_html( Lang::title( Base::O_CRAWLER_SITEMAP ) ) . '</code>' ) . '</span>'; } $crawler_run_interval = defined( 'LITESPEED_CRAWLER_RUN_INTERVAL' ) ? LITESPEED_CRAWLER_RUN_INTERVAL : 600; if ( $crawler_run_interval > 0 ) : $recurrence = ''; $hours = (int) floor( $crawler_run_interval / 3600 ); if ( $hours ) { $recurrence .= sprintf( $hours > 1 ? esc_html__( '%d hours', 'litespeed-cache' ) : esc_html__( '%d hour', 'litespeed-cache' ), $hours ); } $minutes = (int) floor( ( $crawler_run_interval % 3600 ) / 60 ); if ( $minutes ) { $recurrence .= ' '; $recurrence .= sprintf( $minutes > 1 ? esc_html__( '%d minutes', 'litespeed-cache' ) : esc_html__( '%d minute', 'litespeed-cache' ), $minutes ); } ?> <h3 class="litespeed-title litespeed-relative"> <?php esc_html_e( 'Crawler Cron', 'litespeed-cache' ); ?> <?php Doc::learn_more( 'https://docs.litespeedtech.com/lscache/lscwp/crawler/' ); ?> </h3> <?php if ( ! Router::can_crawl() ) : ?> <div class="litespeed-callout notice notice-error inline"> <h4><?php esc_html_e( 'WARNING', 'litespeed-cache' ); ?></h4> <p><?php esc_html_e( 'The crawler feature is not enabled on the LiteSpeed server. Please consult your server admin or hosting provider.', 'litespeed-cache' ); ?></p> <p> <?php printf( /* translators: %s: Link tags */ esc_html__( 'See %sIntroduction for Enabling the Crawler%s for detailed information.', 'litespeed-cache' ), '<a href="https://docs.litespeedtech.com/lscache/lscwp/admin/#enabling-and-limiting-the-crawler" target="_blank" rel="noopener">', '</a>' ); ?> </p> </div> <?php endif; ?> <?php if ( $summary['this_full_beginning_time'] ) : ?> <p> <b><?php esc_html_e( 'Current sitemap crawl started at', 'litespeed-cache' ); ?>:</b> <?php echo esc_html( Utility::readable_time( $summary['this_full_beginning_time'] ) ); ?> </p> <?php if ( ! $is_running ) : ?> <p> <b><?php esc_html_e( 'The next complete sitemap crawl will start at', 'litespeed-cache' ); ?>:</b> <?php echo esc_html( gmdate( 'm/d/Y H:i:s', $summary['this_full_beginning_time'] + LITESPEED_TIME_OFFSET + (int) $summary['last_full_time_cost'] + $this->conf( Base::O_CRAWLER_CRAWL_INTERVAL ) ) ); ?> </p> <?php endif; ?> <?php endif; ?> <?php if ( $summary['last_full_time_cost'] ) : ?> <p> <b><?php esc_html_e( 'Last complete run time for all crawlers', 'litespeed-cache' ); ?>:</b> <?php printf( esc_html__( '%d seconds', 'litespeed-cache' ), (int) $summary['last_full_time_cost'] ); ?> </p> <?php endif; ?> <?php if ( $summary['last_crawler_total_cost'] ) : ?> <p> <b><?php esc_html_e( 'Run time for previous crawler', 'litespeed-cache' ); ?>:</b> <?php printf( esc_html__( '%d seconds', 'litespeed-cache' ), (int) $summary['last_crawler_total_cost'] ); ?> </p> <?php endif; ?> <?php if ( $summary['curr_crawler_beginning_time'] ) : ?> <p> <b><?php esc_html_e( 'Current crawler started at', 'litespeed-cache' ); ?>:</b> <?php echo esc_html( Utility::readable_time( $summary['curr_crawler_beginning_time'] ) ); ?> </p> <?php endif; ?> <p> <b><?php esc_html_e( 'Current server load', 'litespeed-cache' ); ?>:</b> <?php echo esc_html( $__crawler->get_server_load() ); ?> </p> <?php if ( $summary['last_start_time'] ) : ?> <p class="litespeed-desc"> <b><?php esc_html_e( 'Last interval', 'litespeed-cache' ); ?>:</b> <?php echo esc_html( Utility::readable_time( $summary['last_start_time'] ) ); ?> </p> <?php endif; ?> <?php if ( $summary['end_reason'] ) : ?> <p class="litespeed-desc"> <b><?php esc_html_e( 'Ended reason', 'litespeed-cache' ); ?>:</b> <?php echo esc_html( $summary['end_reason'] ); ?> </p> <?php endif; ?> <?php if ( $summary['last_crawled'] ) : ?> <p class="litespeed-desc"> <b><?php esc_html_e( 'Last crawled', 'litespeed-cache' ); ?>:</b> <?php printf( esc_html__( '%d item(s)', 'litespeed-cache' ), esc_html( $summary['last_crawled'] ) ); ?> </p> <?php endif; ?> <p> <a href="<?php echo esc_url( Utility::build_url( Router::ACTION_CRAWLER, Crawler::TYPE_RESET ) ); ?>" class="button litespeed-btn-warning"><?php esc_html_e( 'Reset position', 'litespeed-cache' ); ?></a> <a href="<?php echo Router::can_crawl() ? esc_url( Utility::build_url( Router::ACTION_CRAWLER, Crawler::TYPE_START ) ) : 'javascript:;'; ?>" id="litespeed_manual_trigger" class="button litespeed-btn-success" litespeed-accesskey="R" <?php echo wp_kses_post( $disabled ); ?>><?php esc_html_e( 'Manually run', 'litespeed-cache' ); ?></a> <?php echo wp_kses_post( $disabled_tip ); ?> </p> <div class="litespeed-table-responsive"> <table class="wp-list-table widefat striped" data-crawler-list> <thead> <tr> <th scope="col">#</th> <th scope="col"><?php esc_html_e( 'Cron Name', 'litespeed-cache' ); ?></th> <th scope="col"><?php esc_html_e( 'Run Frequency', 'litespeed-cache' ); ?></th> <th scope="col"><?php esc_html_e( 'Status', 'litespeed-cache' ); ?></th> <th scope="col"><?php esc_html_e( 'Activate', 'litespeed-cache' ); ?></th> <th scope="col"><?php esc_html_e( 'Running', 'litespeed-cache' ); ?></th> </tr> </thead> <tbody> <?php foreach ( $crawler_list as $i => $v ) : $hit = ! empty( $summary['crawler_stats'][ $i ][ Crawler::STATUS_HIT ] ) ? (int) $summary['crawler_stats'][ $i ][ Crawler::STATUS_HIT ] : 0; $miss = ! empty( $summary['crawler_stats'][ $i ][ Crawler::STATUS_MISS ] ) ? (int) $summary['crawler_stats'][ $i ][ Crawler::STATUS_MISS ] : 0; $blacklisted = ! empty( $summary['crawler_stats'][ $i ][ Crawler::STATUS_BLACKLIST ] ) ? (int) $summary['crawler_stats'][ $i ][ Crawler::STATUS_BLACKLIST ] : 0; $blacklisted += ! empty( $summary['crawler_stats'][ $i ][ Crawler::STATUS_NOCACHE ] ) ? (int) $summary['crawler_stats'][ $i ][ Crawler::STATUS_NOCACHE ] : 0; $waiting = isset( $summary['crawler_stats'][ $i ][ Crawler::STATUS_WAIT ] ) ? (int) $summary['crawler_stats'][ $i ][ Crawler::STATUS_WAIT ] : (int) ( $summary['list_size'] - $hit - $miss - $blacklisted ); ?> <tr> <td> <?php echo esc_html( $i + 1 ); if ( $i === $summary['curr_crawler'] ) { echo '<img class="litespeed-crawler-curr" src="' . esc_url( LSWCP_PLUGIN_URL . 'assets/img/Litespeed.icon.svg' ) . '" alt="Current Crawler">'; } ?> </td> <td><?php echo wp_kses_post( $v['title'] ); ?></td> <td><?php echo esc_html( $recurrence ); ?></td> <td> <?php printf( '<i class="litespeed-badge litespeed-bg-default" data-balloon-pos="up" aria-label="%s">%s</i> ', esc_attr__( 'Waiting', 'litespeed-cache' ), esc_html( $waiting > 0 ? $waiting : '-' ) ); printf( '<i class="litespeed-badge litespeed-bg-success" data-balloon-pos="up" aria-label="%s">%s</i> ', esc_attr__( 'Hit', 'litespeed-cache' ), esc_html( $hit > 0 ? $hit : '-' ) ); printf( '<i class="litespeed-badge litespeed-bg-primary" data-balloon-pos="up" aria-label="%s">%s</i> ', esc_attr__( 'Miss', 'litespeed-cache' ), esc_html( $miss > 0 ? $miss : '-' ) ); printf( '<i class="litespeed-badge litespeed-bg-danger" data-balloon-pos="up" aria-label="%s">%s</i> ', esc_attr__( 'Blocklisted', 'litespeed-cache' ), esc_html( $blacklisted > 0 ? $blacklisted : '-' ) ); ?> </td> <td> <?php $this->build_toggle( 'litespeed-crawler-' . $i, $__crawler->is_active( $i ) ); ?> <?php if ( ! empty( $v['uid'] ) && empty( $this->conf( Base::O_SERVER_IP ) ) ) : ?> <div class="litespeed-danger litespeed-text-bold"> 🚨 <?php esc_html_e( 'NOTICE', 'litespeed-cache' ); ?>: <?php printf( esc_html__( 'You must set %s before using this feature.', 'litespeed-cache' ), esc_html( Lang::title( Base::O_SERVER_IP ) ) ); ?> <?php Doc::learn_more( esc_url( admin_url( 'admin.php?page=litespeed-general#settings' ) ), esc_html__( 'Click here to set.', 'litespeed-cache' ), true, false, true ); ?> </div> <?php endif; ?> </td> <td> <?php if ( $i === $summary['curr_crawler'] ) { echo esc_html__( 'Position: ', 'litespeed-cache' ) . esc_html( $summary['last_pos'] + 1 ); if ( $is_running ) { echo ' <span class="litespeed-label-success">' . esc_html__( 'running', 'litespeed-cache' ) . '</span>'; } } ?> </td> </tr> <?php endforeach; ?> </tbody> </table> </div> <p> <i class="litespeed-badge litespeed-bg-default"></i> = <?php esc_html_e( 'Waiting to be Crawled', 'litespeed-cache' ); ?><br> <i class="litespeed-badge litespeed-bg-success"></i> = <?php esc_html_e( 'Already Cached', 'litespeed-cache' ); ?><br> <i class="litespeed-badge litespeed-bg-primary"></i> = <?php esc_html_e( 'Successfully Crawled', 'litespeed-cache' ); ?><br> <i class="litespeed-badge litespeed-bg-danger"></i> = <?php esc_html_e( 'Blocklisted', 'litespeed-cache' ); ?><br> </p> <div class="litespeed-desc"> <div><?php esc_html_e( 'Run frequency is set by the Interval Between Runs setting.', 'litespeed-cache' ); ?></div> <div> <?php esc_html_e( 'Crawlers cannot run concurrently. If both the cron and a manual run start at similar times, the first to be started will take precedence.', 'litespeed-cache' ); ?> </div> <div> <?php printf( /* translators: %s: Link tags */ esc_html__( 'Please see %sHooking WP-Cron Into the System Task Scheduler%s to learn how to create the system cron task.', 'litespeed-cache' ), '<a href="https://developer.wordpress.org/plugins/cron/hooking-wp-cron-into-the-system-task-scheduler/" target="_blank" rel="noopener">', '</a>' ); ?> </div> </div> <?php endif; ?> <h3 class="litespeed-title"><?php esc_html_e( 'Watch Crawler Status', 'litespeed-cache' ); ?></h3> <?php $ajax_url = $__crawler->json_path(); if ( $ajax_url ) : ?> <input type="button" id="litespeed-crawl-url-btn" value="<?php esc_attr_e( 'Show crawler status', 'litespeed-cache' ); ?>" class="button button-secondary" data-url="<?php echo esc_url( $ajax_url ); ?>" /> <div class="litespeed-shell litespeed-hide"> <div class="litespeed-shell-header-bar"></div> <div class="litespeed-shell-header"> <div class="litespeed-shell-header-bg"></div> <div class="litespeed-shell-header-icon-container"> <img id="litespeed-shell-icon" src="<?php echo esc_url( LSWCP_PLUGIN_URL . 'assets/img/Litespeed.icon.svg' ); ?>" alt="LiteSpeed Icon" /> </div> </div> <ul class="litespeed-shell-body"> <li><?php esc_html_e( 'Start watching...', 'litespeed-cache' ); ?></li> <li id="litespeed-loading-dot"></li> </ul> </div> <?php else : ?> <p><?php esc_html_e( 'No crawler meta file generated yet', 'litespeed-cache' ); ?></p> <?php endif; ?> <script> var _litespeed_meta; var _litespeed_shell_interval = 3; // seconds var _litespeed_shell_interval_range = [3, 60]; var _litespeed_shell_handle; var _litespeed_shell_display_handle; var _litespeed_crawler_url; var _litespeed_dots; (function ($) { 'use strict'; jQuery(document).ready(function () { $('#litespeed-crawl-url-btn').on('click', function () { if (!$(this).data('url')) { return false; } $('.litespeed-shell').removeClass('litespeed-hide'); _litespeed_dots = window.setInterval(_litespeed_loading_dots, 300); _litespeed_crawler_url = $(this).data('url'); litespeed_fetch_meta(); $(this).hide(); }); $('#litespeed_manual_trigger').on('click', function (event) { $('#litespeed-loading-dot').before('<li>Manually Started</li>'); _litespeed_shell_interval = _litespeed_shell_interval_range[0]; litespeed_fetch_meta(); }); /** * Freeze or melt a specific crawler * @since 4.3 */ if ($('[data-crawler-list] [data-litespeed_toggle_id]').length > 0) { $('[data-crawler-list] [data-litespeed_toggle_id]').on('click', function (e) { var crawler_id = $(this).attr('data-litespeed_toggle_id'); var crawler_id = Number(crawler_id.split('-').pop()); var that = this; $.ajax({ url: '<?php echo function_exists('get_rest_url') ? get_rest_url(null, 'litespeed/v1/toggle_crawler_state') : '/'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>', dataType: 'json', method: 'POST', cache: false, data: { crawler_id: crawler_id }, beforeSend: function (xhr) { xhr.setRequestHeader('X-WP-Nonce', '<?php echo esc_js( wp_create_nonce('wp_rest') ); ?>'); }, success: function (data) { $(that) .toggleClass('litespeed-toggle-btn-default litespeed-toggleoff', data == 0) .toggleClass('litespeed-toggle-btn-primary', data == 1); console.log('litespeed-crawler-ajax: change Activate option'); }, error: function (xhr, error) { console.log(xhr); console.log(error); console.log('litespeed-crawler-ajax: option failed to save due to some error'); }, }); }); } }); })(jQuery); function litespeed_fetch_meta() { window.clearTimeout(_litespeed_shell_handle); jQuery('#litespeed-loading-dot').text(''); jQuery.ajaxSetup({ cache: false }); jQuery.getJSON(_litespeed_crawler_url, function (meta) { litespeed_pulse(); var changed = false; if (meta && 'list_size' in meta) { new_meta = meta.list_size + ' ' + meta.file_time + ' ' + meta.curr_crawler + ' ' + meta.last_pos + ' ' + meta.last_count + ' ' + meta.last_start_time + ' ' + meta.is_running; if (new_meta != _litespeed_meta) { _litespeed_meta = new_meta; changed = true; string = _litespeed_build_meta(meta); jQuery('#litespeed-loading-dot').before(string); // remove first log elements log_length = jQuery('.litespeed-shell-body li').length; if (log_length > 50) { jQuery('.litespeed-shell-body li:lt(' + (log_length - 50) + ')').remove(); } // scroll to end jQuery('.litespeed-shell-body') .stop() .animate( { scrollTop: jQuery('.litespeed-shell-body')[0].scrollHeight, }, 800, ); } // dynamic adjust the interval length _litespeed_adjust_interval(changed); } // display interval counting litespeed_display_interval_reset(); _litespeed_shell_handle = window.setTimeout(_litespeed_dynamic_timeout, _litespeed_shell_interval * 1000); }); } function _litespeed_loading_dots() { jQuery('#litespeed-loading-dot').append('.'); } /** * Dynamic adjust interval */ function _litespeed_adjust_interval(changed) { if (changed) { _litespeed_shell_interval -= Math.ceil(_litespeed_shell_interval / 2); } else { _litespeed_shell_interval++; } if (_litespeed_shell_interval < _litespeed_shell_interval_range[0]) { _litespeed_shell_interval = _litespeed_shell_interval_range[0]; } if (_litespeed_shell_interval > _litespeed_shell_interval_range[1]) { _litespeed_shell_interval = _litespeed_shell_interval_range[1]; } } function _litespeed_build_meta(meta) { var string = '<li>' + litespeed_date(meta.last_update_time) + ' Size: ' + meta.list_size + ' Crawler: #' + (meta.curr_crawler * 1 + 1) + ' Position: ' + (meta.last_pos * 1 + 1) + ' Threads: ' + meta.last_count + ' Status: '; if (meta.is_running) { string += 'crawling, ' + meta.last_status; } else { string += meta.end_reason ? meta.end_reason : '-'; } string += '</li>'; return string; } function _litespeed_dynamic_timeout() { litespeed_fetch_meta(); } function litespeed_display_interval_reset() { window.clearInterval(_litespeed_shell_display_handle); jQuery('.litespeed-shell-header-bar').data('num', _litespeed_shell_interval); _litespeed_shell_display_handle = window.setInterval(_litespeed_display_interval, 1000); jQuery('.litespeed-shell-header-bar') .stop() .animate({ width: '100%' }, 500, function () { jQuery('.litespeed-shell-header-bar').css('width', '0%'); }); } function _litespeed_display_interval() { var num = jQuery('.litespeed-shell-header-bar').data('num'); jQuery('.litespeed-shell-header-bar') .stop() .animate({ width: litespeed_get_percent(num, _litespeed_shell_interval) + '%' }, 1000); if (num > 0) num--; if (num < 0) num = 0; jQuery('.litespeed-shell-header-bar').data('num', num); } function litespeed_get_percent(num1, num2) { num1 = num1 * 1; num2 = num2 * 1; num = (num2 - num1) / num2; return num * 100; } function litespeed_date(timestamp) { var a = new Date(timestamp * 1000); var months = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']; var year = a.getFullYear(); var month = months[a.getMonth()]; var date = litespeed_add_zero(a.getDate()); var hour = litespeed_add_zero(a.getHours()); var min = litespeed_add_zero(a.getMinutes()); var sec = litespeed_add_zero(a.getSeconds()); var time = date + ' ' + month + ' ' + year + ' ' + hour + ':' + min + ':' + sec; return time; } function litespeed_add_zero(i) { if (i < 10) { i = '0' + i; } return i; } function litespeed_pulse() { jQuery('#litespeed-shell-icon').animate( { width: 27, height: 34, opacity: 1, }, 700, function () { jQuery('#litespeed-shell-icon').animate( { width: 23, height: 29, opacity: 0.5, }, 700, ); }, ); } </script>
Upload File
Create Folder