Title: Doppelslug
Author: ararai
Published: <strong>October 15, 2026</strong>
Last modified: October 15, 2026

---

Search plugins

![](https://ps.w.org/doppelslug/assets/banner-772x250.png?rev=3748217)

![](https://ps.w.org/doppelslug/assets/icon-256x256.png?rev=3748217)

# Doppelslug

 By [ararai](https://profiles.wordpress.org/ararai/)

[Download](https://downloads.wordpress.org/plugin/doppelslug.1.0.0.zip)

 * [Details](https://kea.wordpress.org/plugins/doppelslug/#description)
 * [Reviews](https://kea.wordpress.org/plugins/doppelslug/#reviews)
 *  [Installation](https://kea.wordpress.org/plugins/doppelslug/#installation)
 * [Development](https://kea.wordpress.org/plugins/doppelslug/#developers)

 [Support](https://wordpress.org/support/plugin/doppelslug/)

## Description

When a visitor opens an address that doesn’t exist, WordPress tries to help: it 
looks for a published post or page whose slug _starts with_ what was typed, and 
redirects there.

That works well until two slugs start the same way:

 * example.com/how-write-book
 * example.com/how-write-blog

Now example.com/how-write-b matches both. WordPress redirects to whichever one the
database returns first. There is no rule for which one wins, and publishing a new
post can quietly change where an old, shortened link goes.

Doppelslug catches this while you write.

#### In the editor

 * **Block editor:** a warning notice, a “Lookalike URLs” panel in the post sidebar,
   and a check in the pre-publish panel.
 * **Classic Editor:** a “Lookalike URLs” box in the sidebar that updates when the
   slug changes.

Each warning shows the address visitors could type, the posts it could open, and
where it leads right now.

#### Optional fix

Under Settings  Doppelslug, choose what happens to addresses that don’t exist:

 * **Let WordPress decide** (default): nothing changes.
 * **Redirect only when one post matches:** unambiguous addresses still redirect,
   and an exact slug match always wins. Ambiguous ones show the Not Found page instead
   of a random post.
 * **Redirect only exact slug matches:** still finds posts that moved to a different
   date or parent page.
 * **Never redirect.**

You can also choose how similar two slugs must be before a warning appears.

#### Light by design

 * No custom tables, no tracking, no external requests.
 * On the front end it adds three small filters that run only on Not Found requests.
 * An editor check is a few indexed queries, only for the post you are editing.

## Screenshots

[⌊Block editor: the warning notice and the Lookalike URLs panel, showing the shared
address, the post it could open, and where it leads today.⌉⌊Block editor: the warning
notice and the Lookalike URLs panel, showing the shared address, the post it could
open, and where it leads today.⌉[

Block editor: the warning notice and the Lookalike URLs panel, showing the shared
address, the post it could open, and where it leads today.

[⌊The pre-publish check lists lookalike addresses before you publish.⌉⌊The pre-publish
check lists lookalike addresses before you publish.⌉[

The pre-publish check lists lookalike addresses before you publish.

[⌊Classic Editor: the Lookalike URLs box appears only when there is something to
warn about.⌉⌊Classic Editor: the Lookalike URLs box appears only when there is something
to warn about.⌉[

Classic Editor: the Lookalike URLs box appears only when there is something to warn
about.

[⌊Settings → Doppelslug: choose how addresses that don't exist are handled, and 
how sensitive the warnings are.⌉⌊Settings → Doppelslug: choose how addresses that
don't exist are handled, and how sensitive the warnings are.⌉[

Settings  Doppelslug: choose how addresses that don’t exist are handled, and how
sensitive the warnings are.

## Installation

 1. Install the plugin from Plugins  Add New, or upload the `doppelslug` folder to `/
    wp-content/plugins/`.
 2. Activate it.
 3. Edit any post or page. A warning appears when its slug starts like another published
    one.
 4. Optional: review Settings  Doppelslug.

## FAQ

### Which post does WordPress open for a partial address?

WordPress queries for published content whose slug starts with the address and takes
the first row the database returns. The query has no sort order, so with several
matches the result depends on the database. Doppelslug runs the same query to show
you where an address leads right now.

### Does it change my redirects?

Only if you choose a different option under Settings  Doppelslug. By default it 
only warns.

### Which content is checked?

Everything WordPress itself may redirect to: published posts, pages, and public 
custom post types.

### Does it work with plain permalinks?

WordPress only completes partial addresses when pretty permalinks are on. With plain
permalinks there is nothing to warn about, so Doppelslug stays quiet.

### Does it support non-Latin slugs?

Yes. Slugs are compared character by character after decoding, so Persian, Arabic,
Cyrillic, Chinese and other slugs work.

### Which languages does it speak?

The plugin is written in English and fully translatable, right-to-left languages
included. Translations come from translate.wordpress.org, where a Persian (فارسی)
translation is provided; WordPress installs them automatically for your site or 
profile language. Languages without a translation show English.

### Who sees the warnings?

Anyone who can edit the post. Only administrators see the link to the settings.

### What does it store?

One option holding your two settings. It is removed when you delete the plugin.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Doppelslug” is open source software. The following people have contributed to this
plugin.

Contributors

 *   [ ararai ](https://profiles.wordpress.org/ararai/)

[Translate “Doppelslug” into your language.](https://translate.wordpress.org/projects/wp-plugins/doppelslug)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/doppelslug/), check
out the [SVN repository](https://plugins.svn.wordpress.org/doppelslug/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/doppelslug/) by 
[RSS](https://plugins.trac.wordpress.org/log/doppelslug/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.0

 * First release.

## Meta

 *  Version **1.0.0**
 *  Last updated **24 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.6 or higher **
 *  Tested up to **7.1.3**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/doppelslug/)
 * Tags
 * [404](https://kea.wordpress.org/plugins/tags/404/)[permalink](https://kea.wordpress.org/plugins/tags/permalink/)
   [redirect](https://kea.wordpress.org/plugins/tags/redirect/)[seo](https://kea.wordpress.org/plugins/tags/seo/)
   [slug](https://kea.wordpress.org/plugins/tags/slug/)
 *  [Advanced View](https://kea.wordpress.org/plugins/doppelslug/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/doppelslug/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/doppelslug/reviews/)

## Contributors

 *   [ ararai ](https://profiles.wordpress.org/ararai/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/doppelslug/)