• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP mc4wp_get_api函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中mc4wp_get_api函数的典型用法代码示例。如果您正苦于以下问题:PHP mc4wp_get_api函数的具体用法?PHP mc4wp_get_api怎么用?PHP mc4wp_get_api使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了mc4wp_get_api函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: process

 /**
  * @return bool
  */
 public function process()
 {
     $api = mc4wp_get_api();
     do_action('mc4wp_before_subscribe', $this->data['EMAIL'], $this->data, 0);
     $result = false;
     $email_type = $this->get_email_type();
     // loop through selected lists
     foreach ($this->list_fields_map as $list_id => $list_field_data) {
         // allow plugins to alter merge vars for each individual list
         $list_merge_vars = $this->get_list_merge_vars($list_id, $list_field_data);
         // send a subscribe request to MailChimp for each list
         $result = $api->subscribe($list_id, $this->data['EMAIL'], $list_merge_vars, $email_type, $this->form->settings['double_optin'], $this->form->settings['update_existing'], $this->form->settings['replace_interests'], $this->form->settings['send_welcome']);
         do_action('mc4wp_subscribe', $this->data['EMAIL'], $list_id, $list_merge_vars, $result, 'form', 'form', 0);
     }
     do_action('mc4wp_after_subscribe', $this->data['EMAIL'], $this->data, 0, $result);
     // did we succeed in subscribing with the parsed data?
     if (!$result) {
         $this->message_type = $api->get_error_code() === 214 ? 'already_subscribed' : 'error';
         $this->mailchimp_error = $api->get_error_message();
     } else {
         $this->message_type = 'subscribed';
         // store user email in a cookie
         MC4WP_Tools::remember_email($this->data['EMAIL']);
     }
     $this->success = $result;
     return $result;
 }
开发者ID:kd5ytx,项目名称:Empirical-Wordpress,代码行数:30,代码来源:class-subscribe-request.php


示例2: process

 /**
  * @return bool
  */
 public function process()
 {
     $api = mc4wp_get_api();
     do_action('mc4wp_before_subscribe', $this->user_data['EMAIL'], $this->user_data, 0);
     $result = false;
     $email_type = $this->get_email_type();
     // loop through selected lists
     foreach ($this->map->list_fields as $list_id => $list_field_data) {
         // allow plugins to alter merge vars for each individual list
         $list_merge_vars = $this->get_list_merge_vars($list_id, $list_field_data);
         // send a subscribe request to MailChimp for each list
         $result = $api->subscribe($list_id, $this->user_data['EMAIL'], $list_merge_vars, $email_type, $this->form->settings['double_optin'], $this->form->settings['update_existing'], $this->form->settings['replace_interests'], $this->form->settings['send_welcome']);
         do_action('mc4wp_subscribe', $this->user_data['EMAIL'], $list_id, $list_merge_vars, $result, 'form', 'form', $this->form->ID);
     }
     do_action('mc4wp_after_subscribe', $this->user_data['EMAIL'], $this->user_data, 0, $result);
     // did we succeed in subscribing with the parsed data?
     if (!$result) {
         $this->message_type = $api->get_error_code() === 214 ? 'already_subscribed' : 'error';
         $this->mailchimp_error = $api->get_error_message();
     } else {
         $this->message_type = 'subscribed';
         // store user email in a cookie
         $this->set_email_cookie($this->user_data['EMAIL']);
         // send an email copy if that is desired
         // todo: move this to hook callback
         if ($this->form->settings['send_email_copy']) {
             $email = new MC4WP_Email_Notification($this->form->settings['email_copy_receiver'], $this->form, $this);
             $email->send();
         }
     }
     $this->success = $result;
     return $result;
 }
开发者ID:Ore4444,项目名称:old.backfeed.cc,代码行数:36,代码来源:class-subscribe-request.php


示例3: mc4wp_get_subscriber_count

/**
* Returns number of subscribers on given lists.
*
* @param array $list_ids of list id's.
* @return int Sum of subscribers for given lists.
*/
function mc4wp_get_subscriber_count($list_ids)
{
    $list_counts = get_transient('mc4wp_list_counts');
    if (false === $list_counts) {
        // make api call
        $api = mc4wp_get_api();
        $lists = $api->get_lists();
        $list_counts = array();
        if ($lists) {
            foreach ($lists as $list) {
                $list_counts["{$list->id}"] = $list->stats->member_count;
            }
            $transient_lifetime = apply_filters('mc4wp_lists_count_cache_time', 1200);
            // 20 mins by default
            set_transient('mc4wp_list_counts', $list_counts, $transient_lifetime);
            set_transient('mc4wp_list_counts_fallback', $list_counts, 3600 * 24);
            // 1 day
        } else {
            // use fallback transient
            $list_counts = get_transient('mc4wp_list_counts_fallback');
            if (!$list_counts) {
                return 0;
            }
        }
    }
    // start calculating subscribers count for all list combined
    $count = 0;
    foreach ($list_ids as $id) {
        $count += isset($list_counts[$id]) ? $list_counts[$id] : 0;
    }
    return apply_filters('mc4wp_subscriber_count', $count);
}
开发者ID:sydneyDAD,项目名称:cardguys.com,代码行数:38,代码来源:template.php


