June 23rd, 2026
MainWP Core
Dashboard

Security: Restricted access to MainWP bulkpost and bulkpage custom post type functionality by requiring the manage_options capability.
Fixed: Improved Plesk API URL construction to properly handle slash combinations in request paths and prevent potential request errors.
Fixed: Resolved an issue where the "Manage Sites" list did not immediately reflect changes to a site's suspension status.
Fixed: Resolved a support modal overlay issue on the Lighthouse Integration page.
Added: Category management for custom post types now shows site associations through contextual tooltips/popups, making it easier to see which sites contain each category.
Updated: Updated page navigation links that open in new tabs to include proper attributes, helping protect user sessions.
June 16th, 2026
MainWP Core
Child

Updated: Hardened MainWP Child connection verification and settings behavior for passwordless setups. If Password Authentication is disabled, adding or reconnecting a site now requires the Unique Security ID, including when using the MainWP REST API or other automations. Thanks to Khaled Alenazi (Nxploited).
June 16th, 2026
Add-ons
Extension
Code Snippets

Fixed: Corrected the Code Snippets table installer to always define the auto-increment ID as a primary key.
June 12th, 2026
Add-ons
Integration
Google Search Console Integration

Fixed: Property refresh logic to reliably update account property mappings.
Added: WordPress REST API availability check along with a warning message to inform users if not available.
Updated: Enhanced GSC account management by adding status handling and syncing properties for entries and clients.
June 12th, 2026
Add-ons
Integration
Google Analytics Integration

Added: WordPress REST API availability check along with a warning message to inform users if not available.
Updated: Enhanced GA4 property synchronization to prevent stale mappings and improve data accuracy
Updated: Refined widget view selection, admin messaging, site-selection persistence, token refresh, and centralized debug logging.
June 11th, 2026
Add-ons
Integration
Fathom Integration

Fixed: Visitor Data graph selector so changing the chart type now reloads the selected graph correctly.
Fixed: Fathom stats cache growth by enforcing a single cached stats row per connected MainWP site.
Fixed: Fathom stats cache updates so refreshed data updates the existing site cache row instead of creating duplicate entries.
Added: Database migration to remove duplicate Fathom stats cache rows while preserving the newest cached data for each site.
Added: Explicit cache clearing when using the Fathom "Refresh Data" action.
Added: "Refresh Data" button to the "Visitor Data" tab.
Added: Automatic sites data cleanup when removing connected Fathom accounts.
Updated: Improved Fathom stats refresh behavior to respect the configured data refresh frequency instead of refetching data on frequent page loads.
Updated: Reduced Fathom Aggregation API usage by combining graph metric requests into a single aggregation request, helping reduce API calls and avoid rate limits.
Updated: Improved Fathom asset cache-busting by using the plugin header version for CSS/JS enqueue versions, with a file modification time fallback.
Updated: Improved extension initialization timing to ensure proper loading order with other plugins and improve startup compatibility.
June 10th, 2026
Add-ons
Integration
Virusdie Integration

Updated: Refactored the sign-out flow to clear local connection data when signing out via the API.
Updated: logging priority configuration.
June 10th, 2026
Add-ons
Extension
Maintenance

Added: Ability to pause and resume maintenance schedules for more control over scheduled maintenance tasks.
Added: Bulk actions for maintenance schedules, allowing users to delete, pause, or resume multiple schedules at once.
Added: Status tracking for maintenance schedules to provide clearer visibility into schedule activity and failures.
Added: Target details to the schedules table, showing the number of selected sites, tags, or clients included in each schedule.
Added: Persistent tracking and UI for per-site failures during maintenance runs.
Updated: Improved schedule frequency labels to use clearer, more natural wording, such as "Twice per day" instead of "2/Day".
Updated: Improved extension initialization timing to ensure proper loading order with other plugins, enhancing compatibility and reliability during startup.
Updated logging priority configuration.
Dev: Database upgrade handling for the new maintenance schedule fields, including paused, last_run_status, last_run_error, last_failed_at, and last_run_failures.
June 8th, 2026
Add-ons
Extension
Code Snippets

Security: Improved code snippet database handling with prepared queries, sanitized values, and stricter user scoping.
Security: Strengthened AJAX input and output handling to improve protection against malformed or unsafe requests.
Fixed: Corrected formatting of default snippet code.
Fixed: Ensured default snippet descriptions and data are properly migrated during upgrades.
Added: Code folding UI and fold keymap support.
Added: Autocompletion and automatic bracket closing in the code editor.
Added: Natural Tab indentation support in the code editor.
Added: PHP pre-save syntax validation to help catch common syntax errors before saving snippets.
Added: Added a new clients column to the Code Snippets database table to support client-based snippet organization.
Updated: Reworked the snippet editor layout with a cleaner, more modern interface.
Updated: Moved snippet settings above the code editor for easier access while editing snippets.
Updated: Compacted snippet action buttons to reduce visual clutter in the editor area.
Updated: Replaced the snippet type radio buttons with a pill-style selector for a clearer editing experience.
Updated: Improved the saved snippets table by combining snippet titles and descriptions into a single, more readable column.
Updated: Replaced plain text snippet type indicators with colored labels for better visibility in the saved snippets table.
Updated: Refined multiple text strings for clearer and more consistent wording.
Updated: Improved snippet options handling, selection normalization, and snippet type validation for better reliability.
Updated: Improved snippet run UI rendering for a cleaner and more consistent user experience.
Updated: Replaced the legacy CodeMirror 5 editor with a new CodeMirror 6 bundle.
Updated: Improved internal utility handling with a safer rand_string method and a more user-friendly time_elapsed_string helper.
Dev: Refactored core database methods, including install, update_codesnippet, get_codesnippet_by, and remove_codesnippet, for safer and more consistent data handling.
Dev: Refactored the extension structure with clearer return semantics, improved docblocks, singleton patterns, and updated build files for better maintainability.
June 5th, 2026
Add-ons
Integration
Pressable Integration

Added: Robust site mapping to match Pressable sites by primary URLs and custom domains for more reliable site detection.
Added: Contextual empty-state placeholders when Pressable credentials or sites are unavailable.
Added: New utility helpers for rendering empty-page placeholders and displaying human-readable elapsed time.
Updated: Improved Pressable API token handling with clearer credential validation, safer token saving, and more reliable token refresh behavior.
Updated: Improved Pressable settings flows, including clearing credentials, validating inputs, saving tokens, and syncing site data.
Updated: Redesigned the Pressable overview table layout with clearer rows, columns, actions, and contextual interface elements.
Updated: Streamlined modal and form layouts for a cleaner and easier-to-use admin experience.
Updated: Improved backup and widget interface styling, including padded segments, dropdown icon orientation, menu styling, and minor markup refinements.
Updated: Improved internal Pressable site mapping logs to make mapping changes easier to review and troubleshoot.
Updated: Improved plugin initialization timing to ensure proper loading sequence with other extensions during WordPress startup.
Dev: Added get_mainwp_site_by_pressable_urls() to match MainWP sites against Pressable primary URLs and custom domains.
Dev: Added get_domains_list() to fetch Pressable site domain data.
Dev: Added save_access_token_data() and updated refresh_access_token() to centralize access token persistence.
Dev: Updated get_access_token() to support explicit client credentials.
Dev: Added update_pressable_wpid() and delete_all_pressable() database helpers.