Skip to content

Все для WordPress, веб-розробки — і не тільки

Транслітерація кириличних заголовків у URL-slug

Транслітерація для URL: кириличні заголовки у slug-и

Вставте список заголовків — отримаєте готові slug-и за офіційною українською транслітерацією або за схемою, яку використовують WordPress-плагіни. Інструмент одразу показує колізії: коли два різні заголовки дають однаковий URL.

По одному рядку. Перетягніть сюди .txt або .csv — файл читається локально. Рядки у percent-encoding (%D0%BA%D0%BE%D0%B4) декодуються автоматично, тож можна вставляти адреси прямо з браузера.
Це чотири різні способи записати ті самі літери.
Обрізається по межі слова, а не посеред нього
Обробка гh (КМУ-55) чи g (російська, ГОСТ); хkh / h / x; щshch / sch / shh; иy чи i. Саме тому англомовні slugify-бібліотеки для української непридатні: усередині в них зашита одна таблиця, зазвичай російська, і український текст виходить транслітерованим за чужими правилами. КМУ-55 додатково не передає м’який знак та апостроф і пише зг як zgh, щоб відрізнити від ж.
ОригіналSlugДовжина
Вставте заголовки — по одному в рядок.

Заголовки не залишають ваш браузер — транслітерація виконується локально, без відправки на сервер.

Чому звичайні транслітератори не годяться для URL

Українські онлайн-сервіси транслітерації зроблені для документів: вони передають прізвище «Олександр» як «Oleksandr» і на цьому зупиняються. Для адреси сторінки цього мало — потрібен ще нижній регістр, заміна пробілів і пунктуації на дефіси, обрізання по межі слова і перевірка на повтори. Друга проблема — англомовні бібліотеки slugify не розрізняють українську і російську. Це критично, бо одні й ті самі кириличні літери транслітеруються по-різному: українська «г» це h, російська — g; українська «и» це y, російська — i. Бібліотека, налаштована на російську, зробить з «Гриби» слово «Griby» замість «Hryby». Третє — колізії. Якщо два заголовки дають однаковий slug, WordPress мовчки додасть у кінець «-2». Ви дізнаєтесь про це, лише коли побачите дивну адресу в пошуку. Інструмент підсвічує такі випадки заздалегідь. Офіційна українська транслітерація закріплена постановою Кабінету Міністрів №55 від 27 січня 2010 року. За нею м’який знак і апостроф не передаються взагалі, а сполучення «зг» передається як «zgh», щоб відрізнити його від «ж».

Часті питання