Генератор URL Slug'ів

Перетворюйте будь-які заголовки на чисті URL-слаги у браузері — по одному або цілими списками. Справжні стандарти транслітерації кирилиці, правила, що редагуються, та жодних завантажень на сервер.

Заповніть текст для конвертації
Розширені опції
Правила транслітерації
Символ Латиниця Позиція в слові
Аа
Бб
Вв
ГгВ інших позиціях
Після літери “з”
Ґґ
Дд
Ее
ЄєНа початку слова
В інших позиціях
Жж
Зз
Ии
Іі
ЇїНа початку слова
В інших позиціях
ЙйНа початку слова
В інших позиціях
Кк
Лл
Мм
Нн
Оо
Пп
Рр
Сс
Тт
Уу
Фф
Хх
Цц
Чч
Шш
Щщ
Ьь
ЮюНа початку слова
В інших позиціях
ЯяНа початку слова
В інших позиціях

Апостроф і м'який знак відкидаються і не починають нового слова.

Слаг — це зрозумілий хвіст веб-адреси, як-от my-first-post у example.com/blog/my-first-post. Це частина, яку людина читає перед тим, як клікнути, і яку пошукова система сприймає як короткий опис вмісту сторінки. Саме тому він заслуговує більшої уваги, ніж ідентифікатор бази даних чи дата. Цей безкоштовний генератор перетворює будь-який текст на слаг: вставте заголовок у поле «Текст для конвертації», натисніть «Згенерувати», і результат з'явиться поруч із кнопкою копіювання. За замовчуванням увімкнені налаштування, які потрібні більшості сайтів — малі літери, дефіси між словами, видалення поширених службових слів, транслітерація нелатинських символів. Готовий до використання слаг знаходиться на відстані одного кліка, і кожне з цих рішень можна змінити.

Усе відбувається на вашому пристрої. Сторінка завантажує невеликий JavaScript-рушій і запускає його локально: ваші заголовки ніколи не завантажуються в мережу, не логуються, а інструмент продовжує працювати навіть без інтернету. Саме тому результат оновлюється щомиті, коли ви змінюєте налаштування. Порядок обробки варто знати, адже він робить результат передбачуваним: вставлене посилання спочатку скорочується до останнього сегмента шляху, потім текст переводиться у малі літери, далі видаляються стоп-слова, транслітеруються нелатинські символи, після чого, за вашим бажанням, видаляються числа та спецсимволи. Усе, що залишилося, з'єднується вибраним роздільником, обрізається до максимальної довжини, і, нарешті, дублікати отримують числовий суфікс. «Текст для конвертації» приймає до 500 000 символів за раз — це кілька тисяч заголовків статей.

Один рядок на вході — один слаг на виході. Вставте цілий список заголовків, і кожен рядок стане окремим пронумерованим слагом із вихідним текстом сірого кольору над ним. Так навіть у списку з п'ятдесяти елементів легко зрозуміти, якому заголовку належить слаг. Список, який уже лежить у файлі, не мусить іти через буфер обміну: кнопка «Завантажити з файлу» біля поля вводу відкриває звичайний текстовий файл — .txt, .csv, .md, .json і подібні — і підставляє його вміст у поле. Браузер читає цей файл так само, як читає те, що ви набираєте, і нікуди його не відправляє. «Ділити ввід за» визначає, як список розрізається на частини. «Автоматично» стоїть за замовчуванням: новий рядок завжди розділяє елементи, тоді як кома ділить їх лише тоді, коли весь ввід — це один рядок, частини якого виглядають як самостійні значення. Тому «ціна 3,5 грн» та «Розділ 5: результати, висновки» залишаються цілими і не розпадаються на фрагменти. «Новий рядок», «Кома» та «Пробіл» дозволяють примусово вказати роздільник, якщо ви точно знаєте формат своїх даних. «Формат результату» визначає, як саме ви отримаєте список: по одному в рядку, через пробіл чи через кому. І «Скопіювати все», і «Зберегти у файл» дотримуються цього формату. «Історія» зберігає останні 10 конвертацій у вашому браузері, тож список, який ви обробили годину тому, усе ще там.

