Example #1
0
function mailchimp_get_list_groups($list_id)
{
    $api = mailchimp_load_API();
    if (is_wp_error($api)) {
        return array();
    }
    $groups = $api->lists->interestGroupings($list_id);
    if (is_wp_error($groups)) {
        return array();
    }
    return $groups;
}
Example #2
0
    private function render_import_tab()
    {
        $mailchimp_apikey = get_site_option('mailchimp_apikey', '');
        $mailchimp_mailing_list = get_site_option('mailchimp_mailing_list');
        $mailchimp_ignore_plus = get_site_option('mailchimp_ignore_plus');
        $mailchimp_allow_widget = get_site_option('mailchimp_allow_widget', false);
        $mailchimp_last_imported_list = get_site_option('mailchimp_last_imported_list', $mailchimp_mailing_list);
        if (!empty($mailchimp_apikey)) {
            $api = mailchimp_load_API();
            if (is_wp_error($api)) {
                $api_error = $api->get_error_message();
            }
            $mailchimp_lists = mailchimp_get_lists();
            $api_error = !empty($api_error);
        }
        if (isset($_POST['action']) && $_POST['action'] == 'submit-import') {
            ?>
				<div class="processing_result"></div>
				<p><?php 
            _e('Importing users, please wait. This could take long depending on the number of users you have in your site...', MAILCHIMP_LANG_DOMAIN);
            ?>
</p>
			<?php 
            return;
        }
        if (is_array($mailchimp_lists) && count($mailchimp_lists)) {
            ?>
			<h3><?php 
            _e('Sync Existing Users', MAILCHIMP_LANG_DOMAIN);
            ?>
</h3>
			<span class="description"><?php 
            _e('This function will syncronize all existing users on your install with your MailChimp list, adding new ones, updating the first/last name of previously imported users, and removing spammed or deleted users from your selected list. Note you really only need to do this once after installing, it is carried on automatically after installation.', MAILCHIMP_LANG_DOMAIN);
            ?>
</span>
		<?php 
        }
        ?>

		<table class="form-table">
			<tr class="form-field form-required">
    			<th scope="row"><?php 
        _e('Mailing List', MAILCHIMP_LANG_DOMAIN);
        ?>
</th>
				<td>
					<select name="mailchimp_import_mailing_list" id="mailchimp_import_mailing_list">
						<?php 
        foreach ($mailchimp_lists as $mailchimp_list) {
            ?>
<option value="<?php 
            echo $mailchimp_list['id'];
            ?>
" <?php 
            selected($mailchimp_last_imported_list == $mailchimp_list['id']);
            ?>
><?php 
            echo $mailchimp_list['name'];
            ?>
</option><?php 
        }
        ?>
					</select><br />
					<?php 
        _e('The mailing list you want to import existing users to.', MAILCHIMP_LANG_DOMAIN);
        ?>
	            </td>
	        </tr>
				<tr class="form-field form-required">
				<th scope="row"><?php 
        _e('Auto Opt-in', MAILCHIMP_LANG_DOMAIN);
        ?>
</th>
				<td>
					<select name="mailchimp_import_auto_opt_in" id="mailchimp_import_auto_opt_in">
		                <option value="yes" ><?php 
        _e('Yes', MAILCHIMP_LANG_DOMAIN);
        ?>
</option>
		                <option value="no" ><?php 
        _e('No', MAILCHIMP_LANG_DOMAIN);
        ?>
</option>
		            </select><br />
					<?php 
        _e('Automatically opt-in new users to the mailing list. Users will not receive an email confirmation. Use at your own risk.', MAILCHIMP_LANG_DOMAIN);
        ?>
				</td>
			</tr>
		</table>
		<?php 
        submit_button(__('Import', MAILCHIMP_LANG_DOMAIN), 'primary', 'submit-mailchimp-settings');
    }
Example #3
0
 function mailchimp_blog_users_remove($blog_id)
 {
     $mailchimp_mailing_list = get_site_option('mailchimp_mailing_list');
     $api = mailchimp_load_API();
     $emails = array();
     $blogusers = get_users_of_blog($blog_id);
     if ($blogusers) {
         foreach ($blogusers as $bloguser) {
             $emails[] = $bloguser->user_email;
         }
     }
     $results = mailchimp_bulk_unsubscribe_users($emails, $mailchimp_mailing_list);
 }