Skip to content
PN Scripts

WordPress

Bukvar

Bulgarian Cyrillic slugs and upload file names in Latin, by the official Streamlined System, plus a batch tool that converts existing slugs with a dry run and 301 redirects.

  • WordPress
  • PHP 8.1+
  • WP-CLI
  • Coming soon

Coming soon

Not published on its store yet, so there is no buy or download link. PN Scripts does not take payment for it here.

Bukvar dry run in the WordPress admin listing posts and pages with their Cyrillic slugs and the new Latin slugs

What it solves

The gap

WordPress keeps Cyrillic slugs as long percent-encoded addresses that are hard to read, share and type, and Cyrillic file names cause trouble in links, backups and some hosts. Generic transliteration plugins use Russian rules, which are wrong for Bulgarian.

What it is

Bukvar applies the Bulgarian Streamlined System to every new slug and upload, and converts the slugs a site already has with a dry run, batch processing and 301 redirects from the old addresses.

How you use it

Correct Bulgarian transliteration, a safe way to convert an existing site, and redirects that use WordPress's own mechanism where it exists.

For Bulgarian WordPress sites that want readable Latin addresses written by the official rules, without losing the traffic of the old Cyrillic ones.

Who it is for

Use it when

  • A Bulgarian blog or shop that wants Latin addresses for every new post and product category
  • A site with years of Cyrillic slugs that needs to switch without broken links
  • A media library where uploaded files should get safe Latin names

Built for

  • Owners and developers of Bulgarian WordPress and WooCommerce sites
  • Agencies that migrate Bulgarian sites and want a scripted, repeatable conversion

What is inside

The Act's rules, not Russian ones

Bulgarian has its own official transliteration: щ is sht, ъ is a and the final "ия" is ia. Bukvar implements that table and those rules, keeps Bulgaria for the state name, and follows the capitals of each word, so ЩАСТИЕ becomes SHTASTIE and Щастие becomes Shtastie.

New content

From activation on, every slug WordPress saves for a post, page, custom post type, term or attachment is written in Latin, and so is every uploaded file name. Lookups of existing Cyrillic slugs are left alone, so pages you have not converted yet keep working.

Existing content

The conversion tool counts what is left, lists every planned change in a dry run and then converts in batches. Posts get the _wp_old_slug record that WordPress itself reads to redirect; pages, hierarchical post types and terms are redirected by Bukvar with a 301.

Russian and Ukrainian

Two optional tables cover words in those languages. A word with ы, э or ё is read as Russian, a word with і, ї, є or ґ as Ukrainian by the national system of 2010, including its word-initial forms and the zgh rule. Either alphabet can also be the default.

Specs

Availability
Coming soon
Vendor
PN Scripts
Type
Plugin
Platforms
WordPress
Pricing
One-time purchase Price to be announced.
Deployment
Download (installable plugin ZIP)
Maturity
v1.0.0

Compatibility

Platform or runtime Supported versions Tested up to
WordPress 6.5 or newer 7.1.3
PHP 8.1 or newer 8.4

Stack

  • WordPress
  • PHP 8.1+
  • WP-CLI

Bukvar is coming soon

It is finished and tested. It is not on sale yet; this page will say where to get it when it is.

Coming soon

Not published on its store yet, so there is no buy or download link. PN Scripts does not take payment for it here.

Questions

A WordPress plugin that writes Cyrillic slugs and upload file names in Latin by the Bulgarian Transliteration Act, and converts the existing Cyrillic slugs of a site with a dry run and 301 redirects.

WordPress and PHP 8.1 or newer with the mbstring extension. It was tested on WordPress 7.1.3 with PHP 8.4. WP-CLI is optional.

It does not rename files already on disk, it does not translate text, and it does not change addresses in post content or menus written by hand as full URLs; those old links are covered by the 301 redirects.

The transliteration is a separate PHP class tested with 95 PHPUnit cases, and the plugin was run on a throwaway WordPress site with a script that checks new slugs, file names, the conversion and the HTTP redirects. Created with AI assistance; the transliteration rules were checked by PN Scripts with 95 PHPUnit cases, and the plugin with a scripted smoke test on a real WordPress 7.1.3 site, including HTTP checks of the redirects.

It is not on sale yet. When it is, this page will link to the store; PN Scripts does not take payment on this site.