Нелатинський текст — це те, що більшість генераторів слагів обробляє приблизно правильно, і лише одиниці — ідеально. Веб-адреса може містити літери будь-якого алфавіту, і пошукові системи читають їх, але багато сайтів усе ще віддають перевагу чистому ASCII, який копіюється, вставляється та проходить крізь будь-яку систему без percent-encoding. Якщо вам потрібен ASCII, кирилицю, грецьку, арабську, китайську та європейські літери з діакритикою треба конвертувати, і справжнє питання — за чиїми правилами. Ця сторінка вирішує це у два етапи. Загальний етап охоплює всі системи письма: бібліотека транслітерації знаходить логічний ASCII-відповідник майже для кожного символу, який ви можете ввести. Цей шар працює для символів, яких не покриває жодна таблиця. Специфічний етап — це набір ручних таблиць для мов, де загальна відповідь не збігається з тою, яку країна реально використовує: українська — одна з таких мов, і список поповнюється в міру того, як інструмент доходить до мов, яким потрібна власна таблиця. Якщо вибрати одну з них, її таблиця завантажується в сітку під назвою «Правила транслітерації». Там кожна літера — це текстове поле, яке можна змінити, а кнопка «Скинути правила до типових» повертає все як було. Українська таблиця слідує постанові Кабінету Міністрів № 55 від 2010 року — стандарту, за яким друкують закордонні паспорти. Вона враховує деталі, які легко пропустити: зг стає zgh, щоб не плутатися з ж; є, ї, й, ю та я мають одну форму на початку слова і іншу — всередині; а апостроф і м'який знак відкидаються, не починаючи нового слова, тому Знам'янка перетворюється на znamianka, а не znamyanka. Німецька мова за замовчуванням використовує розширений варіант ä → ae, ö → oe, ü → ue, яким послуговуються німецькі адреси, але є і простий варіант ä → a, якщо ви віддаєте йому перевагу.

Функція «Видалити стоп-слова» ввімкнена за замовчуванням. Вона відкидає короткі зв'язкові слова, які зазвичай подовжують слаг, не додаючи йому сенсу. Зазвичай, але не завжди: «статті про ШІ» і «статті для ШІ» відрізняються лише стоп-словом, тому перевіряйте результат, коли маленьке слово несе ключовий зміст. Список у полі «Стоп-слова» повністю редагується і надходить уже заповненим: англійський список плюс список для мови сторінки, на якій ви перебуваєте. Тому українська сторінка знає слова в, на, та і, а німецька — der, die та das. Додавайте власні слова, видаляйте ті, що хочете зберегти, або повністю вимкніть функцію — тоді поле стане сірим, не вдаючи, що воно досі на щось впливає. Два чесні зауваження з цього приводу. Видалення стоп-слів — це скоріше про охайність, ніж про важелі ранжування: ви отримуєте коротшу і чистішу адресу, а не кращу позицію. І якщо кожне слово в заголовку виявиться у списку, чесним результатом буде порожнеча, тому інструмент повідомить вам про це, замість того, щоб просто видати порожнє поле.

Решта перемикачів визначають форму. «Роздільник у слагу» відповідає за те, що стоятиме між словами. Дефіс за замовчуванням відповідає власній рекомендації Google розділяти слова в URL дефісами, а не підкресленнями. «Підкреслення (_)» залишили для систем, які цього вимагають. «Малі літери» ввімкнено, оскільки більшість серверів розрізняють регістр в адресах, а змішаний регістр — це простий спосіб отримати два URL для однієї сторінки. «Видалити спецсимволи» прибирає все, що не є літерою, цифрою, пробілом, дефісом чи підкресленням. Саме це не пускає пунктуацію, лапки та емодзі в адресу. Емодзі видаляються ще до транслітерації, щоб ракета випадково не перетворилася на слово rocket. «Видалити числа» вимкнено, адже число у заголовку зазвичай є його частиною. «Максимальна довжина» налаштовується від 10 до 200 із типовим значенням 80. Коли слаг довший, рушій обрізає його на останньому цілому слові, яке поміщається, а не посеред слова; лише одне слово, довше за весь ліміт, доводиться обрізати всередині. Цифра біля кожного результату — це його довжина в символах, і вона стає червоною після 60 — наш власний орієнтир читабельності, а не обмеження пошукових систем: далі слаг стає важким для швидкого сприйняття і незручним для вставки в повідомлення.

Є ще два перемикачі, які перетворюють масову конвертацію на роботу в один клік. «Унікальні слаги» ловить випадки, коли два різні заголовки зводяться до однакового слага — «Топ 10 порад» і «Топ-10 порад» обидва стають top-10-porad — і додає другому суфікс -2, а третьому -3. При цьому базова частина скорочується першою, якщо суфікс виштовхує загальну довжину за встановлений максимум. Дві сторінки за однією адресою — це проблема, яку набагато дешевше виловити в цьому списку, ніж у вашій CMS. «Слаг зі вставленого посилання» працює у зворотному напрямку: вставте повний лінк, і інструмент візьме останню частину шляху, відкине параметри запиту та закінчення на зразок .html чи .php, а також розкодує percent-encoding. Так посилання на Вікіпедію, що закінчується на %D0%9B%D1%8C%D0%B2%D1%96%D0%B2, перетвориться на lviv, а не на набір шістнадцяткових цифр. Це працює лише тоді, коли весь рядок є посиланням, тож адреса всередині речення залишиться текстом.

