=== EaseyAI === Contributors: easeyai Tags: cms, content-management, headless-cms, api, woocommerce Requires at least: 6.6 Tested up to: 6.9 Stable tag: 0.3.6 Requires PHP: 8.0 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html Connect your WordPress site to EaseyAI platform for centralized content management across multiple WooCommerce stores. == Description == EaseyAI is a WordPress plugin that connects your site to the [EaseyAI platform](https://easeyai.com), enabling centralized management of multiple WordPress and WooCommerce sites from a single dashboard. **Key Features:** * **Centralized Dashboard** - Manage multiple WordPress sites from one place * **WooCommerce Integration** - Products, orders, categories, customers, and coupons * **Content Management** - Pages, posts, menus, and media library * **Elementor Support** - Full compatibility with Elementor page builder * **Multi-language** - Polylang integration for multilingual sites * **Multi-currency** - Support for multi-currency pricing * **Real-time Sync** - Webhook notifications for instant updates * **Security** - API key authentication for all endpoints **Perfect for:** * Agencies managing multiple client WordPress sites * E-commerce businesses with multiple WooCommerce stores * Developers building headless WordPress applications * Teams needing centralized content management == Installation == 1. Upload the plugin files to the `/wp-content/plugins/easeyai` directory, or install the plugin through the WordPress plugins screen 2. Activate the plugin through the 'Plugins' screen in WordPress 3. Go to Settings -> EaseyAI to configure your API key 4. Connect your site from the EaseyAI dashboard at [easeyai.com](https://easeyai.com) == Third-Party Services == This plugin connects to external services: = EaseyAI Platform = This plugin is designed to work with the EaseyAI platform ([https://easeyai.com](https://easeyai.com)). * **Service**: EaseyAI SaaS Platform * **Purpose**: Centralized management of your WordPress/WooCommerce site * **Data exchanged**: Content data (posts, pages, products, orders, media) via REST API * **When**: When you perform actions from the EaseyAI dashboard * **Admin user creation**: During initial setup, this plugin creates a WordPress administrator user (`easey_api_admin`) required for performing WooCommerce API operations and content management on behalf of the EaseyAI platform. This user is only created once and cannot be recreated if it already exists. * **Terms of Service**: [https://easeyai.com/terms](https://easeyai.com/terms) * **Privacy Policy**: [https://easeyai.com/privacy](https://easeyai.com/privacy) = Webhook Notifications = When configured, this plugin sends HTTP POST requests to a webhook URL that you specify. * **Service**: User-configured webhook endpoint * **When**: Triggered on content changes (posts, pages, products, orders, users) * **Data sent**: Event type, content ID, site URL * **Configuration**: Settings -> EaseyAI -> Webhook URL * **Purpose**: Real-time synchronization with external systems **Important**: No data is sent without your explicit configuration. = WooCommerce REST API = If WooCommerce is active, this plugin can generate authentication tokens for the WooCommerce REST API. * **Service**: Your own WooCommerce store's REST API * **Purpose**: Enable the EaseyAI platform to interact with your store * **Data**: Standard WooCommerce API data (products, orders, customers) = Mailchimp API = If the "Mailchimp for WordPress" plugin is active and configured with an API key, this plugin connects to the Mailchimp API to retrieve subscriber lists and email addresses for newsletter functionality. * **Service**: Mailchimp (The Rocket Science Group, LLC) * **API endpoint**: `https://{dc}.api.mailchimp.com/3.0/` (where `{dc}` is the data center from your API key) * **Purpose**: Fetch subscriber lists and email addresses for email marketing features * **Data sent**: Mailchimp API key (from the Mailchimp for WordPress plugin settings) * **Data received**: Subscriber lists and email addresses * **When**: Only when fetching newsletter subscriber data through the EaseyAI platform * **Terms of Service**: [https://mailchimp.com/legal/terms/](https://mailchimp.com/legal/terms/) * **Privacy Policy**: [https://www.intuit.com/privacy/statement/](https://www.intuit.com/privacy/statement/) == Frequently Asked Questions == = Do I need an EaseyAI account? = Yes, you need to create an account at [easeyai.com](https://easeyai.com) to use this plugin. The plugin acts as a bridge between your WordPress site and the EaseyAI platform. = Is WooCommerce required? = No, WooCommerce is optional. The plugin works with standard WordPress sites, but WooCommerce-specific features will only be available if WooCommerce is active. = Is my data secure? = Yes. All API endpoints are protected with API key authentication. Data is transmitted over HTTPS. You control which webhook endpoints receive notifications. = Can I manage multiple sites? = Yes, that's the main purpose of EaseyAI. You can connect multiple WordPress/WooCommerce sites and manage them all from a single dashboard. == Screenshots == 1. EaseyAI Dashboard - Manage all your sites 2. API Key Configuration Screen 3. Webhook Settings 4. WooCommerce Integration == Changelog == = 0.3.6 = * Security: All REST API endpoints now require API key authentication (removed __return_true permission callbacks) * Security: ApiKeyCheck middleware now fails closed when no API key is configured * Security: User creation restricted to non-administrator roles only * Security: Added proper input sanitization (sanitize_text_field, sanitize_email, absint, wp_kses_post) across all endpoints * Security: Shortcode output is now escaped with wp_kses_post * Security: register_setting now includes sanitize_callback * Security: Added ABSPATH check to all PHP files to prevent direct access * Security: verificationToken uses hash_equals for timing-safe comparison * Improved: SliderManager uses WP_REST_Request methods instead of raw php://input * Improved: WebhookManager uses WP_REST_Request::get_json_params() for input handling * Updated: Third-party services documentation in readme = 0.3.0 = * Rebranded plugin to EaseyAI * Added Third-Party Services disclosure for WordPress.org compliance * Added EaseyAI platform integration documentation * Added user registration webhook event * Added extended security health checks * Added extended performance health checks * Added WooCommerce category meta endpoints * Improved documentation and compliance = 0.2.0 = * Added new security rules for routes * Fixed WooCommerce compatibility issues * Added proper error handling for API responses * Fixed method naming consistency in WebhookManager * Added missing methods in WooCommerce integration * Improved API token generation and validation * Tested compatibility with PHP 8.0 = 0.1.0 = * Initial release * RESTful API endpoints for content management * Elementor integration * WooCommerce support * Custom slider functionality * Webhook system == Upgrade Notice == = 0.3.6 = Security update: All endpoints now require proper API key authentication. Please ensure your API key is configured after updating. = 0.3.0 = This version includes important compliance updates for WordPress.org guidelines. Please update for continued support. = 0.1.0 = Initial release of EaseyAI plugin.