NEW: Added Network Admin tool to copy all ad CPT posts from one site to one or more selected destination subsites.
NEW: Ad copy operation skips destination posts when the same ad slug already exists.
NEW: Copied Ad posts preserve content, excerpt, status, menu order, custom fields, and assigned Monetize Me taxonomy terms.
NEW: Missing destination adcategory and adsponsor terms are created automatically while copying Ads.
SECURITY: Restricted Ad copy workflow to Network Administrators using nonce verification and manage_network_options checks.
2.0.1
NEW: Network Admin settings page for Multisite environments.
NEW: Copy taxonomy terms (adcategory, adsponsor) from a source site to selected subsites.
NEW: Bulk subsite selection for term synchronization.
IMPROVED: Duplicate detection using term slug (skip existing terms).
IMPROVED: Operation summary showing copied, skipped, and failed counts.
SECURITY: Restrict term synchronization tools to Network Admin only.
2.0.0
Added a centralized Ad_Service class used by shortcode, widget, block, and renderer layers
Added cache-aware ad queries with automatic cache purging on ad save, delete, and taxonomy changes
Added public helper API functions: monetize_me_get_ad(), monetize_me_get_random_ads(), monetize_me_render_ad(), mm_get_ad(), mm_get_random_ad(), and mm_render_ad()
Added internal filters and actions for query arguments and rendered output
Preserved backward compatibility for existing shortcode, widget, block, and Renderer::render() usage
1.9.0
Major internal refactor for maintainability
Added modern plugin bootstrap structure
Removed runtime rewrite flushing
Improved shortcode normalization and rendering
Fixed widget slug handling bug
Modernized block registration structure
Added safer uninstall behavior
Updated readme and repository packaging
1.0.1
Revert back the ad sponsor taxonomy
1.0.0
Recreated the plugin by removing legacy width and height taxonomies