本文整理汇总了PHP中MS_Model_Member::get_admin_user_emails方法的典型用法代码示例。如果您正苦于以下问题:PHP MS_Model_Member::get_admin_user_emails方法的具体用法?PHP MS_Model_Member::get_admin_user_emails怎么用?PHP MS_Model_Member::get_admin_user_emails使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MS_Model_Member
的用法示例。
在下文中一共展示了MS_Model_Member::get_admin_user_emails方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: get_fields
/**
* Prepare the fields that are displayed in the form.
*
* @since 1.0.1.0
* @return array
*/
protected function get_fields()
{
$comm = $this->data['comm'];
$membership = false;
$membership_id = 0;
if (isset($this->data['membership'])) {
$membership = $this->data['membership'];
if ($membership instanceof MS_Model_Membership) {
$membership_id = $membership->id;
} else {
$membership = false;
}
}
lib2()->array->equip($comm, 'type', 'enabled', 'period', 'subject', 'description', 'cc_enabled', 'cc_email');
$action = MS_Controller_Communication::AJAX_ACTION_UPDATE_COMM;
$nonce = wp_create_nonce($action);
$comm_titles = MS_Model_Communication::get_communication_type_titles($membership);
$key_active = __('Send Email', MS_TEXT_DOMAIN);
$key_inactive = __('No Email', MS_TEXT_DOMAIN);
$key_skip = __('Use default template', MS_TEXT_DOMAIN);
$titles = array($key_active => array(), $key_inactive => array(), $key_skip => array());
foreach ($comm_titles as $type => $title) {
$tmp_comm = MS_Model_Communication::get_communication($type, $membership, true);
if ($membership && !$tmp_comm->override) {
$titles[$key_skip][$type] = $title;
} elseif ($tmp_comm->enabled) {
$titles[$key_active][$type] = $title;
} else {
$titles[$key_inactive][$type] = $title;
}
}
$fields = array('comm_type' => array('id' => 'comm_type', 'type' => MS_Helper_Html::INPUT_TYPE_SELECT, 'value' => $comm->type, 'field_options' => $titles), 'switch_comm_type' => array('id' => 'switch_comm_type', 'type' => MS_Helper_Html::INPUT_TYPE_BUTTON, 'value' => __('Load Template', MS_TEXT_DOMAIN)), 'override' => array('id' => 'override', 'type' => MS_Helper_Html::INPUT_TYPE_RADIO_SLIDER, 'value' => $comm->override, 'before' => __('Use default template', MS_TEXT_DOMAIN), 'after' => __('Define custom template', MS_TEXT_DOMAIN), 'wrapper_class' => 'ms-block ms-tcenter', 'class' => 'override-slider', 'ajax_data' => array('type' => $comm->type, 'field' => 'override', 'action' => $action, '_wpnonce' => $nonce, 'membership_id' => $membership_id)), 'membership_id' => array('id' => 'membership_id', 'type' => MS_Helper_Html::INPUT_TYPE_HIDDEN, 'value' => $membership_id), 'type' => array('id' => 'type', 'type' => MS_Helper_Html::INPUT_TYPE_HIDDEN, 'value' => $comm->type), 'enabled' => array('id' => 'enabled', 'type' => MS_Helper_Html::INPUT_TYPE_RADIO_SLIDER, 'value' => $comm->enabled, 'class' => 'state-slider', 'before' => ' <i class="wpmui-fa wpmui-fa-ban"></i>', 'after' => '<i class="wpmui-fa wpmui-fa-envelope"></i> ', 'ajax_data' => array('type' => $comm->type, 'field' => 'enabled', 'action' => $action, '_wpnonce' => $nonce, 'membership_id' => $membership_id)), 'period_unit' => array('id' => 'period_unit', 'type' => MS_Helper_Html::INPUT_TYPE_TEXT, 'title' => __('Period after/before', MS_TEXT_DOMAIN), 'value' => $comm->period['period_unit']), 'period_type' => array('id' => 'period_type', 'type' => MS_Helper_Html::INPUT_TYPE_SELECT, 'value' => $comm->period['period_type'], 'field_options' => MS_Helper_Period::get_period_types('plural')), 'subject' => array('id' => 'subject', 'type' => MS_Helper_Html::INPUT_TYPE_TEXT, 'title' => apply_filters('ms_translation_flag', __('Message Subject', MS_TEXT_DOMAIN), 'communication-subject'), 'value' => $comm->subject, 'class' => 'ms-comm-subject widefat'), 'email_body' => array('id' => 'email_body', 'type' => MS_Helper_Html::INPUT_TYPE_WP_EDITOR, 'title' => apply_filters('ms_translation_flag', '', 'communication-body'), 'value' => $comm->description, 'field_options' => array('media_buttons' => false, 'editor_class' => 'wpmui-ajax-update')), 'cc_enabled' => array('id' => 'cc_enabled', 'type' => MS_Helper_Html::INPUT_TYPE_CHECKBOX, 'title' => __('Send copy to Administrator', MS_TEXT_DOMAIN), 'value' => $comm->cc_enabled, 'class' => 'ms-inline-block'), 'cc_email' => array('id' => 'cc_email', 'type' => MS_Helper_Html::INPUT_TYPE_SELECT, 'value' => $comm->cc_email, 'field_options' => MS_Model_Member::get_admin_user_emails()), 'save_email' => array('id' => 'save_email', 'value' => __('Save Changes', MS_TEXT_DOMAIN), 'type' => MS_Helper_Html::INPUT_TYPE_SUBMIT), 'action' => array('id' => 'action', 'type' => MS_Helper_Html::INPUT_TYPE_HIDDEN, 'value' => 'save_comm'), 'nonce' => array('id' => '_wpnonce', 'type' => MS_Helper_Html::INPUT_TYPE_HIDDEN, 'value' => wp_create_nonce('save_comm')), 'load_action' => array('id' => 'load_action', 'name' => 'action', 'type' => MS_Helper_Html::INPUT_TYPE_HIDDEN, 'value' => 'load_action'), 'load_nonce' => array('id' => '_wpnonce1', 'name' => '_wpnonce', 'type' => MS_Helper_Html::INPUT_TYPE_HIDDEN, 'value' => wp_create_nonce('load_action')));
if (!$membership instanceof MS_Model_Membership) {
unset($fields['override']);
unset($fields['membership_id']);
}
return apply_filters('ms_view_settings_prepare_email_fields', $fields);
}
示例2: send_message
/**
* Send email message.
*
* Delete history of sent messages after max is reached.
*
* @since 1.0.0
*
* @param mixed $reference A reference to identify the member/subscription.
* @return bool True if successfully sent email.
*/
public function send_message($reference)
{
$user_id = 0;
$subscription = null;
$member = null;
if ($reference instanceof MS_Model_Relationship) {
$user_id = $reference->user_id;
$subscription = $reference;
$member = $subscription->get_member();
} elseif ($reference instanceof MS_Model_Member) {
$user_id = $reference->id;
$member = $reference;
$subscription = null;
}
/**
* Documented in process_queue()
*
* @since 1.0.1.0
*/
if (MS_Plugin::get_modifier('MS_STOP_EMAILS')) {
do_action('lib2_debug_log', sprintf('Following Email was not sent: "%s" to user "%s".', $this->type, $user_id));
return false;
}
do_action('ms_model_communication_send_message_before', $member, $subscription, $this);
$sent = false;
if ($this->enabled) {
if (!is_email($member->email)) {
do_action('lib2_debug_log', sprintf('Invalid user email. User_id: %1$s, email: %2$s', $user_id, $member->email));
return false;
}
$comm_vars = $this->get_comm_vars($subscription, $member);
// Replace the email variables.
$message = str_replace(array_keys($comm_vars), array_values($comm_vars), stripslashes($this->message));
$subject = str_replace(array_keys($comm_vars), array_values($comm_vars), stripslashes($this->subject));
$html_message = wpautop($message);
$text_message = strip_tags(preg_replace('/\\<a .*?href="(.*?)".*?\\>.*?\\<\\/a\\>/is', '$0 [$1]', $message));
$subject = strip_tags(preg_replace('/\\<a .*?href="(.*?)".*?\\>.*?\\<\\/a\\>/is', '$0 [$1]', $subject));
$message = $text_message;
if ('text/html' == $this->get_mail_content_type()) {
$this->add_filter('wp_mail_content_type', 'get_mail_content_type');
$message = $html_message;
}
$recipients = array($member->email);
if ($this->cc_enabled) {
$recipients[] = $this->cc_email;
}
$admin_emails = MS_Model_Member::get_admin_user_emails();
$headers = '';
if (!empty($admin_emails[0])) {
$headers = array(sprintf('From: %s <%s> ', get_option('blogname'), $admin_emails[0]));
}
$recipients = apply_filters('ms_model_communication_send_message_recipients', $recipients, $this, $subscription);
$html_message = apply_filters('ms_model_communication_send_message_html_message', $html_message, $this, $subscription);
$text_message = apply_filters('ms_model_communication_send_message_text_message', $text_message, $this, $subscription);
$subject = apply_filters('ms_model_communication_send_message_subject', $subject, $this, $subscription);
$headers = apply_filters('ms_model_communication_send_message_headers', $headers, $this, $subscription);
/*
* Send the mail.
* wp_mail will not throw an error, so no error-suppression/handling
* is required here. On error the function response is FALSE.
*/
$sent = wp_mail($recipients, $subject, $message, $headers);
// Log the outgoing email.
do_action('lib2_debug_log', sprintf('Sent email [%s] to <%s>: %s', $this->type, implode('>, <', $recipients), $sent ? 'OK' : 'ERR'));
/*
// -- Debugging code --
MS_Helper_Debug::log(
sprintf(
"Variables:\n%s",
print_r( $comm_vars, true )
)
);
//*/
if ('text/html' == $this->get_mail_content_type()) {
$this->remove_filter('wp_mail_content_type', 'get_mail_content_type');
}
}
do_action('ms_model_communication_send_message', $member, $subscription, $this);
return $sent;
}