shell bypass 403
<?php
/**
* Mail class.
*/
// Exit if accessed directly
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
if ( ! class_exists( 'Strong_Mail' ) ) :
class Strong_Mail {
public function __construct() {
add_action( 'wp_loaded', array( $this, 'process_mail_queue' ), 20 );
}
/**
* Process mail queue
*
* @since 2.8.0
*/
public function process_mail_queue() {
$current_queue = get_transient( 'wpmtst_mail_queue' );
if ( ! $current_queue ) {
return;
}
foreach ( $current_queue as $email ) {
$this->send_mail( $email );
}
delete_transient( 'wpmtst_mail_queue' );
}
public function send_mail( $email ) {
if ( defined( 'IS_LOCALHOST' ) && IS_LOCALHOST ) {
error_log( print_r( $email, true ) );
} else {
wp_mail( $email['to'], $email['subject'], $email['message'], $email['headers'] );
}
}
/**
* Enqueue mail.
*
* @since 2.8.0
* @param $email
*/
public function enqueue_mail( $email ) {
$current_queue = get_transient( 'wpmtst_mail_queue' );
if ( $current_queue ) {
delete_transient( 'wpmtst_mail_queue' );
} else {
$current_queue = array();
}
$current_queue[] = $email;
set_transient( 'wpmtst_mail_queue', $current_queue, DAY_IN_SECONDS );
}
}
endif;