All notable changes to this project will be documented in this file.
- Optimized database operations to significantly reduce server load
- Implemented direct database queries instead of using WordPress functions
- Added content change detection to avoid unnecessary updates
- Fixed duplicate topic processing issue by leveraging the existing queue system
- Added proper post cache cleaning to ensure hooks run after direct updates
- Support for additional divi modules
- Improved performance and reduced resource consumption
- Enhanced database operations efficiency
- Enhanced progress reporting to show item-by-item updates
- Improved JavaScript to avoid duplicate progress messages
- Optimized batch processing for more granular feedback
- Implemented robust batch processing system to handle large courses without timeouts
- Added state persistence between AJAX requests for reliable long-running processes
- Created detailed progress tracking with real-time UI updates
- Restructured cleanup process to use a queue-based approach
- Improved JavaScript to handle incremental processing with better error recovery
- Increased batch size to 10 topics for optimal performance
- Resolved timeout issues when processing large courses with many topics
- Fixed progress tracking to accurately show completion percentage
- n/a
- n/a
- Undefined array issue on Download Log
- n/a
- n/a
- Fixed incrementation of $module_counts variable logic
- n/a
- n/a
- Fixed incrementation of $module_counts variable used for class numbering
- Support for et_pb_text classes
- Updated logic to not skip classes
- Updated logic to correctly number et_pb_text classes
- Fixed search query to return results that include special characters
- Support for et_pb_team_member & et_pb_divider divi modules
- Updated logic to also process et_pb_team_member & et_pb_divider
- Prevented et_pb_code from adding empty paragraphs
- Support for et_pb_tabs divi module
- Updated logic to also process et_pb_tabs
- n/a
- n/a
- Updated logic for generating toggles with correct structure
- Updated logic for generating rows with correct structure
- Updated logic for generating columns with correct structure
- Resolved issue where the element id was not transfered to the generated html
- Support for additional divi modules
- Updated logic to include image and raw html elements
- Resolved issue where additional paragraphs and line breaks were added
- Support for additional divi modules
- Updated parsing logic to better account for nested elements
- Updated logic to include elements that are defined as divi shortcode parameters
- Resolved issue where numbered elements count was starting at 1 instead of 0
- Restored before/after content comparison for processed lessons and topics
- Enhanced logging to include detailed information about each processed item
- Improved display of processing results in the admin interface
- Updated error and info message handling in the cleanup process
- Resolved issue where before/after content comparison was not visible in the results
- Implemented log download feature after cleanup process
- Added new wrapper div with classes "et-db et_divi_builder" around cleaned content
- Improved content processing to ensure wrappers are correctly placed around the content
- Enhanced error handling and timeout management for large course processing
- Resolved issue with potential over-processing of content
- Corrected placement of Divi wrappers in cleaned content
- Implemented nonce checking for log download feature
- Implemented chunked processing for large courses to prevent timeouts
- Added more detailed progress reporting during cleanup process
- Improved error handling and reporting in lesson and topic processing
- Updated AJAX handling to support continued processing for large datasets
- Resolved issue where cleanup process would appear stuck on large courses
- Resolved issue where processing courses or lessons failed to loop through them correctly
- Added null checks and error handling for course lessons and lesson topics
- Updated error reporting to provide more informative messages when no lessons or topics are found
- Improved robustness of the cleanup process to handle cases where courses have no lessons or lessons have no topics
- Refined Divi to HTML conversion process for better compatibility with Divi's rendered output
- Updated
divi_to_html_cleanupfunction to more accurately preserve Divi's HTML structure and classes - Improved handling of section, row, column, and module classes and numbering
- Added preservation of
et_pb_text_align_leftandet_pb_bg_layout_lightclasses - Adjusted sidebar module handling to match Divi's output
- Corrected issues with module numbering in converted HTML
- Fixed inconsistencies in class preservation for various Divi elements
- Implemented AJAX-based search functionality for courses, lessons, and topics
- Added ability to select multiple courses, lessons, and topics independently
- Updated admin interface to use Select2 for enhanced dropdown functionality
- Modified cleanup process to handle any combination of selected courses, lessons, and topics
- Resolved issues with course, lesson, and topic selection dependencies
- Introduced logging of before and after content for each processed item
- Implemented expandable sections in the admin interface to display cleanup results
- Enhanced error handling and validation in AJAX handlers
- Improved the display of cleanup results in the admin interface
- Addressed word-wrapping issues in the admin interface for long content strings
- Implemented preservation of Divi module IDs in the cleanup process
- Added handling for
module_idattributes in Divi shortcodes
- Updated
divi_to_html_cleanupfunction to convertmodule_idattributes to HTMLidattributes - Refined regex patterns to capture and preserve Divi module IDs
- Resolved issue with topics not looping and updating correctly
- Corrected the processing of lessons and their associated topics
- Improved the cleanup process to ensure all selected items are processed
- Enhanced error checking and reporting in the cleanup process
- Fixed issue with topics not looping and updating.
- Namespaced all plugin functions and hooks.
- Restricted plugin execution to admin users only.
- Protected AJAX handlers to validate against unauthorized access.
- Added plugin descriptions and usage instructions for users in the admin panel.
- Fixed an issue where topics were mistakenly treated as lessons and processed redundantly.
- Introduced AJAX functionality for processing lessons and topics asynchronously.
- Added real-time logging and progress tracking in the admin panel.
- First working state of the plugin.