Чому варто вибрати цей генератор слагів?

Слаги потрібні скрізь, де сторінка має мати читабельну адресу. Блог або новинний сайт перетворює на них кожен заголовок. Саме під цей сценарій створювався інструмент: вставляєте заголовки за тиждень — отримуєте URL-адреси за тиждень. Інтернет-магазин робить те саме для назв товарів і категорій, зазвичай масово після імпорту, і часто мовою, літери якої магазин бажає бачити як чистий ASCII. Документація та бази знань так само створюють якорі та імена файлів. Окрім веб-адрес, такий самий чистий рядок тексту — це те, що потрібно для імені файлу, яке не зламається в іншій операційній системі, ключа бази даних, який людина зможе прочитати в логах, назви гілки коду, імені зображення в медіабібліотеці або ідентифікатора розділу в генераторі статичних сайтів. Будь-яке місце, де зрозуміле для людини ім'я має вижити після потрапляння в машинно-читане поле — це місце для слага.

Є кілька обмежень, про які варто знати перед використанням. Це генератор, а не валідатор: він не перевірятиме, чи зайнятий уже слаг на вашому сайті, бо не знає, що там є. Унікальність гарантується лише в межах поточного списку. Редиректи — теж ваша турбота. Зміна слага опублікованої сторінки ламає її стару адресу, і це рішення для вашої CMS, а не для цього інструмента. Кнопка «Зберегти у файл» записує звичайний текст, а не CSV чи JSON. Автоматичний поділ робить припущення щодо ком, яке є правильним майже завжди, але не завжди. Саме тому «Ділити ввід за» дозволяє вам це змінити. І транслітерація — це домовленість, а не переклад. Мюнхен стає miunkhen, а не Munich. Тому коли сторінка має усталену назву цільовою мовою, ця назва буде кращим слагом, ніж будь-яка автоматична конвертація оригіналу.

FAQ

Як створити URL-слаг?

Вставте заголовок у поле «Текст для конвертації» і натисніть «Згенерувати». Результат з'явиться поруч із кнопкою копіювання, перетворений з налаштуваннями, які потрібні більшості сайтів: малі літери, дефіси між словами, видалення службових слів та транслітерація нелатинських символів. Кожне з них — це перемикач, який ви можете змінити. Розділ «Розширені опції» містить решту: роздільник, максимальну довжину, список стоп-слів та правила транслітерації.

Чи можна конвертувати цілий список заголовків одразу?

Так. Вставте до 500 000 символів — це кілька тисяч заголовків — або візьміть їх прямо з файлу кнопкою «Завантажити з файлу» біля поля вводу: браузер прочитає його локально, нікуди не відправляючи. Кожен рядок стане окремим слагом. Вони будуть пронумеровані, а вихідний заголовок відображатиметься над кожним, щоб ви могли їх зіставити. «Ділити ввід за» керує тим, як розбивається список. «Формат результату» визначає, чи повернеться набір у вигляді рядків, через пробіл чи через кому. І «Скопіювати все», і «Зберегти у файл» забирають усе цілком за один раз.

Як генератор обробляє кирилицю та літери з діакритикою?

Він транслітерує їх в ASCII у два етапи. Будь-яка система письма — кирилиця, грецька, арабська, китайська чи латиниця з наголосами — покривається загальною бібліотекою транслітерації. Саме її використовує варіант «Автоматично». Поверх неї накладені ручні таблиці для мов, де загальна відповідь не збігається з тою, яку країна реально використовує, і українська — одна з них. Виберіть потрібну в списку «Варіант транслітерації», і її таблиця завантажиться, де кожну літеру можна редагувати.

Який стандарт транслітерації використовується для української мови?

Постанова Кабінету Міністрів № 55 від 27 січня 2010 року — стандарт, який використовується в українських паспортах. Це включає деталі, у яких легко помилитися: зг стає zgh, щоб не плутатися з ж; літери є, ї, й, ю та я приймають одну форму на початку слова і іншу — всередині; апостроф і м'який знак відкидаються, не починаючи нового слова, тому Знам'янка стає znamianka, а не znamyanka. Доступний також другий варіант, де завжди використовуються ya, yu та yi, якщо ви віддаєте перевагу простішому вигляду.

Чи можна змінити те, як транслітерується конкретна літера?

Так. Відкрийте «Правила транслітерації», і кожна літера в таблиці стане текстовим полем. Введіть те, на що вона має перетворитися, і результат оновлюватиметься під час набору. Очищення поля повністю видаляє літеру. Ваші правки запам'ятовуються у вашому браузері на наступний раз, а кнопка «Скинути правила до типових» відновлює стандартну таблицю, коли вона знову вам знадобиться.

