Cyr-To-Lat
by Sergey Biryukov 4.7 (97 reviews)

Cyr-To-Lat

Convert Non-Latin characters in post, page and term slugs to Latin characters.

Compatible with WP 6.9
v6.6.0 Current Version v6.6.0
Updated 1 month ago Last Update on 01 Dec, 2025
Synced 17 hours ago Last Synced on
Rank
#204
No change
Active Installs
300K+
-2%
KW Avg Position
40
No change
Downloads
3M
+618 today
Support Resolved
100%
No change
Rating
94%
Review 4.7 out of 5
4.7 (97 reviews)

Next Milestone 400K

Total Progress -4400%
300K+ 400K+
45
Ranks to Climb
-
Growth Needed
8,000,000
Active Installs
Pro

Unlock Exact Install Count

See the precise estimated active installs for this plugin, calculated from real-time ranking data.

  • Exact install estimates within tiers
  • Track install growth over time
  • Milestone progress predictions
Upgrade to Pro
Need 4,500,000 more installs to reach 400K+

Rank Changes

184 194 204 214 224 14-01-2026 15-01-2026 16-01-2026 17-01-2026 18-01-2026 19-01-2026 20-01-2026 21-01-2026
184 194 204 214 224 06-01-2026 07-01-2026 08-01-2026 09-01-2026 10-01-2026 11-01-2026 12-01-2026 13-01-2026 14-01-2026 15-01-2026 16-01-2026 17-01-2026 18-01-2026 19-01-2026 20-01-2026 21-01-2026
184 194 204 214 224 22-12-2025 23-12-2025 24-12-2025 25-12-2025 26-12-2025 27-12-2025 28-12-2025 29-12-2025 30-12-2025 31-12-2025 01-01-2026 02-01-2026 03-01-2026 04-01-2026 05-01-2026 06-01-2026 07-01-2026 08-01-2026 09-01-2026 10-01-2026 11-01-2026 12-01-2026 13-01-2026 14-01-2026 15-01-2026 16-01-2026 17-01-2026 18-01-2026 19-01-2026 20-01-2026 21-01-2026
184 194 204 214 224 23-10-2025 24-10-2025 25-10-2025 26-10-2025 27-10-2025 28-10-2025 29-10-2025 30-10-2025 31-10-2025 01-11-2025 02-11-2025 03-11-2025 04-11-2025 05-11-2025 06-11-2025 07-11-2025 08-11-2025 09-11-2025 10-11-2025 11-11-2025 12-11-2025 13-11-2025 14-11-2025 15-11-2025 16-11-2025 17-11-2025 18-11-2025 19-11-2025 20-11-2025 21-11-2025 22-11-2025 23-11-2025 24-11-2025 25-11-2025 26-11-2025 27-11-2025 28-11-2025 29-11-2025 30-11-2025 01-12-2025 02-12-2025 03-12-2025 04-12-2025 05-12-2025 06-12-2025 07-12-2025 08-12-2025 09-12-2025 10-12-2025 11-12-2025 12-12-2025 13-12-2025 14-12-2025 15-12-2025 16-12-2025 17-12-2025 18-12-2025 19-12-2025 20-12-2025 21-12-2025 22-12-2025 23-12-2025 24-12-2025 25-12-2025 26-12-2025 27-12-2025 28-12-2025 29-12-2025 30-12-2025 31-12-2025 01-01-2026 02-01-2026 03-01-2026 04-01-2026 05-01-2026 06-01-2026 07-01-2026 08-01-2026 09-01-2026 10-01-2026 11-01-2026 12-01-2026 13-01-2026 14-01-2026 15-01-2026 16-01-2026 17-01-2026 18-01-2026 19-01-2026 20-01-2026 21-01-2026
Current #204
Change
Best #

Upgrade to Pro

Unlock 30-day and 90-day rank history charts with a Pro subscription.

Upgrade Now

Active Installs Growth

Active Installs 0,000,000+
Growth +0.0%
Peak 0,000,000

Downloads Growth

500 600 700 800 900 14-01-2026 15-01-2026 16-01-2026 17-01-2026 18-01-2026 19-01-2026 20-01-2026 21-01-2026
400 500 600 700 800 900 1K 1.1K 06-01-2026 07-01-2026 08-01-2026 09-01-2026 10-01-2026 11-01-2026 12-01-2026 13-01-2026 14-01-2026 15-01-2026 16-01-2026 17-01-2026 18-01-2026 19-01-2026 20-01-2026 21-01-2026
200 400 600 800 1K 1.2K 22-12-2025 23-12-2025 24-12-2025 25-12-2025 26-12-2025 27-12-2025 28-12-2025 29-12-2025 30-12-2025 31-12-2025 01-01-2026 02-01-2026 03-01-2026 04-01-2026 05-01-2026 06-01-2026 07-01-2026 08-01-2026 09-01-2026 10-01-2026 11-01-2026 12-01-2026 13-01-2026 14-01-2026 15-01-2026 16-01-2026 17-01-2026 18-01-2026 19-01-2026 20-01-2026 21-01-2026
0 5K 10K 15K 20K 25K 30K 35K 23-10-2025 26-10-2025 29-10-2025 01-11-2025 04-11-2025 07-11-2025 10-11-2025 13-11-2025 16-11-2025 19-11-2025 22-11-2025 25-11-2025 28-11-2025 01-12-2025 04-12-2025 07-12-2025 10-12-2025 13-12-2025 16-12-2025 19-12-2025 22-12-2025 25-12-2025 28-12-2025 31-12-2025 03-01-2026 06-01-2026 09-01-2026 12-01-2026 15-01-2026 18-01-2026 21-01-2026
0 5K 10K 15K 20K 25K 30K 35K 21-01-2025 02-02-2025 14-02-2025 26-02-2025 10-03-2025 22-03-2025 03-04-2025 15-04-2025 27-04-2025 09-05-2025 21-05-2025 02-06-2025 14-06-2025 26-06-2025 08-07-2025 20-07-2025 01-08-2025 13-08-2025 25-08-2025 06-09-2025 18-09-2025 30-09-2025 12-10-2025 24-10-2025 05-11-2025 17-11-2025 29-11-2025 11-12-2025 23-12-2025 04-01-2026 16-01-2026 21-01-2026
Downloads
Growth
Peak

