Generátor URL slugů
Vstup
Výstup
Technické detaily
Jak funguje generátor URL slugů
Co nástroj dělá
Generátor slugů převádí libovolný text na slugs vhodné pro URL tím, že převede vstup na malá písmena, nahradí mezery a speciální znaky pomlčkami, odstraní znaky, které nejsou alfanumerické nebo pomlčky, a sloučí po sobě jdoucí pomlčky. Výsledkem je čistý, čitelný řetězec bezpečný pro použití v URL, názvech souborů a názvech tříd CSS. Například „Hello World! (2024)“ se změní na „hello-world-2024“.
Běžné případy použití pro vývojáře
Vývojáři používají generátory slugů při tvorbě CMS platforem, blogovacích systémů nebo e‑commerce webů, které odvozují URL cesty z názvů zadaných uživateli. Konzistentní slugování zajišťuje, že URL stránek jsou stabilní, čitelné pro lidi a bez znaků, které vyžadují percent-encoding. Hodí se také pro generování názvů tříd CSS, hodnot databázových sloupců a cest v souborovém systému z dynamického obsahu.
Datové formáty, typy nebo varianty
Základní slugs používají pouze malá písmena ASCII, číslice a pomlčky. Rozšířené slugování může zachovat písmena Unicode (např. znaky s diakritikou transliterované na ASCII ekvivalenty) pro vícejazyčný obsah. Některé implementace umožňují místo pomlček používat podtržítka. Maximální bezpečná délka slugu pro URL je obvykle 75–100 znaků, i když se to liší podle platformy.
Běžné nástrahy a okrajové případy
Dva různé názvy mohou vytvořit stejný slug (např. „Foo Bar“ a „Foo-Bar“ se oba změní na „foo-bar“), takže aplikace musí řešit kolize slugů přidáním číselné přípony. Nelatinská písma vyžadují transliteraci před slugováním, jinak bude výstup prázdný. Úvodní a koncové pomlčky by se měly oříznout. Změna slugu publikované stránky rozbije příchozí odkazy, proto by se se slugy mělo zacházet jako s neměnnými po publikaci.
Kdy použít tento nástroj vs. kód
Použijte tento nástroj v prohlížeči pro rychlé jednorázové generování slugů při tvorbě obsahu nebo prototypování. Pro produkční aplikace generujte slugs programově pomocí knihoven jako slugify (JavaScript/Python) nebo Stringex (Ruby), aby se detekce kolizí, transliterace Unicode a limity délky řešily konzistentně v logice vaší aplikace.