本文整理汇总了PHP中SendPress_Data::emails_sent_in_queue方法的典型用法代码示例。如果您正苦于以下问题:PHP SendPress_Data::emails_sent_in_queue方法的具体用法?PHP SendPress_Data::emails_sent_in_queue怎么用?PHP SendPress_Data::emails_sent_in_queue使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类SendPress_Data
的用法示例。
在下文中一共展示了SendPress_Data::emails_sent_in_queue方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: auto_cron
function auto_cron()
{
// make sure we're in wp-cron.php
if (false !== strpos($_SERVER['REQUEST_URI'], '/wp-cron.php')) {
// make sure a secret string is provided in the ur
if (isset($_GET['action']) && $_GET['action'] == 'sendpress') {
$time_start = microtime(true);
$count = SendPress_Data::emails_in_queue();
$bg = 0;
if ($count > 0) {
SendPress_Queue::send_mail();
$count = SendPress_Data::emails_in_queue();
} else {
SPNL()->log->prune_logs();
SendPress_Data::clean_queue_table();
//SendPress_Logging::prune_logs();
$bg = 1;
}
$attempted_count = SendPress_Option::get('autocron-per-call', 25);
$pro = 0;
if (defined('SENDPRESS_PRO_VERSION')) {
$pro = SENDPRESS_PRO_VERSION;
}
$stuck = SendPress_Data::emails_stuck_in_queue();
$limit = SendPress_Manager::limit_reached();
$emails_per_day = SendPress_Option::get('emails-per-day');
$emails_per_hour = SendPress_Option::get('emails-per-hour');
$hourly_emails = SendPress_Data::emails_sent_in_queue("hour");
$emails_so_far = SendPress_Data::emails_sent_in_queue("day");
$limits = array('autocron' => $attempted_count, 'dl' => $emails_per_day, 'hl' => $emails_per_hour, 'ds' => $emails_so_far, 'hs' => $hourly_emails);
$time_end = microtime(true);
$time = $time_end - $time_start;
echo json_encode(array("background" => $bg, "queue" => $count, "stuck" => $stuck, "version" => SENDPRESS_VERSION, "pro" => $pro, "limit" => $limit, 'info' => $limits, 'time' => number_format($time, 3)));
die;
}
}
}
示例2: emails_allowed_to_send
static function emails_allowed_to_send()
{
$emails_per_day = SendPress_Option::get('emails-per-day');
$emails_per_hour = SendPress_Option::get('emails-per-hour');
$count = SendPress_Data::emails_in_queue();
$emails_this_hour = SendPress_Data::emails_sent_in_queue("hour");
$emails_today = SendPress_Data::emails_sent_in_queue("day");
$hour = $emails_per_hour - $emails_this_hour;
$day = $emails_per_day - $emails_today;
if ($count <= $hour && $count <= $day) {
return $count;
}
if ($hour <= $day) {
return $hour;
}
return $day;
}
示例3: prepare_items
/** ************************************************************************
* REQUIRED! This is where you prepare your data for display. This method will
* usually be used to query the database, sort and filter the data, and generally
* get it ready to be displayed. At a minimum, we should set $this->items and
* $this->set_pagination_args(), although the following properties and methods
* are frequently interacted with here...
*
* @uses $this->_column_headers
* @uses $this->items
* @uses $this->get_columns()
* @uses $this->get_sortable_columns()
* @uses $this->get_pagenum()
* @uses $this->set_pagination_args()
**************************************************************************/
function prepare_items()
{
global $wpdb, $_wp_column_headers;
$screen = get_current_screen();
/*
select t1.* from `sp_sendpress_list_subscribers` as t1 , `sp_sendpress_subscribers` as t2
where t1.subscriberID = t2.subscriberID and t1.listID = 2*/
$query = "SELECT * FROM " . SendPress_Data::queue_table();
/* -- Pagination parameters -- */
//Number of elements in your table?
$totalitems = SendPress_Data::emails_sent_in_queue('All');
//$wpdb->query($query); //return the total number of affected rows
//How many to display per page?
// get the current user ID
$user = get_current_user_id();
// get the current admin screen
$screen = get_current_screen();
// retrieve the "per_page" option
$per_page = 10;
$screen_option = $screen->get_option('per_page', 'option');
if (!empty($screen_option)) {
// retrieve the value of the option stored for the current user
$per_page = get_user_meta($user, $screen_option, true);
if (empty($per_page) || $per_page < 1) {
// get the default value if none is set
$per_page = $screen->get_option('per_page', 'default');
}
}
//Which page is this?
$paged = !empty($_GET["paged"]) ? esc_sql($_GET["paged"]) : '';
//Page Number
if (empty($paged) || !is_numeric($paged) || $paged <= 0) {
$paged = 1;
}
//How many pages do we have in total?
$totalpages = ceil($totalitems / $per_page);
$query .= ' WHERE success = 1 ';
//$query.="AND ( date_sent = '0000-00-00 00:00:00' or date_sent < '".date_i18n('Y-m-d H:i:s')."') ";
if (isset($_GET["listid"]) && $_GET["listid"] > 0) {
$query .= ' AND listID = ' . $_GET["listid"];
}
if (isset($_GET["qs"])) {
$query .= ' AND to_email LIKE "%' . $_GET["qs"] . '%"';
}
/* -- Ordering parameters -- */
//Parameters that are going to be used to order the result
$orderby = !empty($_GET["orderby"]) ? esc_sql($_GET["orderby"]) : '';
$order = !empty($_GET["order"]) ? esc_sql($_GET["order"]) : 'ASC';
if (!empty($orderby) & !empty($order)) {
$query .= ' ORDER BY ' . $orderby . ' ' . $order;
}
if (empty($orderby)) {
$query .= ' ORDER BY id DESC ';
}
//adjust the query to take pagination into account
if (!empty($paged) && !empty($per_page)) {
$offset = ($paged - 1) * $per_page;
$query .= ' LIMIT ' . (int) $offset . ',' . (int) $per_page;
}
/* -- Register the pagination -- */
$this->set_pagination_args(array("total_items" => $totalitems, "total_pages" => $totalpages, "per_page" => $per_page));
//The pagination links are automatically built according to those parameters
/* -- Register the Columns -- */
$columns = $this->get_columns();
$hidden = array();
$sortable = $this->get_sortable_columns();
$this->_column_headers = array($columns, $hidden, $sortable);
/* -- Fetch the items -- */
$this->items = $wpdb->get_results($query);
}
示例4: html
//.........这里部分代码省略.........
<p > <span class="glyphicon glyphicon-ok-sign"></span> = <?php
_e('Currently Active', 'sendpress');
?>
</p>
<?php
}
?>
</div>
</div>
<br class="clear">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title"><?php
_e('Advanced Sending Options', 'sendpress');
?>
</h3>
</div>
<div class="panel-body">
<div class="boxer form-box">
<div style="float: right; width: 45%;">
<h2><?php
_e('Email Sending Limits', 'sendpress');
?>
</h2>
<?php
$emails_per_day = SendPress_Option::get('emails-per-day');
$emails_per_hour = SendPress_Option::get('emails-per-hour');
$credits = SendPress_Option::get('emails-credits');
//$hourly_emails = SendPress_Data::emails_sent_in_queue("hour");
$emails_so_far = SendPress_Data::emails_sent_in_queue("day");
$offset = get_option('gmt_offset') * 60 * 60;
// Time offset in seconds
$local_timestamp = wp_next_scheduled('sendpress_cron_action') + $offset;
//print_r(wp_get_schedules());
sprintf(__('You have sent <strong>%s</strong> emails so far today and you have <strong>%s</strong> credits remaining.', 'sendpress'), $emails_so_far, $credits);
?>
<br><br>
<input type="text" size="6" name="emails-per-day" value="<?php
echo $emails_per_day;
?>
" /> <?php
_e('Emails Per Day', 'sendpress');
?>
<br><br>
<input type="text" size="6" name="emails-per-hour" value="<?php
echo $emails_per_hour;
?>
" /> <?php
_e('Emails Per Hour', 'sendpress');
?>
<br><br>
<h2><?php
_e('Email Encoding', 'sendpress');
?>
</h2>
<?php
$charset = SendPress_Option::get('email-charset', 'UTF-8');
?>
Charset:
<select name="email-charset" id="">
<?php
示例5: html
function html($sp)
{
SendPress_Tracking::event('Queue Tab');
if (isset($_GET['cron'])) {
$sp->fetch_mail_from_queue();
}
//Create an instance of our package class...
$testListTable = new SendPress_Queue_Table();
//Fetch, prepare, sort, and filter our data...
$testListTable->prepare_items();
SendPress_Option::set('no_cron_send', 'false');
//$sp->fetch_mail_from_queue();
$sp->cron_start();
//echo $sp->get_key(). "<br>";
$open_info = array("id" => 13, "report" => 10, "view" => "open");
/*
$x = $sp->encrypt_data($open_info);
echo $x."<br>";
$x = $sp->decrypt_data($x);
print_r($x);
echo "<br>";
$d = $_GET['t'];
$x = $sp->decrypt_data($d);
print_r($x->id);
echo "<br>";
//echo wp_get_schedule('sendpress_cron_action_run');
//
$time_delay = SendPress_Option::get('time-delay');
echo $time_delay;
echo date('l jS \of F Y H:i:s A',$time_delay );
echo "<br>";
$time = date('H:i:s');
echo $time;//11:09
$time = date('H:i:s', $time_delay);
echo $time;//11:09
*/
$autocron = SendPress_Option::get('autocron', 'no');
if ($autocron == 'yes') {
$api_info = json_decode(SendPress_Cron::get_info());
if (isset($api_info->active) && $api_info->active === 0) {
echo "<p class='alert alert-danger'><strong>Oh no!</strong> It looks like AutoCron disconnected itself. To get max send speed please re-enable it <a href='" . SendPress_Admin::link('Settings_Account') . "'>here</a>.</p>";
delete_transient('sendpress_autocron_cache');
SendPress_Option::set('autocron', 'no');
} else {
if (isset($api_info->lastcheck)) {
echo "<p class='alert alert-success'><strong>Looking good!</strong> Autocron is running and last checked your site at: " . $api_info->lastcheck . " UTC</p>";
}
}
} else {
echo "<p class='alert alert-info'><strong>Howdy.</strong> It looks like AutoCron was not enabled or it disconnected itself. To get max send speed please re-enable it <a href='" . SendPress_Admin::link('Settings_Account') . "'>here</a>.</p>";
}
?>
<br>
<div id="taskbar" class="lists-dashboard rounded group">
<div id="button-area">
<?php
$pause_sending = SendPress_Option::get('pause-sending', 'no');
$txt = __('Pause Sending', 'sendpress');
//Stop Sending for now
if ($pause_sending == 'yes') {
$txt = __('Resume Sending', 'sendpress');
}
?>
<div class="btn-group">
<a class="btn btn-large btn-default " href="<?php
echo SendPress_Admin::link('Queue');
?>
&action=pause-queue" ><i class="icon-repeat icon-white "></i> <?php
echo $txt;
?>
</a>
<a id="send-now" class="btn btn-primary btn-large " data-toggle="modal" href="#sendpress-sending" ><i class="icon-white icon-refresh"></i> <?php
_e('Send Emails Now', 'sendpress');
?>
</a>
</div>
</div>
<?php
$emails_per_day = SendPress_Option::get('emails-per-day');
if ($emails_per_day == 0) {
$emails_per_day = __('Unlimited', 'sendpress');
}
$emails_per_hour = SendPress_Option::get('emails-per-hour');
$hourly_emails = SendPress_Data::emails_sent_in_queue("hour");
$emails_so_far = SendPress_Data::emails_sent_in_queue("day");
//print_r(SendPress_Data::emails_stuck_in_queue());
?>
//.........这里部分代码省略.........
示例6: html
//.........这里部分代码省略.........
</div>
</div>
<p > <span class="glyphicon glyphicon-ok-sign"></span> = <?php
_e('Currently Active', 'sendpress');
?>
</p>
<?php
}
?>
</div>
</div>
<br class="clear">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title"><?php
_e('Advanced Sending Options', 'sendpress');
?>
</h3>
</div>
<div class="panel-body">
<div class="boxer form-box">
<div style="float: right; width: 45%;">
<h2><?php
_e('Email Sending Limits', 'sendpress');
?>
</h2>
<?php
$emails_per_day = SendPress_Option::get('emails-per-day');
$emails_per_hour = SendPress_Option::get('emails-per-hour');
$hourly_emails = SendPress_Data::emails_sent_in_queue("hour");
$emails_so_far = SendPress_Data::emails_sent_in_queue("day");
$offset = get_option('gmt_offset') * 60 * 60;
// Time offset in seconds
$local_timestamp = wp_next_scheduled('sendpress_cron_action') + $offset;
//print_r(wp_get_schedules());
printf(__('You have sent <strong>%d</strong> emails so far today.', 'sendpress'), $emails_so_far);
?>
.<br><br>
<input type="text" size="6" name="emails-per-day" value="<?php
echo $emails_per_day;
?>
" /> <?php
_e('Emails Per Day', 'sendpress');
?>
<br><br>
<input type="text" size="6" name="emails-per-hour" value="<?php
echo $emails_per_hour;
?>
" /> <?php
_e('Emails Per Hour', 'sendpress');
?>
<br><br>
<h2><?php
_e('Email Encoding', 'sendpress');
?>
</h2>
<?php
$charset = SendPress_Option::get('email-charset', 'UTF-8');
?>
Charset:
<select name="email-charset" id="">
示例7: auto_cron
static function auto_cron()
{
// make sure we're in wp-cron.php
if (false !== strpos($_SERVER['REQUEST_URI'], '/wp-cron.php')) {
// make sure a secret string is provided in the ur
if (isset($_GET['action']) && $_GET['action'] == 'sendpress') {
//* Use cache
static $cron_bg_run = null;
static $cron_bg_run_weekly = null;
$time_start = microtime(true);
$count = SendPress_Data::emails_in_queue();
$bg = 0;
$bg_weekly = 0;
$error = '';
try {
if ($count > 0) {
SendPress_Queue::send_mail();
$count = SendPress_Data::emails_in_queue();
} else {
//* If cache is empty, pull transient
if (!$cron_bg_run) {
$cron_bg_run = get_transient('spnl-background-daily');
}
//* If transient has expired, do a fresh update check
if (!$cron_bg_run) {
//* If cache is empty, pull transient
if (!$cron_bg_run_weekly) {
$cron_bg_run_weekly = get_transient('spnl-background-weekly');
}
//* If transient has expired, do a fresh update check
if (!$cron_bg_run_weekly) {
SPNL()->log->prune_logs();
SendPress_Data::clean_queue_table();
SendPress_DB_Tables::repair_tables();
$cron_bg_run_weekly = array('runtime' => date("F j, Y, g:i a"));
set_transient('spnl-background-weekly', $cron_bg_run_weekly, 60 * 60 * 24 * 7);
$bg_weekly = 1;
}
//SendPress_Logging::prune_logs();
$bg = 1;
$cron_bg_run = array('runtime' => date("F j, Y, g:i a"));
set_transient('spnl-background-daily', $cron_bg_run, 60 * 60 * 24);
}
}
} catch (Exception $e) {
$error = $e->getMessage();
SPNL()->log->add('Autocron', $error, 0, 'error');
}
$attempted_count = SendPress_Option::get('autocron-per-call', 25);
$pro = 0;
if (defined('SENDPRESS_PRO_VERSION')) {
$pro = SENDPRESS_PRO_VERSION;
}
$stuck = SendPress_Data::emails_stuck_in_queue();
$limit = SendPress_Manager::limit_reached();
$emails_per_day = SendPress_Option::get('emails-per-day');
$emails_per_hour = SendPress_Option::get('emails-per-hour');
$hourly_emails = SendPress_Data::emails_sent_in_queue("hour");
$emails_so_far = SendPress_Data::emails_sent_in_queue("day");
$limits = array('autocron' => $attempted_count, 'dl' => $emails_per_day, 'hl' => $emails_per_hour, 'ds' => $emails_so_far, 'hs' => $hourly_emails);
$time_end = microtime(true);
$time = $time_end - $time_start;
echo json_encode(array("error" => $error, "background" => $bg, "weekly" => $bg_weekly, "queue" => $count, "stuck" => $stuck, "version" => SENDPRESS_VERSION, "pro" => $pro, "limit" => $limit, 'info' => $limits, 'time' => number_format($time, 3)));
die;
}
}
}
示例8: html
function html()
{
SendPress_Tracking::event('Queue Tab');
if (SPNL()->validate->_isset('cron')) {
SPNL()->fetch_mail_from_queue();
}
//Create an instance of our package class...
$testListTable = new SendPress_Queue_Table();
//Fetch, prepare, sort, and filter our data...
$testListTable->prepare_items();
SendPress_Option::set('no_cron_send', 'false');
SPNL()->cron_start();
$open_info = array("id" => 13, "report" => 10, "view" => "open");
$autocron = SendPress_Option::get('autocron', 'no');
?>
<br>
<div id="taskbar" class="lists-dashboard rounded group">
<div id="button-area">
<?php
$pause_sending = SendPress_Option::get('pause-sending', 'no');
$txt = __('Pause Sending', 'sendpress');
//Stop Sending for now
if ($pause_sending == 'yes') {
$txt = __('Resume Sending', 'sendpress');
}
?>
<div class="btn-group">
<?php
if (SendPress_Option::get('emails-credits') && SendPress_Option::get('sendmethod') === 'Jaiminho_Sender_NetWork' || SendPress_Option::get('sendmethod') != 'Jaiminho_Sender_NetWork') {
SendPress_Option::set('pause-sending', 'no');
?>
<a class="btn btn-large btn-default " href="<?php
echo SendPress_Admin::link('Queue');
?>
&action=pause-queue" ><i class="icon-repeat icon-white "></i> <?php
echo $txt;
?>
</a>
<a id="send-now" class="btn btn-primary btn-large " data-toggle="modal" href="#sendpress-sending" ><i class="icon-white icon-refresh"></i> <?php
_e('Send Emails Now', 'sendpress');
?>
</a>
</div>
</div>
<?php
} else {
SendPress_Option::set('pause-sending', 'yes');
}
$emails_per_day = SendPress_Option::get('emails-per-day');
if ($emails_per_day == 0) {
$emails_per_day = __('Unlimited', 'sendpress');
}
$emails_per_hour = SendPress_Option::get('emails-per-hour');
$hourly_emails = SendPress_Data::emails_sent_in_queue("hour");
$emails_so_far = SendPress_Data::emails_sent_in_queue("day");
$credits = SendPress_Option::get('emails-credits');
//print_r(SendPress_Data::emails_stuck_in_queue());
global $wpdb;
$table = SendPress_Data::queue_table();
$date = getdate();
// Maurilio TODO: fazer com os créditos sejam contados a partir da 00:00:00 do primeiro dia do mês atual
$hour_ago = strtotime('-' . $date["mday"] . ' day');
$time = date('Y-m-d H:i:s', $hour_ago);
$query = $wpdb->prepare("SELECT COUNT(*) FROM {$table} where last_attempt > %s and success = %d", $time, 1);
$credits_so_far = $wpdb->get_var($query);
$result_credits = $credits - $credits_so_far;
if ($credits <= 0) {
echo "<p class='alert alert-danger' style='width:70%;'>" . __("Vixe! Você não tem créditos. Para enviar emails em sua fila ou enviar novos emails, você precisa obter mais créditos.", "jaiminho") . "</p>";
} else {
?>
<h2><?php
echo $credits ? __('Você tem', 'jaiminho') : "";
?>
<strong><?php
echo $result_credits ? $result_credits : "";
?>
</strong> <?php
echo $credits ? __('créditos', 'jaiminho') : "";
?>
.
</h2>
<?php
}
?>
<h2><strong><?php
echo $emails_so_far;
?>
</strong> <?php
_e('of a possible', 'sendpress');
?>
<strong><?php
echo $emails_per_day;
?>
</strong> <?php
_e('emails sent in the last 24 hours', 'sendpress');
?>
//.........这里部分代码省略.........