Reorganized __construct() method to defer non-critical initialization to hook_init
Moved hook registration to appropriate admin_init and init actions
Improved separation of concerns between early and late initialization
Removed shouldLoadScripts() static method calls from throughout codebase (was performing unnecessary script loading checks)
Removed redundant file checks that were preventing legitimate functionality
Updated file permissions on multiple .js, .css, .php, .json, .xml files to executable (755)
Changed .dpc file format from base64-encoded to plain JSON for better compatibility
Maintained backward compatibility with legacy base64-encoded files
Updated import/export to handle both formats transparently
2.7.1
Improved PHP 8.1–8.4 compatibility
Fixed deprecated functions and dynamic property warnings
Structured data output now suppressed if empty
2.7.0
New Breadcrumb & Sharing buttons for Block Editor and Elementor
Bugfix of language settings
Added support for metadata translation in WPML
Code cleanup and stability improved
2.6.0
Ensure compatibility with HPOS for microdata product function
Correct typo in $companyLabel causing frontend error
Fix XSS in dpc_analytics_opt_out shortcode via link_text attribute
Disable WooCommerce Product Schema based on settings
Hide jobs post type in microdata module
Move company fields from modal to global microdata settings
Correct JSON-LD microdata validation issues
Replace {{getFocusKeyword}} with {{focusKeyword}} in AI prompt templates
Fix UTF-8 encoding in JSON-LD and prevent double-escaping in database saves
Replace PHP 8.0+ match expression with array map for PHP 7 compatibility
Handle WP_Error and empty terms in job location schema
Add safe translation methods for __(), _x(), esc_html__(), and esc_html_e()
Adjust init hook priorities for post type and taxonomy registration
Fix PHP warnings when accessing category properties on null
Fix warning for undefined array key in validate_multi_checkbox
Fix job location data not displaying due to incorrect taxonomy name
Fix PHP 8 array offset error in microdata module
Rewrite getJsonLdString() function to improve schema generation
Add missing ‘Place of Work’ taxonomy settings to job post editor
Use post date as fallback when hiring_date is missing in schema
Add itemValue support for JobPosting schema title mapping
Revert to default date input to fix broken form submissions
Fix unauthorized access vulnerability in the dpc_dashboard_wizard_install_master AJAX action.
2.5.9
Ensure Elementor Hooks are Loaded Only in the Elementor Editor
Resolve PHP 8.2 Deprecation in Basic > Metadata Module
Fix JSON Schema Trailing Comma and Ensure Consistent Image Structure
Replace Custom Query Variable with sitemap_index for /sitemap.xml
2.5.8
Fixed: Syntax error on PHP versions below 8.0
2.5.7
Fixed: Prevent empty JSON output in author schema: Added a check to ensure the output only occurs if populated; resolved issue where empty JSON string was being output when not found.
Fixed: AJAX call execution and post-activation redirect in activatePlugin: Added options to trigger AJAX after plugin activation, introduced a delay for activation completion, conditional redirects after successful AJAX, and hooks for post-activation actions.
Fixed: undefined $post variable issue in contentColumns: Replaced $post with $postID parameter to avoid PHP warnings.
Fixed: Editable prompts in metadata and text optimization module: Ensured editable prompts appear in the correct settings, not modals.
Fixed: security vulnerabilities in settings file handling: Improved checks for file readability and validation, enhanced error handling for broken settings data.
Fixed: image duplication in schema: Removed unnecessary duplication in schema output.
Fixed: location schema image fallback: Dynamically set fallback image for location schema if no post thumbnail exists.
Fixed: logic for toggle elements in raster boundaries: Corrected issue with toggle elements appearing outside the raster.
Fixed: PHP warnings related to undefined variables: Corrected warnings and added null checks for undefined or null variables.
Fixed: RankMath import modal and metadata issues: Addressed issues with blank pages or incorrect metadata displays during RankMath import.
Fixed: minor UI issues: Corrected font colors, modal sizing, and cleaned up visual inconsistencies.
Apply border-radius styles conditionally for button elements: Fixed the application of border-radius styles based on specific sibling count.
Added: Support metadata import from RankMath SEO plugin: Imported RankMath metadata for more flexible content management.
Added: buildShareUrl function: Generate dynamic sharing URLs with UTM parameters for better tracking.
Add support for partial CSV import (3.3): Allows importing specific fields like keywords, meta titles, and descriptions.
Implemented a URL shortener in the Sharing module: Keeps UTM parameters intact while shortening URLs.
Add run_once class: Ensures master settings are applied only on first activation to prevent redundant reapplication.
Add default Microdata types: Set defaults for blog posts, pages, and job listings in settings.
Add mandatory fields for “Local Business” review type: Included “Company Name” and “Address” fields in the review schema for local businesses
Added sanitizeHtml function: Allowed inline scripts while blocking external /wp-admin/ scripts for better security.
Under Basic > Sitemaps > Index Now: Instead of the plus sign, inserted this link to the API key generator: https://www.bing.com/indexnow/getstarted#implementation
Under Basic > Statistics > SISTRIX API-Key: Added a link to the right of the field (https://app.sistrix.com/account/api).
Added OpenAI link for users to generate the API key.
Increased the width of the IndexNow container for the IndexNow API key generation link.
Added instructions-links for the Google Search Console API.
Enhanced the text layout issues of the GSC API generation links.
Updated tweet endpoint to new X post endpoint: Updated URL endpoint from Twitter to X platform.
Replaced “Twitter” references with “X”: Changed all icons and verbiage to reflect the new “X” platform.
Refactored filterRobots function: Simplified and improved the handling of sitemap URLs for robots.txt generation.
Updated DPC file handling and encoding: Fixed encoding issues and enhanced security with no_priv_ajax permissions.
Updated deactivation modal: Aligned modal design with Elementor templates, added survey, and improved button functionality.
Removed console logs in xing.js file: Cleaned up debugging logs in the sharing script.
Changed file name from twitter.js to x.js: Fixed the missing X share endpoint by renaming the file.
Removed exclamation mark from Elementor DELUCKS tab: Minor UI cleanup for consistency.
Improve CSV import handling: Enhanced metadata import handling for slug conflicts, metadata assignment, and improved error handling.
Enhanced the CSV-based metadata import functionality: Added robust error handling, success/failure responses, and better flexibility for custom field mapping.
Improved AJAX URL handling: Added AJAX URL to scripts to facilitate smoother execution of AJAX requests.
Improved user experience with immediate setting updates: Added a redirect to immediately reflect settings changes after saving, avoiding manual refresh.
Reverted editable text areas with prompts in expert settings: Removed prompts that were inserted in the wrong place as per commit 35fe7da.
Fixed W3C validation errors for sharing buttons: Corrected invalid href attribute usage in sharing buttons for proper HTML validation.
Improved handling of post-activation actions: Added admin hooks and improved the logic for actions triggered after plugin activation.
Fixed issues with element positioning: Ensured elements stay within correct boundaries and prevent display glitches.
2.5.6
Chat GPT API for for metadata and text optimization with AI
Google Search Console API for rank tracking
New support for Elementor editor
Free > Statistics: Added a new option to keep UTM params and append them to internal links
UX Improvements
Deprecated code cleaned up for PHP 8.2+
X instead of Twitter icon for social sharing
Sharing > Bugfixes
2.5.5
Remember utm parameters and add them to links
Security fixes
Many code adjustments and minor bugfixes
2.5.4
Security fix
2.5.3
Fixed a white space bug which prevents wordpress to redirect to the wp-admin login mask. (open yourdomain.com/wp-login.php to access)
2.5.2
Set wordpress 6.0 as compatible
Fixed broken output with special chars in breadcrumbs
2.5.1
Fixed a syntax issue within microdata > location output
Compatibility with Postman SMTP
WDF*IDF: Heading and word counters now with average values
Updated character limits for meta titles and descriptions
Meta description can be stored as an excerpt via checkbox
Meta robots extended by “max-video-preview:-1”, “max-snippet:-1” and “max-image-preview:large”
Many minor bugfixes
2.5.0
PHP 8 compatibility
CSV import
Survey on uninstallation
Moved breadcrumb module from Premium to Free
Text optimization now with headline and text length comparison
Many minor bugfixes
2.4.6
Meta description strip shortcode bugfix
Changed meta description fallback
Sharing > Pinterest bugfix
2.4.5
Bugfix migration wizard
Stricter meta title limits
Added shortcode filter for automatic meta descriptions
WordPress standard sitemap disabled when our (more extensive) sitemap is enabled
Added custom XML extension for sitemaps (e.g. to embed podcasts)
Optimization of rating microdata
2.4.4
Fixed a wizard bug
Added a SEO Popup button in Gutenberg fullscreen mode
2.4.3
Added lost stylesheet
2.4.2
Visual optimization of microdata editing
Bugfixes for setup wizard= 2.4.1 =
Removing language files to use GlotPress= 2.4.1 =
Removing language files to use GlotPress
2.4.0
Post categories output in sitemaps changed to posttype post only
2.3.9
Post categories have been added to the xml post-sitemap
2.3.8
Added a new option to display sharing buttons on certain post types
Minor bugfixes
2.3.7
Keyword auto suggest now uses the current post language
Experimental Polylang and Polylang Pro support (please share your experiences with us)
2.3.6
Code improvements
Minor bugfixes
2.3.4
Code improvements
Added some removable actions for metadata and social sharing tag output
2.3.3
Code improvements
2.3.1
Modal: Design cleanup
Microdata: Structural optimization plus new Schema.org information for FAQ
Dashboard: Now with Installation wizard
Settings: Design cleanup
Premium / Sharing: frontend design cleanup
2.2.0
Minor bug fixes
2.1.9
Many code improvements that contribute to the security of your system
3rd party components have been updated
Unused codes have been removed
Preparations for the next big update
The wordpress team asked us to leave the error reporting untouched. If any warnings or errors are reported after the update, disable the debug output within your server settings or in the wp-config.php or look at the components that generate these messages.
2.1.8
Important update: A security issue has been fixed. Please update as soon as possible
2.1.7
Small bugfix in the rating module
2.1.6
Professional > Rating: New option to configure the behavior of the gutenberg comment block toggle
Minor bugfixes
2.1.5
Fix: a conditional logic error have been removed
2.1.4
Added code to the breadcrumbs module to handle woocommerce shop page as a regular page
Fixed a bug which prevents replying to a comment from the backend with active data privacy checkbox option in the rating module
Fixed a bug in the rating module gutenberg block for displaying comments inline
Fixed a bug in the Sharing > More Button when using in a widget
2.1.3
Fixed a syntax issue in microdata output
2.1.2
Google tag manager local hosting have been removed for compatibility reasons
2.1.1
Performance optimization
2.1
Message for disabled expert settings have been removed