| Server IP : 5.129.245.98 / Your IP : 216.73.217.19 Web Server : Apache/2.4.66 (Debian) System : Linux 1b8c17c336b9 6.8.0-111-generic #111-Ubuntu SMP PREEMPT_DYNAMIC Sat Apr 11 23:16:02 UTC 2026 x86_64 User : www-data ( 33) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/html/wp-content/plugins/elementor/core/logger/loggers/ |
Upload File : |
<?php
namespace Elementor\Core\Logger\Loggers;
use Elementor\Core\Logger\Items\Log_Item_Interface as Log_Item;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
class Db extends Base {
public function save_log( Log_Item $item ) {
$log = $this->maybe_truncate_log();
$id = $item->get_fingerprint();
if ( empty( $log[ $id ] ) ) {
$log[ $id ] = $item;
}
$log[ $id ]->increase_times( $item );
update_option( self::LOG_NAME, $log, 'no' );
}
public function clear() {
delete_option( self::LOG_NAME );
}
private function maybe_truncate_log() {
/** @var Log_Item[] $log */
$log = $this->get_log();
if ( Log_Item::MAX_LOG_ENTRIES < count( $log ) ) {
$log = array_slice( $log, -Log_Item::MAX_LOG_ENTRIES );
}
return $log;
}
public function get_log() {
// Clear cache.
wp_cache_delete( self::LOG_NAME, 'options' );
$log = get_option( self::LOG_NAME, [] );
// In case the DB log is corrupted.
if ( ! is_array( $log ) ) {
$log = [];
}
return $log;
}
}