示例4: CF7_pre_send

function CF7_pre_send($cf7)
{
    if (isset($_POST['is_subcribe']) && count($_POST['is_subcribe']) > 0) {
        $option = mc4wp_get_options('form');
        $api = mc4wp_get_api();
        foreach ($option['lists'] as $v) {
            $api->subscribe($v, $cf7->mail['recipient']);
        }
    }
}
开发者ID:IdDevGroup,项目名称:Identifid-Website,代码行数:10,代码来源:functions.php


示例5: process

 /**
  * @return bool
  */
 public function process()
 {
     $api = mc4wp_get_api();
     $result = false;
     foreach ($this->get_lists() as $list_id) {
         $result = $api->unsubscribe($list_id, $this->user_data['EMAIL']);
     }
     if (!$result) {
         $this->mailchimp_error = $api->get_error_message();
         $this->message_type = in_array($api->get_error_code(), array(215, 232)) ? 'not_subscribed' : 'error';
     } else {
         $this->message_type = 'unsubscribed';
     }
     $this->success = $result;
     return $result;
 }
开发者ID:olechka1505,项目名称:hungrylemur,代码行数:19,代码来源:class-unsubscribe-request.php


示例6: subscribe

    /**
     * Makes a subscription request
     *
     * @param string $email
     * @param array $merge_vars
     * @param int $related_object_ID
     * @return string|boolean
     */
    protected function subscribe($email, array $merge_vars = array(), $type = '', $related_object_ID = 0)
    {
        $type = '' !== $type ? $type : $this->type;
        $api = mc4wp_get_api();
        $opts = $this->get_options();
        $lists = $this->get_lists();
        if (empty($lists)) {
            // show helpful error message to admins, but only if not using ajax
            if ($this->show_error_messages()) {
                wp_die('
					<h3>MailChimp for WP - Error</h3>
					<p>Please select a list to subscribe to in the <a href="' . admin_url('admin.php?page=mailchimp-for-wp-checkbox-settings') . '">checkbox settings</a>.</p>
					<p style="font-style:italic; font-size:12px;">This message is only visible to administrators for debugging purposes.</p>
					', 'Error - MailChimp for WP', array('back_link' => true));
            }
            return 'no_lists_selected';
        }
        // maybe guess first and last name
        if (isset($merge_vars['NAME']) && !isset($merge_vars['FNAME']) && !isset($merge_vars['LNAME'])) {
            $strpos = strpos($merge_vars['NAME'], ' ');
            if ($strpos !== false) {
                $merge_vars['FNAME'] = substr($merge_vars['NAME'], 0, $strpos);
                $merge_vars['LNAME'] = substr($merge_vars['NAME'], $strpos);
            } else {
                $merge_vars['FNAME'] = $merge_vars['NAME'];
            }
        }
        // set ip address
        if (!isset($merge_vars['OPTIN_IP']) && isset($_SERVER['REMOTE_ADDR'])) {
            $merge_vars['OPTIN_IP'] = sanitize_text_field($_SERVER['REMOTE_ADDR']);
        }
        $result = false;
        /**
         * @filter `mc4wp_merge_vars`
         * @expects array
         * @param array $merge_vars
         * @param string $type
         *
         * Use this to filter the final merge vars before the request is sent to MailChimp
         */
        $merge_vars = apply_filters('mc4wp_merge_vars', $merge_vars, $type);
        /**
         * @filter `mc4wp_merge_vars`
         * @expects string
         * @param string $email_type
         *
         * Use this to change the email type this users should receive
         */
        $email_type = apply_filters('mc4wp_email_type', 'html');
        /**
         * @action `mc4wp_before_subscribe`
         * @param string $email
         * @param array $merge_vars
         *
         * Runs before the request is sent to MailChimp
         */
        do_action('mc4wp_before_subscribe', $email, $merge_vars);
        foreach ($lists as $list_id) {
            $result = $api->subscribe($list_id, $email, $merge_vars, $email_type, $opts['double_optin'], $opts['update_existing'], true, $opts['send_welcome']);
            do_action('mc4wp_subscribe', $email, $list_id, $merge_vars, $result, 'checkbox', $type, $related_object_ID);
        }
        /**
         * @action `mc4wp_after_subscribe`
         * @param string $email
         * @param array $merge_vars
         * @param boolean $result
         *
         * Runs after the request is sent to MailChimp
         */
        do_action('mc4wp_after_subscribe', $email, $merge_vars, $result);
        // if result failed, show error message (only to admins for non-AJAX)
        if ($result !== true && $api->has_error() && $this->show_error_messages()) {
            wp_die('<h3>MailChimp for WP - Error</h3>
					<p>The MailChimp server returned the following error message as a response to our sign-up request:</p>
					<pre>' . $api->get_error_message() . "</pre>\n\t\t\t\t\t<p>This is the data that was sent to MailChimp: </p>\n\t\t\t\t\t<strong>Email</strong>\n\t\t\t\t\t<pre>{$email}</pre>\n\t\t\t\t\t<strong>Merge variables</strong>\n\t\t\t\t\t<pre>" . print_r($merge_vars, true) . '</pre>
					<p><small>This message is only visible to administrators for debugging purposes.</small></p>
					', 'Error - MailChimp for WP', array('back_link' => true));
        }
        return $result;
    }
开发者ID:Infernosaint,项目名称:WPSetupTest2,代码行数:88,代码来源:class-integration.php


示例7: subscribe

 /**
  * Makes a subscription request
  *
  * @param string $email
  * @param array $merge_vars
  * @param string $type
  * @param int $related_object_id
  * @return string|boolean
  */
 protected function subscribe($email, array $merge_vars = array(), $type = '', $related_object_id = 0)
 {
     $type = '' !== $type ? $type : $this->type;
     $api = mc4wp_get_api();
     $opts = $this->get_options();
     $lists = $this->get_lists();
     if (empty($lists)) {
         // show helpful error message to admins, but only if not using ajax
         if ($this->show_error_messages()) {
             wp_die('<h3>' . __('MailChimp for WordPress - Error', 'mailchimp-for-wp') . '</h3>' . '<p>' . sprintf(__('Please select a list to subscribe to in the <a href="%s">checkbox settings</a>.', 'mailchimp-for-wp'), admin_url('admin.php?page=mailchimp-for-wp-checkbox-settings')) . '</p>' . '<p style="font-style:italic; font-size:12px;">' . __('This message is only visible to administrators for debugging purposes.', 'mailchimp-for-wp') . '</p>', __('MailChimp for WordPress - Error', 'mailchimp-for-wp'), array('back_link' => true));
         }
         return 'no_lists_selected';
     }
     $merge_vars = MC4WP_Tools::guess_merge_vars($merge_vars);
     // set ip address
     if (!isset($merge_vars['OPTIN_IP'])) {
         $merge_vars['OPTIN_IP'] = MC4WP_Tools::get_client_ip();
     }
     $result = false;
     /**
      * @filter `mc4wp_merge_vars`
      * @expects array
      * @param array $merge_vars
      * @param string $type
      *
      * Use this to filter the final merge vars before the request is sent to MailChimp
      */
     $merge_vars = apply_filters('mc4wp_merge_vars', $merge_vars, $type);
     /**
      * @filter `mc4wp_merge_vars`
      * @expects string
      * @param string $email_type
      *
      * Use this to change the email type this users should receive
      */
     $email_type = apply_filters('mc4wp_email_type', 'html');
     /**
      * @action `mc4wp_before_subscribe`
      * @param string $email
      * @param array $merge_vars
      *
      * Runs before the request is sent to MailChimp
      */
     do_action('mc4wp_before_subscribe', $email, $merge_vars);
     foreach ($lists as $list_id) {
         $result = $api->subscribe($list_id, $email, $merge_vars, $email_type, $opts['double_optin'], $opts['update_existing'], true, $opts['send_welcome']);
         do_action('mc4wp_subscribe', $email, $list_id, $merge_vars, $result, 'checkbox', $type, $related_object_id);
     }
     /**
      * @action `mc4wp_after_subscribe`
      * @param string $email
      * @param array $merge_vars
      * @param boolean $result
      *
      * Runs after the request is sent to MailChimp
      */
     do_action('mc4wp_after_subscribe', $email, $merge_vars, $result);
     // if result failed, show error message (only to admins for non-AJAX)
     if ($result !== true && $api->has_error()) {
         // log error
         error_log(sprintf('MailChimp for WordPres (%s): %s', date('Y-m-d H:i:s'), $this->type, $api->get_error_message()));
         if ($this->show_error_messages()) {
             wp_die('<h3>' . __('MailChimp for WordPress - Error', 'mailchimp-for-wp') . '</h3>' . '<p>' . __('The MailChimp server returned the following error message as a response to our sign-up request:', 'mailchimp-for-wp') . '</p>' . '<pre>' . $api->get_error_message() . '</pre>' . '<p>' . __('This is the data that was sent to MailChimp:', 'mailchimp-for-wp') . '</p>' . '<strong>' . __('Email address:', 'mailchimp-for-wp') . '</strong>' . '<pre>' . esc_html($email) . '</pre>' . '<strong>' . __('Merge variables:', 'mailchimp-for-wp') . '</strong>' . '<pre>' . esc_html(print_r($merge_vars, true)) . '</pre>' . '<p style="font-style:italic; font-size:12px;">' . __('This message is only visible to administrators for debugging purposes.', 'mailchimp-for-wp') . '</p>', __('MailChimp for WordPress - Error', 'mailchimp-for-wp'), array('back_link' => true));
         }
     }
     return $result;
 }
开发者ID:alons182,项目名称:sonnsolar,代码行数:76,代码来源:class-integration.php


示例8: subscribe

 /**
  * Subscribes the given email and additional list fields
  *
  * @param array $lists_data
  * @return bool
  */
 private function subscribe($lists_data)
 {
     $api = mc4wp_get_api();
     do_action('mc4wp_before_subscribe', $this->data['EMAIL'], $this->data, 0);
     $result = false;
     $email_type = $this->get_email_type();
     // loop through selected lists
     foreach ($lists_data as $list_id => $list_field_data) {
         // allow plugins to alter merge vars for each individual list
         $list_merge_vars = $this->get_list_merge_vars($list_id, $list_field_data);
         // send a subscribe request to MailChimp for each list
         $result = $api->subscribe($list_id, $this->data['EMAIL'], $list_merge_vars, $email_type, $this->form_options['double_optin'], $this->form_options['update_existing'], $this->form_options['replace_interests'], $this->form_options['send_welcome']);
         do_action('mc4wp_subscribe', $this->data['EMAIL'], $list_id, $list_merge_vars, $result, 'form', 'form', 0);
     }
     do_action('mc4wp_after_subscribe', $this->data['EMAIL'], $this->data, 0, $result);
     if ($result !== true) {
         // subscribe request failed, store error.
         $this->success = false;
         $this->error_code = $result;
         $this->mailchimp_error = $api->get_error_message();
         return false;
     }
     // subscription succeeded
     // store user email in a cookie
     $this->set_email_cookie($this->data['EMAIL']);
     // Store success result
     $this->success = true;
     return true;
 }
开发者ID:jimmitjoo,项目名称:mnh,代码行数:35,代码来源:class-form-request.php


示例9: get_mailchimp_lists

 /**
  * Get MailChimp lists
  * Try cache first, then try API, then try fallback cache.
  */
 private function get_mailchimp_lists()
 {
     $cached_lists = get_transient('mc4wp_mailchimp_lists');
     $refresh_cache = isset($_POST['renew-cached-data']);
     if ($refresh_cache || !$cached_lists || empty($cached_lists)) {
         // make api request for lists
         $api = mc4wp_get_api();
         $lists = array();
         $lists_data = $api->get_lists();
         if ($lists_data) {
             $lists = array();
             foreach ($lists_data as $list) {
                 $lists["{$list->id}"] = (object) array('id' => $list->id, 'name' => $list->name, 'subscriber_count' => $list->stats->member_count, 'merge_vars' => array(), 'interest_groupings' => array());
                 // get interest groupings
                 $groupings_data = $api->get_list_groupings($list->id);
                 if ($groupings_data) {
                     $lists["{$list->id}"]->interest_groupings = array_map(array($this, 'strip_unnecessary_grouping_properties'), $groupings_data);
                 }
             }
             // get merge vars for all lists at once
             $merge_vars_data = $api->get_lists_with_merge_vars(array_keys($lists));
             if ($merge_vars_data) {
                 foreach ($merge_vars_data as $list) {
                     // add merge vars to list
                     $lists["{$list->id}"]->merge_vars = array_map(array($this, 'strip_unnecessary_merge_vars_properties'), $list->merge_vars);
                 }
             }
             // cache renewal triggered manually?
             if (isset($_POST['renew-cached-data'])) {
                 if ($lists) {
                     add_settings_error("mc4wp", "cache-renewed", 'Renewed MailChimp cache.', 'updated');
                 } else {
                     add_settings_error("mc4wp", "cache-renew-failed", 'Failed to renew MailChimp cache - please try again later.');
                 }
             }
             // store lists in transients
             set_transient('mc4wp_mailchimp_lists', $lists, 24 * 3600);
             // 1 day
             set_transient('mc4wp_mailchimp_lists_fallback', $lists, 1209600);
             // 2 weeks
             return $lists;
         } else {
             // api request failed, get fallback data (with longer lifetime)
             $cached_lists = get_transient('mc4wp_mailchimp_lists_fallback');
             if (!$cached_lists) {
                 return array();
             }
         }
     }
     return $cached_lists;
 }
开发者ID:donwea,项目名称:nhap.org,代码行数:55,代码来源:class-admin.php


示例10: process

 /**
  * Process the request
  *
  * @return bool
  */
 public function process()
 {
     $api = mc4wp_get_api();
     if ($this->type === 'subscribe') {
         $success = $api->subscribe($this->list_id, $this->email, $this->merge_vars, $this->config['email_type'], $this->config['double_optin'], $this->config['update_existing'], $this->config['replace_interests'], $this->config['send_welcome']);
     } else {
         $success = $api->unsubscribe($this->list_id, $this->email, $this->config['send_goodbye'], $this->config['send_notification'], $this->config['delete_member']);
     }
     if ($success) {
         // store user email in a cookie
         // todo: decouple this
         MC4WP_Tools::remember_email($this->email);
     }
     // convert API response to our own response object
     $response = new MC4WP_API_Response($this->type, $success, $api->get_last_response());
     $this->response = $response;
     /**
      * @api
      * @action 'mc4wp_request_processed'
      *
      * @param Request
      * @param Response
      */
     do_action('mc4wp_request_processed', $this, $response);
     return $response;
 }
开发者ID:hchouhan,项目名称:mailchimp-for-wordpress,代码行数:31,代码来源:Request.php


示例11: subscribe

 /**
  * Makes a subscription request
  *
  * @param string $email
  * @param array  $merge_vars
  * @param string $type
  * @param null   $related_object_id
  *
  * @return bool
  */
 protected function subscribe($email, array $merge_vars = array(), $type = '', $related_object_id = null)
 {
     $type = '' !== $type ? $type : $this->type;
     $api = mc4wp_get_api();
     $opts = $this->get_options();
     $lists = $this->get_lists();
     if (empty($lists)) {
         if ($this->show_error_messages()) {
             wp_die('<h3>' . __('MailChimp for WordPress - Error', 'mailchimp-for-wp') . '</h3>' . '<p>' . sprintf(__('Please select a list to subscribe to in the <a href="%s">checkbox settings</a>.', 'mailchimp-for-wp'), admin_url('admin.php?page=mailchimp-for-wp-checkbox-settings')) . '</p>' . '<p style="font-style:italic; font-size:12px;">' . __('This message is only visible to administrators for debugging purposes.', 'mailchimp-for-wp') . '</p>', __('MailChimp for WordPress - Error', 'mailchimp-for-wp'), array('back_link' => true));
         }
         return 'no_lists_selected';
     }
     // maybe guess first and last name
     if (isset($merge_vars['NAME']) && !isset($merge_vars['FNAME']) && !isset($merge_vars['LNAME'])) {
         $strpos = strpos($merge_vars['NAME'], ' ');
         if ($strpos !== false) {
             $merge_vars['FNAME'] = substr($merge_vars['NAME'], 0, $strpos);
             $merge_vars['LNAME'] = substr($merge_vars['NAME'], $strpos);
         } else {
             $merge_vars['FNAME'] = $merge_vars['NAME'];
         }
     }
     // set ip address
     if (!isset($merge_vars['OPTIN_IP']) && isset($_SERVER['REMOTE_ADDR'])) {
         $merge_vars['OPTIN_IP'] = sanitize_text_field($_SERVER['REMOTE_ADDR']);
     }
     $result = false;
     /**
      * @filter `mc4wp_merge_vars`
      * @expects array
      * @param array $merge_vars
      * @param string $type
      *
      * Use this to filter the final merge vars before the request is sent to MailChimp
      */
     $merge_vars = apply_filters('mc4wp_merge_vars', $merge_vars, $type);
     /**
      * @filter `mc4wp_merge_vars`
      * @expects string
      * @param string $email_type
      *
      * Use this to change the email type this users should receive
      */
     $email_type = apply_filters('mc4wp_email_type', 'html');
     /**
      * @action `mc4wp_before_subscribe`
      * @param string $email
      * @param array $merge_vars
      *
      * Runs before the request is sent to MailChimp
      */
     do_action('mc4wp_before_subscribe', $email, $merge_vars);
     foreach ($lists as $list_id) {
         $result = $api->subscribe($list_id, $email, $merge_vars, $email_type, $opts['double_optin'], false, true, $opts['send_welcome']);
         do_action('mc4wp_subscribe', $email, $list_id, $merge_vars, $result, 'checkbox', $type, $related_object_id);
     }
     /**
      * @action `mc4wp_after_subscribe`
      * @param string $email
      * @param array $merge_vars
      * @param boolean $result
      *
      * Runs after the request is sent to MailChimp
      */
     do_action('mc4wp_after_subscribe', $email, $merge_vars, $result);
     // check if result succeeded, show debug message to administrators (only in NON-AJAX requests)
     if ($result !== true && $api->has_error() && $this->show_error_messages()) {
         wp_die('<h3>' . __('MailChimp for WordPress - Error', 'mailchimp-for-wp') . '</h3>' . '<p>' . __('The MailChimp server returned the following error message as a response to our sign-up request:', 'mailchimp-for-wp') . '</p>' . '<pre>' . $api->get_error_message() . '</pre>' . '<p>' . __('This is the data that was sent to MailChimp:', 'mailchimp-for-wp') . '</p>' . '<strong>' . __('Email address:', 'mailchimp-for-wp') . '</strong>' . '<pre>' . esc_html($email) . '</pre>' . '<strong>' . __('Merge variables:', 'mailchimp-for-wp') . '</strong>' . '<pre>' . esc_html(print_r($merge_vars, true)) . '</pre>' . '<p style="font-style:italic; font-size:12px;">' . __('This message is only visible to administrators for debugging purposes.', 'mailchimp-for-wp') . '</p>', __('MailChimp for WordPress - Error', 'mailchimp-for-wp'), array('back_link' => true));
     }
     return $result;
 }
开发者ID:jimmitjoo,项目名称:mnh,代码行数:81,代码来源:class-integration.php


示例12: get_response_html

 /**
  * Returns the HTML for success or error messages
  *
  * @return string
  */
 public function get_response_html()
 {
     // get all form messages
     $messages = $this->get_form_messages();
     // retrieve correct message
     $type = $this->is_successful() ? 'success' : $this->get_error_code();
     $message = isset($messages[$type]) ? $messages[$type] : $messages['error'];
     /**
      * @filter mc4wp_form_error_message
      * @deprecated 2.0.5
      * @use mc4wp_form_messages
      *
      * Used to alter the error message, don't use. Use `mc4wp_form_messages` instead.
      */
     $message['text'] = apply_filters('mc4wp_form_error_message', $message['text'], $this->get_error_code());
     $html = '<div class="mc4wp-alert mc4wp-' . $message['type'] . '">' . $message['text'] . '</div>';
     // show additional MailChimp API errors to administrators
     if (false === $this->is_successful() && current_user_can('manage_options')) {
         // show MailChimp error message (if any) to administrators
         $api = mc4wp_get_api();
         if ($api->has_error()) {
             $html .= '<div class="mc4wp-alert mc4wp-error"><strong>' . __('MailChimp Error:', 'mailchimp-for-wp') . '</strong><br />' . $api->get_error_message() . '</div>';
         }
     }
     return $html;
 }
开发者ID:shubham79,项目名称:Jhintaak,代码行数:31,代码来源:class-form-request.php


示例13: show_api_settings

 /**
  * Show the API settings page
  */
 public function show_api_settings()
 {
     $opts = mc4wp_get_options('general');
     $connected = mc4wp_get_api()->is_connected();
     // cache renewal triggered manually?
     $force_cache_refresh = isset($_POST['mc4wp-renew-cache']) && $_POST['mc4wp-renew-cache'] == 1;
     $mailchimp = new MC4WP_MailChimp();
     $lists = $mailchimp->get_lists($force_cache_refresh);
     if ($force_cache_refresh) {
         if (false === empty($lists)) {
             add_settings_error("mc4wp", "mc4wp-cache-success", __('Renewed MailChimp cache.', 'mailchimp-for-wp'), 'updated');
         } else {
             add_settings_error("mc4wp", "mc4wp-cache-error", __('Failed to renew MailChimp cache - please try again later.', 'mailchimp-for-wp'));
         }
     }
     require MC4WP_LITE_PLUGIN_DIR . 'includes/views/api-settings.php';
 }
开发者ID:shubham79,项目名称:Jhintaak,代码行数:20,代码来源:class-admin.php


示例14: show_general_settings

 /**
  * Show general settings page
  */
 public function show_general_settings()
 {
     $opts = mc4wp_get_options('general');
     $connected = mc4wp_get_api()->is_connected();
     if (!$connected) {
         add_settings_error('mc4wp', 'invalid-api-key', sprintf(__('Please make sure the plugin is connected to MailChimp. <a href="%s">Provide a valid API key.</a>', 'mailchimp-for-wp'), admin_url('?page=mailchimp-for-wp')), 'updated');
     }
     // cache renewal triggered manually?
     $force_cache_refresh = isset($_POST['mc4wp-renew-cache']) && $_POST['mc4wp-renew-cache'] == 1;
     $mailchimp = new MC4WP_MailChimp();
     $lists = $mailchimp->get_lists($force_cache_refresh);
     if ($force_cache_refresh) {
         if (false === empty($lists)) {
             add_settings_error('mc4wp', 'mc4wp-cache-success', __('Renewed MailChimp cache.', 'mailchimp-for-wp'), 'updated');
         } else {
             add_settings_error('mc4wp', 'mc4wp-cache-error', __('Failed to renew MailChimp cache - please try again later.', 'mailchimp-for-wp'));
         }
     }
     require MC4WP_PLUGIN_DIR . 'includes/views/pages/admin-general-settings.php';
 }
开发者ID:ajay786singh,项目名称:emc,代码行数:23,代码来源:class-admin.php


示例15: get_form_message_html

	/**
	 * Returns the HTML for success or error messages
	 *
	 * @return string
	 */
	private function get_form_message_html( $form_id = 0 ) {

		// don't show message if form wasn't submitted
		if( ! is_object( $this->form_request ) ) {
			return '';
		}

		// get all form messages
		$messages = $this->get_form_messages( $form_id );

		// retrieve correct message
		$type = ( $this->form_request->is_successful() ) ? 'success' : $this->form_request->get_error_code();
		$message = ( isset( $messages[ $type ] ) ) ? $messages[ $type ] : $messages['error'];

		/**
		 * @filter mc4wp_form_error_message
		 * @deprecated 2.0.5
		 * @use mc4wp_form_messages
		 *
		 * Used to alter the error message, don't use. Use `mc4wp_form_messages` instead.
		 */
		$message['text'] = apply_filters('mc4wp_form_error_message', $message['text'], $this->form_request->get_error_code() );

		$html = '<div class="mc4wp-alert mc4wp-'. $message['type'].'">' . $message['text'] . '</div>';

		// show additional MailChimp API errors to administrators
		if( false === $this->form_request->is_successful() && current_user_can( 'manage_options' ) ) {
			// show MailChimp error message (if any) to administrators
			$api = mc4wp_get_api();
			if( $api->has_error() ) {
				$html .= '<div class="mc4wp-alert mc4wp-error"><strong>Admin notice:</strong> '. $api->get_error_message() . '</div>';
			}
		}

		return $html;
	}
开发者ID:kevinreilly,项目名称:mendelements.com,代码行数:41,代码来源:class-form-manager.php


示例16: update_subscriber

 /**
  * Update the subscriber uid with the new user data
  *
  * @param int $user_id
  * @return bool
  */
 public function update_subscriber($user_id)
 {
     // get user
     $user = $this->get_user($user_id);
     if (!$user) {
         return false;
     }
     // get subscriber uid
     $subscriber_uid = $this->get_user_subscriber_uid($user);
     if (!$subscriber_uid) {
         return $this->subscribe_user($user_id);
     }
     // check email address
     if ('' === $user->user_email || !is_email($user->user_email)) {
         $this->error = 'Invalid email.';
         return false;
     }
     // check if user should be synced
     if (!$this->should_sync_user($user)) {
         return false;
     }
     $merge_vars = $this->extract_merge_vars_from_user($user);
     $merge_vars['new-email'] = $user->user_email;
     // update subscriber in mailchimp
     $api = mc4wp_get_api();
     $success = $api->update_subscriber($this->list_id, array('leid' => $subscriber_uid), $merge_vars, $this->settings['email_type'], $this->settings['replace_interests']);
     // TODO: Remove check for `get_error_code`, available since MailChimp for WP Lite 2.2.8 and MailChimp for WP Pro 2.6.3. Update dependency check in that case.
     if (!$success) {
         // subscriber leid did not match anything in the list, remove it and re-subscribe.
         if (!method_exists($api, 'get_error_code') || $api->get_error_code() === 232) {
             delete_user_meta($user_id, $this->meta_key);
             return $this->subscribe_user($user_id);
         }
         $this->error = $api->get_error_message();
         $this->log->write_line(sprintf('Could not update user %d. MailChimp returned the following error: %s', $user_id, $this->error));
     }
     return $success;
 }
开发者ID:akshayxhtmljunkies,项目名称:brownglock,代码行数:44,代码来源:ListSynchronizer.php


示例17: subscribe

	/**
	 * Subscribes the given email and additional list fields
	 *
	 * - Guesses FNAME and LNAME, if not set but NAME is.
	 * - Adds OPTIN_IP field
	 * - Validates merge_vars according to selected list(s) requirements
	 * - Checks if a list was selected or given in form
	 *
	 * @param string $email
	 * @param array $merge_vars
	 *
	 * @return bool
	 */
	private function subscribe( $email, $merge_vars = array() ) {

		// Try to guess FNAME and LNAME if they are not given, but NAME is
		if( isset( $merge_vars['NAME'] ) && !isset( $merge_vars['FNAME'] ) && ! isset( $merge_vars['LNAME'] ) ) {

			$strpos = strpos($merge_vars['NAME'], ' ');
			if( $strpos !== false ) {
				$merge_vars['FNAME'] = substr($merge_vars['NAME'], 0, $strpos);
				$merge_vars['LNAME'] = substr($merge_vars['NAME'], $strpos);
			} else {
				$merge_vars['FNAME'] = $merge_vars['NAME'];
			}
		}

		// set ip address
		if( ! isset( $merge_vars['OPTIN_IP'] ) && isset( $_SERVER['REMOTE_ADDR'] ) ) {
			$merge_vars['OPTIN_IP'] = $_SERVER['REMOTE_ADDR'];
		}

		$api = mc4wp_get_api();

		// get lists to subscribe to
		$lists = $this->get_lists();

		if ( empty( $lists ) ) {
			$this->error_code = 'no_lists_selected';
			return false;
		}

		// validate fields according to mailchimp list field types
		$merge_vars = $this->validate_merge_vars( $merge_vars );
		if( false === $merge_vars ) {
			return false;
		}

		do_action( 'mc4wp_before_subscribe', $email, $merge_vars, 0 );

		$result = false;
		$email_type = $this->get_email_type();

		foreach ( $lists as $list_id ) {
			// allow plugins to alter merge vars for each individual list
			$list_merge_vars = apply_filters( 'mc4wp_merge_vars', $merge_vars, 0, $list_id );

			// send a subscribe request to MailChimp for each list
			$result = $api->subscribe( $list_id, $email, $list_merge_vars, $email_type, $this->form_options['double_optin'] );
		}

		do_action( 'mc4wp_after_subscribe', $email, $merge_vars, 0, $result );

		if ( $result !== true ) {
			// subscribe request failed, store error.
			$this->success = false;
			$this->error_code = $result;
			return false;
		}

		// store user email in a cookie
		$this->set_email_cookie( $email );

		// Store success result
		$this->success = true;

		return true;
	}
开发者ID:kevinreilly,项目名称:mendelements.com,代码行数:78,代码来源:class-form-request.php


示例18: show_api_settings

 /**
  * Show the API settings page
  */
 public function show_api_settings()
 {
     $opts = mc4wp_get_options('general');
     $connected = mc4wp_get_api()->is_connected();
     // cache renewal triggered manually?
     $force_cache_refresh = isset($_POST['mc4wp-renew-cache']) && $_POST['mc4wp-renew-cache'] == 1;
     $mailchimp = new MC4WP_MailChimp();
     $lists = $mailchimp->get_lists($force_cache_refresh);
     if ($lists && count($lists) === 100) {
         add_settings_error('mc4wp', 'mc4wp-lists-at-limit', __('The plugin can only fetch a maximum of 100 lists from MailChimp, only your first 100 lists are shown.', 'mailchimp-for-wp'));
     }
     if ($force_cache_refresh) {
         if (false === empty($lists)) {
             add_settings_error('mc4wp', 'mc4wp-cache-success', __('Renewed MailChimp cache.', 'mailchimp-for-wp'), 'updated');
         } else {
             add_settings_error('mc4wp', 'mc4wp-cache-error', __('Failed to renew MailChimp cache - please try again later.', 'mailchimp-for-wp'));
         }
     }
     require MC4WP_LITE_PLUGIN_DIR . 'includes/views/api-settings.php';
 }
开发者ID:tlandn,项目名称:akvo-sites-zz-template,代码行数:23,代码来源:class-admin.php


示例19: get_subscriber_count

 /**
  * Returns number of subscribers on given lists.
  *
  * @param array $list_ids of list id's.
  * @return int Sum of subscribers for given lists.
  */
 public function get_subscriber_count($list_ids)
 {
     // don't count when $list_ids is empty or not an array
     if (!is_array($list_ids) || count($list_ids) === 0) {
         return 0;
     }
     $list_counts = get_transient('mc4wp_list_counts');
     if (false === $list_counts) {
         // make api call
         $api = mc4wp_get_api();
         $lists = $api->get_lists();
         $list_counts = array();
         if (is_array($lists)) {
             foreach ($lists as $list) {
                 $list_counts["{$list->id}"] = $list->stats->member_count;
             }
             /**
              * @filter `mc4wp_lists_count_cache_time`
              * @expects int
              *
              * Sets the amount of time the subscriber count for lists should be stored
              */
             $transient_lifetime = apply_filters('mc4wp_lists_count_cache_time', 1200);
             // 20 mins by default
             set_transient('mc4wp_list_counts', $list_counts, $transient_lifetime);
             set_transient('mc4wp_list_counts_fallback', $list_counts, 86400);
             // 1 day
         } else {
             // use fallback transient
             $list_counts = get_transient('mc4wp_list_counts_fallback');
             if (false === $list_counts) {
                 return 0;
             }
         }
     }
     // start calculating subscribers count for all list combined
     $count = 0;
     foreach ($list_ids as $id) {
         $count += isset($list_counts[$id]) ? $list_counts[$id] : 0;
     }
     return apply_filters('mc4wp_subscriber_count', $count);
 }
开发者ID:NClaus,项目名称:Ambrose,代码行数:48,代码来源:class-mailchimp.php


示例20: checkout_subscribers

function checkout_subscribers()
{
    if (isset($_POST['_mc4wp_subscribe_registration_form']) && $_POST['_mc 

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP mc4wp_get_options函数代码示例发布时间:2022-05-24
下一篇:
PHP lmb_i18n函数代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap