feat: add Newsletter Campaigns backend infrastructure

- Add CampaignManager.php with CPT registration, CRUD, batch sending
- Add CampaignsController.php with 8 REST endpoints (list, create, get, update, delete, send, test, preview)
- Register newsletter_campaign event in EventRegistry for email template
- Initialize CampaignManager in Bootstrap.php
- Register routes in Routes.php
This commit is contained in:
Dwindi Ramadhana
2025-12-31 14:58:57 +07:00
parent 2dbc43a4eb
commit 65dd847a66
5 changed files with 824 additions and 0 deletions

View File

@@ -23,6 +23,7 @@ use WooNooW\Api\CustomersController;
use WooNooW\Api\NewsletterController;
use WooNooW\Api\ModulesController;
use WooNooW\Api\ModuleSettingsController;
use WooNooW\Api\CampaignsController;
use WooNooW\Frontend\ShopController;
use WooNooW\Frontend\CartController as FrontendCartController;
use WooNooW\Frontend\AccountController;
@@ -125,6 +126,9 @@ class Routes {
// Newsletter controller
NewsletterController::register_routes();
// Campaigns controller
CampaignsController::register_routes();
// Modules controller
$modules_controller = new ModulesController();
$modules_controller->register_routes();