rl-warmup-plugin/rl-mailwarmer.php

86 lines
3 KiB
PHP

<?php
/**
* Plugin Name: RL MailWarmer
* Plugin URI: https://redlotusaustin.com
* Description: A simple plugin for managing email warming.
* Version: 0.0.1
* Author: Ruben Ramirez
* Author URI: https://redlotusaustin.com
* Text Domain: rl-mailwarmer
* Domain Path: /languages
*/
// Prevent direct access
if (!defined('ABSPATH')) {
exit;
}
// Define plugin constants.
define('RL_MAILWARMER_VERSION', '0.0.1');
define('RL_MAILWARMER_PATH', plugin_dir_path(__FILE__));
define('RL_MAILWARMER_URL', plugin_dir_url(__FILE__));
require RL_MAILWARMER_PATH . 'vendor/autoload.php';
// Include necessary files
// require_once plugin_dir_path(__FILE__) . 'includes/class-rl-mailwarmer-post-types.php';
// require_once plugin_dir_path(__FILE__) . 'includes/class-rl-mailwarmer-acf-integration.php';
require_once RL_MAILWARMER_PATH . 'includes/rl-mailwarmer-functions.php';
require_once RL_MAILWARMER_PATH . 'includes/rl-mailwarmer-ajax.php';
// require_once RL_MAILWARMER_PATH . 'includes/rl-mailwarmer-rest.php';
require_once RL_MAILWARMER_PATH . 'includes/rl-mailwarmer-importer.php';
require_once RL_MAILWARMER_PATH . 'includes/rl-mailwarmer-domain-admin.php';
require_once RL_MAILWARMER_PATH . 'includes/rl-mailwarmer-email-admin.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-campaign-helper.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-conversation-helper.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-db-helper.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-domain-helper.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-email-account-helper.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-email-handler.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-message-handler.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-message-helper.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-scheduler.php';
require_once RL_MAILWARMER_PATH . 'includes/class-rl-mailwarmer-post-tables.php';
// require_once RL_MAILWARMER_PATH . 'includes/vendor/autoload.php';
/**
* Initialize the plugin.
*/
function rl_mailwarmer_init()
{
// Register custom post types and fields
// RL_MailWarmer_Post_Types::register_post_types();
// RL_MailWarmer_Post_Types::register_custom_fields();
// Schedule email tasks
RL_MailWarmer_Scheduler::init();
// Handle email sending
// RL_MailWarmer_Email_Handler::init();
}
add_action('plugins_loaded', 'rl_mailwarmer_init');
/**
* Activate the plugin.
*/
function rl_mailwarmer_activate()
{
// Schedule cron jobs on activation
RL_MailWarmer_Scheduler::schedule_cron_jobs();
// Create custom tables
RL_MailWarmer_DB_Helper::create_tables();
}
register_activation_hook(__FILE__, 'rl_mailwarmer_activate');
/**
* Deactivate the plugin.
*/
function rl_mailwarmer_deactivate()
{
// Clear scheduled cron jobs
RL_MailWarmer_Scheduler::clear_cron_jobs();
}
register_deactivation_hook(__FILE__, 'rl_mailwarmer_deactivate');