Exemple #1
0
 static function on_load()
 {
     define('WPMANDRILL_API_VERSION', '1.0');
     add_action('admin_init', array(__CLASS__, 'adminInit'));
     add_action('admin_menu', array(__CLASS__, 'adminMenu'));
     add_filter('contextual_help', array(__CLASS__, 'showContextualHelp'), 10, 3);
     add_action('admin_print_footer_scripts', array(__CLASS__, 'openContextualHelp'));
     add_action('wp_ajax_get_mandrill_stats', array(__CLASS__, 'getAjaxStats'));
     add_action('wp_ajax_get_dashboard_widget_stats', array(__CLASS__, 'showDashboardWidget'));
     load_plugin_textdomain('wpmandrill', false, dirname(plugin_basename(__FILE__)) . '/lang');
     if (function_exists('wp_mail')) {
         self::$conflict = true;
         add_action('admin_notices', array(__CLASS__, 'adminNotices'));
         return;
     }
     self::$conflict = false;
     if (self::isConfigured()) {
         function wp_mail($to, $subject, $message, $headers = '', $attachments = array())
         {
             try {
                 $sent = wpMandrill::mail($to, $subject, $message, $headers, $attachments);
                 if (is_wp_error($sent) || !isset($sent[0]['status']) || $sent[0]['status'] != 'sent' && $sent[0]['status'] != 'queued') {
                     return wpMandrill::wp_mail_native($to, $subject, $message, $headers, $attachments);
                 }
                 return true;
             } catch (Exception $e) {
                 return wpMandrill::wp_mail_native($to, $subject, $message, $headers, $attachments);
             }
         }
     }
 }