PluginProbe
Lasso Lite – Affiliate Link Manager & Product Displays / 158
Lasso Lite – Affiliate Link Manager & Product Displays v158
158 157 155 156 154 153 152 151 150 149 148 trunk 0.9.9 104 105 106 107 108 109 110 111 112 113 114 115 All 57 releases
← All changes | classes/processes/class-process.php +27 -0 152158 View file →
@@ -514,8 +514,31 @@
514 514 $lasso_db->remove_all_lasso_processes();
515 515 }
516 516
517 517 /**
518 + * Log once when a configured background process class is missing.
519 + *
520 + * @param mixed $process_class Process class name from filter/map.
521 + */
522 + private static function log_missing_process_class_once( $process_class ) {
523 + $class_label = is_string( $process_class ) ? $process_class : wp_json_encode( $process_class );
524 + static $logged_this_request = array();
525 + if ( isset( $logged_this_request[ $class_label ] ) ) {
526 + return;
527 + }
528 + $logged_this_request[ $class_label ] = true;
529 +
530 + $log_key = 'lasso_lite_missing_proc_' . md5( $class_label );
531 + if ( get_option( $log_key ) ) {
532 + return;
533 + }
534 + update_option( $log_key, 1, false );
535 +
536 + // phpcs:ignore WordPress.PHP.DevelopmentFunctions.error_log_error_log
537 + error_log( 'Lasso Lite: skipping missing background process class ' . $class_label );
538 + }
539 +
540 + /**
518 541 * Get Background Process is running
519 542 */
520 543 public function get_list_background_processing() {
521 544 $result = array(
@@ -527,8 +550,12 @@
527 550 $process_classes = Lasso_Verbiage::PROCESS_DESCRIPTION;
528 551 $process_classes = apply_filters( 'lasso_lite_all_processes', $process_classes );
529 552
530 553 foreach ( $process_classes as $process_class => $process_name ) {
554 + if ( ! is_string( $process_class ) || ! class_exists( $process_class ) ) {
555 + self::log_missing_process_class_once( $process_class );
556 + continue;
557 + }
531 558 /** @var Process $process_class_obj */ // phpcs:ignore
532 559 $process_class_obj = new $process_class();
533 560 $process_next_schedule = $process_class_obj->next_schedule();
534 561