Що таке стоп-слова і чи варто їх видаляти?

Це короткі зв'язкові слова — на кшталт «та», «і», «в», «на» — які роблять слаг довшим, не роблячи його зрозумілішим. Їх видалення ввімкнено за замовчуванням, а список у полі «Стоп-слова» можна редагувати. Він уже містить англійські слова плюс слова для мови сторінки, на якій ви перебуваєте. Але будьте чесними щодо користі: це дає коротшу та охайнішу адресу, а не кращу позицію в пошуку. Якщо заголовок повністю складається зі стоп-слів, інструмент повідомить про це, замість того, щоб повернути порожній слаг.

Що краще використовувати у слагу: дефіси чи підкреслення?

Дефіси, якщо тільки щось у вашій системі не вимагає іншого. Google рекомендує дефіси замість підкреслень між словами в URL, і генератор використовує дефіс за замовчуванням саме з цієї причини. Опція «Роздільник у слагу» пропонує підкреслення для систем, яким це необхідно.

Якої довжини має бути URL-слаг?

Достатньо коротким, щоб читатися з першого погляду: перші кілька слів несуть сенс, а решта — це зазвичай просто хвіст речення. Число біля кожного результату — це його довжина в символах. Вона стає червоною після 60 — наш власний орієнтир читабельності, а не ліміт пошуковика — тому що довший слаг стає важким для сприйняття з першого погляду і незручним для вставки в повідомлення. «Максимальна довжина» встановлює жорстку стелю від 10 до 200 символів, за замовчуванням це 80.

Чи розрізає генератор слова навпіл, коли слаг занадто довгий?

Ні, якщо вміщується бодай одне ціле слово. Коли слаг перевищує максимальну довжину, рушій повертається до останнього цілого слова, яке поміщається, і обрізає там, тому скорочений слаг усе ще читається як слова, а не обривається на півслові; лише окреме слово, довше за весь ліміт, обрізається всередині себе. Те саме стосується випадків, коли до дубліката додається числовий суфікс: базова частина спочатку коротшає, щоб готовий слаг не виходив за встановлений вами ліміт.

Що станеться, якщо два заголовки дадуть однаковий слаг?

Опція «Унікальні слаги» ввімкнена за замовчуванням і вирішує цю проблему. Перший випадок зберігає звичайний слаг, другий отримує -2, третій -3 тощо. Це ловить поширену ситуацію, коли два різні заголовки зводяться до одного результату: «Топ 10 порад» і «Топ-10 порад» обидва стають top-10-porad. Якщо вимкнути цю функцію, ви отримаєте сирий результат із дублікатами. Зверніть увагу, що унікальність гарантується лише в межах конвертованого списку. Інструмент не може знати, що вже існує на вашому сайті.

Чи можна вставити URL-адресу замість заголовка?

Так. Опція «Слаг зі вставленого посилання» ввімкнена за замовчуванням. Коли весь рядок є лінком, інструмент витягує останню частину шляху, відкидає параметри запиту та закінчення .html чи .php і розкодовує percent-encoding. Тому адреса Вікіпедії, що закінчується на %D0%9B%D1%8C%D0%B2%D1%96%D0%B2, повертається як lviv, а не як набір шістнадцяткових кодів. Це спрацьовує лише тоді, коли рядок повністю є посиланням, тож URL, наведений усередині речення, оброблятиметься як звичайний текст.

Чи надсилається мій текст на сервер?

Ні. Конвертація відбувається у вашому браузері за допомогою локального JavaScript. Ваш текст ніколи не завантажується й не логується, і щойно сторінка завантажиться, вона працюватиме навіть без підключення до мережі. Неопубліковані заголовки, внутрішні назви продуктів і клієнтські проєкти залишаються на вашому пристрої. Це практична причина обрати локальний інструмент, а не серверний для такого завдання. Аналітика, якщо ви її дозволяєте, фіксує лише факт використання інструмента — і ніколи ваш текст.

Чому моє одне речення розбилося на два слаги?

Тому що в ньому була кома, а параметр «Ділити ввід за» був встановлений на «Автоматично». Цей режим розглядає новий рядок як безперечний роздільник, а кому — як імовірний. Він розбиває текст за комами лише тоді, коли частини одного рядка виглядають як самостійні значення. Десятковий дріб, як-от 3,5, або речення з двокрапкою навмисно залишаються цілими. Якщо заголовок усе ж розбивається там, де не повинен, встановіть «Ділити ввід за» на «Новий рядок», і ввід буде розрізано лише там, де ви насправді натиснули Enter.