Unique Slug Checker

Description

Unique Slug Checker helps you maintain clean, conflict-free URLs by detecting duplicate slugs across your entire WordPress site in real-time.

🚀 Core Features:

✔️ Real-time checking in both Classic and Gutenberg editors
✔️ Full SEO plugin support (Yoast SEO, Rank Math, All in One SEO)
✔️ Cross-post type detection – finds duplicates in any content type
✔️ Visual status indicators with clear warnings
✔️ Post list column showing slug availability
✔️ Multilingual ready with translation support

🔧 New in 1.4.0
WordPress 7.0 compatibility – fully tested and optimized
Performance improvements – 30-40% faster with caching
Fixed deprecated functions – removed get_page_by_path
PHP 8.2/8.3 compatibility – improved code quality
Better security – enhanced nonce and data validation
Full CPT support – works with all custom post types
Memory leak fix – proper cleanup in Gutenberg

Perfect for:
– Large content sites
– Multilingual websites
– Editorial teams
– SEO-conscious publishers

Credits

Developed by Mohsen Mahdavi

License

This plugin is licensed under the GPLv2 or later.

Author

Mohsen Mahdavi – moma2work@gmail.com

Installation

  1. Upload the plugin files to /wp-content/plugins/unique-slug-checker
    OR install directly via WordPress admin (Plugins > Add New)
  2. Activate the plugin
  3. Start editing posts – duplicate slugs will be detected automatically

FAQ

Does this work with custom post types?

Yes. It checks all post types when detecting duplicate slugs, including custom post types.

Does it work with blocks/Gutenberg?

Yes, fully supports the block editor and shows notices in real time.

Does it support modals and dynamically loaded fields?

Yes. The plugin uses mutation observers and timers to detect and attach logic even inside SEO plugin modals like Rank Math.

Does it affect site performance?

No. The plugin uses optimized queries with caching to minimize database load.

Can I suggest a feature?

Of course! Open an issue on GitHub: https://github.com/m2mahdavi/unique-slug-checker

Reviews

There are no reviews for this plugin.

Contributors & Developers

“Unique Slug Checker” is open source software. The following people have contributed to this plugin.

Contributors

“Unique Slug Checker” has been translated into 2 locales. Thank you to the translators for their contributions.

Translate “Unique Slug Checker” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

1.4.0

  • Compatibility: WordPress 7.0 support
  • Compatibility: PHP 8.2 and 8.3 support
  • Fix: Removed deprecated get_page_by_path function
  • Performance: Added caching for faster slug checking (30-40% faster)
  • Performance: Optimized database queries
  • Security: Improved nonce verification and data sanitization
  • Feature: Full support for all Custom Post Types
  • Fix: Memory leak prevention in Gutenberg editor
  • Code quality: Better error handling and type hints

1.3.0

  • Fix: Prevent duplicate notices and DOM pollution
  • Fix: Avoid re-attaching handlers to already-processed fields
  • Enhancement: Rank Math modal compatibility (dynamic fields)
  • Enhancement: Clean and concise English comments in JS
  • Improved: More stable and accurate field detection

1.2.0

  • Feature: Full support for Gutenberg (Block Editor)
  • Feature: Show slug status icon in post list
  • Fix: Improved nonce handling and data validation
  • Enhancement: Better AJAX response and UI feedback
  • Improved: SEO plugin support (AIOSEO, Yoast, Rank Math)

1.1.0

  • Added: Slug check status in post list view
  • Added: Alternative slug suggestions
  • Improved: SEO plugin support (Yoast, Rank Math)
  • Improved: Full compatibility with Gutenberg editor

1.0.1

  • Added support for WordPress 6.8.
  • Added multilingual support (8 languages).
  • Improved validation and notices.
  • Minor optimizations.

1.0.0

  • Initial release.
  • Real-time slug validation.
  • Integration with Yoast and Rank Math fields.
  • Base translation and localization setup.