DELUCKS SEO

Changelog

2.7.2

  • Updated plugin version from 2.7.1 to 2.7.2
  • Added CSRF nonce protection for modal AJAX requests (dpc_modal_show, dpc_modal_save)
  • Secured import/export functionality with nonces (dpc_importexport, dpc_dashboard_wizard_restore, dpc_dashboard_import_metadata_csv)
  • Protected all admin AJAX endpoints with capability checks (current_user_can(‘manage_options’))
  • Added nonce verification in settings restoration and CSV import
  • File upload operations now check user permissions before processing
  • Fixed early exit condition in basic_breadcrumbs module constructor
  • Corrected archive prefix default (changed from empty to “Archive for”)
  • Fixed multiple isset() redundancy issues in breadcrumb output
  • Adjusted indentation for code consistency
  • Fixed timeout value: changed from 15000ms (15s) to 120s for OpenAI API requests
  • Changed default AI model from dpc_gpt_modal to dpc_metadata_ai
  • Fixed settings initialization to use correct keys for AI models
  • Added proper fallback for missing AI model configuration
  • Updated AI prompt placeholders from getWebsiteLanguage to {{websiteLanguage}} format
  • Added early exit condition for disabled statistics module
  • Fixed multiple isset() checks for safe property access
  • Improved error handling for cURL timeouts with duplicate deduplication
  • Added SSL verification (sslverify => true) to Google Search Console API calls
  • Extended timeout for API requests to 15 seconds
  • Added early exit condition for disabled sitemaps module
  • Fixed multiple isset() checks for safe property access
  • Corrected conditional logic for checking post type statuses
  • Added early exit condition for disabled URLs module
  • Updated settings.xml with GPT-5 model variants (gpt-5, gpt-5.1, gpt-5.2, gpt-5-pro, gpt-5-mini, etc.)
  • Added separate AI model selectors for metadata and content editor
  • Updated AI prompt defaults to include content placeholder
  • Added robust OpenAI API error handling with friendly user-facing messages
  • Implemented GPT-5 family endpoint support (/v1/responses for GPT-5, /v1/chat/completions for legacy)
  • Added error mapping for cURL codes (28, 35, 51, 52, 60, 77, etc.)
  • Improved API request with max_completion_tokens for o1 models
  • Enhanced prompt template system with {{}} placeholder support
  • Enhanced file upload validation with required field support
  • Improved user feedback on upload success/failure
  • Fixed JavaScript file reader to use readAsText() instead of readAsDataURL() for JSON/CSV files
  • Added support for Elementor widget integration
  • Added widget file validation and error handling
  • Improved backward compatibility with existing breadcrumb configurations
  • Added professional author module with co-authors support
  • Implemented custom taxonomy for co-authors (dpc_coauthors)
  • Added Gutenberg block for author box display (dpc/author-box)
  • Multiple layout options: image-left, image-top, image-right
  • Created admin meta box for co-author selection
  • Support for webseide theme integration
  • Social links display for authors
  • 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
  • Several small fixes

Plugin Website
Visit website

Author
DELUCKS
Version:
2.7.2
Last Updated
April 1, 2026
Active Installs
400
Requires
WordPress 4.6
Tested Up To
WordPress 7.0
Requires PHP
7.0

Share Post

Join our newsletter.

Get insights into what’s happening at ChangelogWP right in your inbox. We don’t believe in spam.