Upgrade to Pro

Unlock 30-day, 90-day, and yearly download history charts with a Pro subscription.

Upgrade Now

Reviews & Ratings

4.7
97 reviews
Overall 94%
5
84 (87%)
4
4 (4%)
3
3 (3%)
2
1 (1%)
1
5 (5%)

Tracked Keywords

Showing 2 of 2
Keyword Position Change Type Updated
transliteration 26 Tag 1 month ago
cyrillic 54 Tag 1 month ago

Unlock Keyword Analytics

Track keyword rankings, search positions, and discover new ranking opportunities with a Pro subscription.

  • Full keyword position tracking
  • Historical ranking data
  • Competitor keyword analysis
Upgrade to Pro

Support Threads Overview

Resolved
Unresolved
2
Total Threads
2
Resolved
0
Unresolved
100%
Resolution Rate

Track This Plugin

Get detailed analytics, keyword tracking, and position alerts delivered to your inbox.

Start Tracking Free

Plugin Details

Version
6.6.0
Last Updated
Dec 01, 2025
Requires WP
5.3+
Tested Up To
6.9
PHP Version
7.2 or higher

Support & Rating

Rating
★ ★ ★ ★ ★ 4.7
Reviews
97
Support Threads
2
Resolved
100%

Keywords

Upgrade to Pro

Unlock keyword rankings, search positions, and detailed analytics with a Pro subscription.

Upgrade Now

Frequently Asked Questions

Common questions about Cyr-To-Lat

/**
* Modify conversion table.
*
* @param array $table Conversion table.
*
* @return array
*/
function my_ctl_table( $table ) {
$table['Ъ'] = 'U';
$table['ъ'] = 'u';

return $table;
}
add_filter( 'ctl_table', 'my_ctl_table' );

How can I redefine non-standard locale?
For instance, if your non-standard locale is uk_UA, you can redefine it to uk by adding the following code to your theme's function.php file:

/**
* Use non-standard locale.
*
* @param string $locale Current locale.
*
* @return string
*/
function my_ctl_locale( $locale ) {
if ( 'uk_UA' === $locale ) {
return 'uk';
}

return $locale;
}
add_filter( 'ctl_locale', 'my_ctl_locale' );
/**
* Filter title before sanitizing.
*
* @param string|false $result Sanitized title.
* @param string $title Title.
*
* @return string|false
*/
function my_ctl_pre_sanitize_title( $result, $title ) {
if ( 'пиво' === $title ) {
return 'beer';
}

return $result;
}
add_filter( 'ctl_pre_sanitize_title', 10, 2 );
/**
* Filter filename before sanitizing.
*
* @param string|false $result Sanitized filename.
* @param string $filename Title.
*
* @return string|false
*/
function my_ctl_pre_sanitize_filename( $result, $filename ) {
if ( 'пиво' === $filename ) {
return 'beer';
}

return $result;
}
add_filter( 'ctl_pre_sanitize_filename', 10, 2 );

How can I allow the plugin to work on the frontend?
Add the following code to your plugin's (or mu-plugin's) main file. This code won't work being added to a theme's functions.php file.

/**
* Filter status allowed Cyr To Lat plugin to work.
*
* @param bool $allowed
*
* @return bool
*/
function my_ctl_allow( bool $allowed ): bool {
$uri = isset( $_SERVER['REQUEST_URI'] ) ?
sanitize_url( wp_unslash( $_SERVER['REQUEST_URI'] ) ) :
'';

if ( 0 === strpos( $uri, '/divi-comments' ) ) {
return true;
}

return $allowed;
}

add_filter( 'ctl_allow', 'my_ctl_allow' );
/**
* Filter post types allowed for background conversion.
*
* @param array $post_types Allowed post types.
*
* @return array
*/
function my_ctl_post_types( $post_types ) {
return [
'post' => 'post',
'page' => 'page',
'attachment' => 'attachment',
'product' => 'product',
'nav_menu_item' => 'nav_menu_item',
];
}
add_filter( 'ctl_post_types', 'my_ctl_post_types' );
wp cyr2lat regenerate [--post_type=<post_type>] [--post_status=<post_status>]

Where
-post_type is a list of post types,
-post_status is a list of post statuses.
How can I regenerate thumbnails safely?
Regeneration of thumbnails with the command wp media regenerate can break links in old posts as file names become transliterated.

To avoid it, deactivate the cyr2lat plugin during regeneration:

wp media regenerate --skip-plugins=cyr2lat
Join in on our GitHub repository
Join in on our Telegram Group

Where do I report security bugs found in this plugin?
Please report security bugs found in the source code of the undefined plugin through the Patchstack Vulnerability Disclosure  Program. The Patchstack team will assist you with verification, CVE assignment, and notify the developers of this plugin.

Sign In / Register

You need to sign in or register to use this feature.