اسلاگ بخش خوانای انتهای یک آدرس وب است — مانند my-first-post در example.com/blog/my-first-post. این بخشی است که کاربر میتواند قبل از تصمیمگیری برای کلیک کردن بخواند، و بخشی است که موتور جستجو به عنوان توضیح کوتاهی از محتوای صفحه در نظر میگیرد، به همین دلیل بیشتر از یک شناسه دیتابیس یا تاریخ اهمیت دارد. این ابزار رایگان هر متنی را به یک اسلاگ تبدیل میکند: یک عنوان را در کادر "متن برای تبدیل" جایگذاری کنید، روی "تولید" کلیک کنید و نتیجه همراه با دکمه کپی در کنار آن ظاهر میشود. تنظیمات پیشفرض همان چیزهایی هستند که بیشتر سایتها میخواهند — حروف کوچک، خط تیره بین کلمات، حذف کلمات اضافی رایج و نویسهگردانی حروف غیرلاتین — بنابراین یک اسلاگ قابل استفاده تنها با یک کلیک آماده است، و شما میتوانید هر یک از این تنظیمات را تغییر دهید.
همه چیز در دستگاه خود شما اتفاق میافتد. این صفحه یک موتور کوچک جاوا اسکریپت را بارگیری کرده و آن را به صورت محلی اجرا میکند: عناوین شما هرگز در سروری آپلود یا ثبت نمیشوند و این ابزار حتی در صورت قطع شدن اتصال اینترنت نیز کار میکند. به همین دلیل است که نتیجه به محض تغییر یک تنظیم، بلافاصله بهروزرسانی میشود. دانستن ترتیب انجام کار مهم است، زیرا باعث پیشبینیپذیر شدن خروجی میشود: یک لینک جایگذاری شده ابتدا به آخرین بخش مسیر خود کوتاه میشود، سپس متن به حروف کوچک تبدیل میشود، کلمات توقف حذف میگردند، حروف غیرلاتین نویسهگردانی میشوند، سپس اعداد و کاراکترهای خاص در صورت درخواست شما حذف میشوند، آنچه باقی میماند با جداکننده انتخابی شما به هم متصل میشود، در نهایت نتیجه تا حداکثر طول برش داده میشود و در آخر در صورت تکراری بودن، یک پسوند عددی میگیرد. کادر "متن برای تبدیل" میتواند تا 500,000 کاراکتر را در یک مرحله بپذیرد، که معادل چند هزار عنوان مقاله است.
یک خط ورودی، یک اسلاگ خروجی. میتوانید یک لیست کامل از عناوین را جایگذاری کنید و هر خط به یک اسلاگ شمارهگذاری شده تبدیل میشود، در حالی که عنوان اصلی آن با رنگ خاکستری در بالای آن نمایش داده میشود، بنابراین حتی در یک لیست پنجاه تایی هم میتوانید تشخیص دهید کدام اسلاگ متعلق به کدام عنوان است. اگر لیست از قبل در یک فایل قرار دارد، نیازی به کپی کردن آن نیست: دکمه "بارگیری از فایل" در کنار کادر ورودی، یک فایل متنی ساده (مانند .txt، .csv، .md، .json) را باز کرده و محتوای آن را مستقیماً درون فیلد قرار میدهد. مرورگر شما فایل را دقیقاً همانطور میخواند که شما تایپ میکنید، و هیچ چیزی آپلود نمیشود. "تقسیم ورودی بر اساس" تعیین میکند که لیست چگونه از هم جدا شود. گزینه "خودکار" به طور پیشفرض فعال است: خط جدید همیشه موارد را جدا میکند، در حالی که کاما تنها زمانی آنها را جدا میکند که ورودی یک خط واحد باشد و تمام بخشهای آن شبیه به مقادیر مستقل باشند — بنابراین "قیمت 3,500 تومان" و "فصل 5: نتایج، نتیجهگیری" دستنخورده باقی میمانند و تکهتکه نمیشوند. اگر از قبل ساختار دادههای خود را میدانید، گزینههای "خط جدید"، "کاما" و "فاصله" به شما امکان کنترل دقیق را میدهند. "قالب خروجی" مشخص میکند که لیست پس از تبدیل چگونه به شما برگردانده شود — خط به خط، "جدا شده با فاصله" یا "جدا شده با کاما" — و هر دو دکمه "کپی همه" و "ذخیره در فایل" از این قالب پیروی میکنند. بخش "تاریخچه" 10 تبدیل آخر شما را در مرورگرتان نگه میدارد، بنابراین لیستی که یک ساعت پیش تبدیل کردهاید همچنان آنجاست.
متنهای غیرلاتین بخشی هستند که بیشتر سازندههای اسلاگ آن را تقریباً درست، و تعداد کمی آن را کاملاً درست انجام میدهند. امنترین حالت برای URL استفاده از کاراکترهای ساده ASCII است، بنابراین حروف سیریلیک، یونانی، عربی، چینی و حروف اروپایی نشانهدار باید تبدیل شوند، و تنها سوال واقعی این است که طبق چه قانونی. این صفحه در دو لایه به این سوال پاسخ میدهد. لایه عمومی تمام الفباها را پوشش میدهد: یک کتابخانه نویسهگردانی با پاسخی معقول در قالب ASCII برای تقریباً هر کاراکتری که بتوانید تایپ کنید، و این همان چیزی است که وقتی "نویسهگردانی از" روی گزینه "خودکار (هر زبانی)" تنظیم باشد، استفاده میشود. لایه خاص مجموعهای از جداول دستی برای زبانهایی است که پاسخ عمومی با چیزی که در آن کشور استفاده میشود تطابق ندارد؛ منوی "نویسهگردانی از" زبانهایی را نام میبرد که در حال حاضر دارای جدول هستند، و با گسترش این ابزار برای زبانهای بیشتر، این لیست در حال بزرگ شدن است. با انتخاب یکی از آنها، جدول مربوطه در یک شبکه قابل ویرایش در زیر "قوانین نویسهگردانی" بارگیری میشود، جایی که هر حرف یک فیلد متنی است و شما میتوانید آن را تغییر دهید. "بازنشانی قوانین به پیشفرض" تغییرات شما را لغو میکند. جدول اوکراینی از قطعنامه شماره 55 سال 2010 هیئت وزیران پیروی میکند، استانداردی که در پاسپورتهای اوکراینی چاپ شده است، از جمله جزئیاتی که به راحتی نادیده گرفته میشوند: зг به جای zh تبدیل به zgh میشود تا از ж متمایز بماند؛ є، ї، й، ю و я در ابتدای کلمه یک شکل و در داخل آن شکل دیگری میگیرند؛ و آپوستروف و علامت نرم بدون شروع یک کلمه جدید حذف میشوند، بنابراین Знам'янка به جای znamyanka به znamianka تبدیل میشود. پیشفرض آلمانی از حروف بسطیافته ä → ae، ö → oe، ü → ue استفاده میکند که در آدرسهای آلمانی رایج است، با این حال در صورت تمایل میتوانید از نسخه سادهتر ä → a نیز استفاده کنید.
گزینه "حذف کلمات توقف" به طور پیشفرض روشن است. این گزینه کلمات ربط کوچک — مانند a، the، and، of، for — که اسلاگ را بدون افزودن معنا طولانیتر میکنند، حذف میکند. لیست زیر "کلمات توقف" کاملاً قابل ویرایش است و به صورت از پیشپرشده ارائه میشود: یک لیست انگلیسی به همراه لیستی برای زبانی که در حال حاضر در صفحه آن هستید. بنابراین صفحه اوکراینی کلمات в، на، та و і را میشناسد، و صفحه آلمانی کلمات der، die و das را تشخیص میدهد. شما میتوانید کلمات خود را اضافه کنید، آنهایی را که میخواهید نگه دارید حذف کنید، یا به طور کامل این ویژگی را خاموش کنید، که در این صورت فیلد خاکستری میشود و نشان میدهد که دیگر اثری ندارد. دو نکته صادقانه در این مورد وجود دارد. حذف کلمات توقف بیشتر برای تمیزی و کوتاهتر شدن آدرس است تا ابزاری برای بهبود رتبه سئو — شما فقط یک آدرس کوتاهتر و تمیزتر دریافت میکنید، نه جایگاهی بهتر. همچنین اگر تمام کلمات یک عنوان جزو این لیست باشند، ابزار به جای ارائه یک کادر خالی، به شما اطلاع میدهد که هیچ چیزی برای تبدیل باقی نمانده است.
سایر کلیدها شکل نهایی اسلاگ را تعیین میکنند. "جداکننده در اسلاگ" کاراکتری که بین کلمات قرار میگیرد را انتخاب میکند، و استفاده از خط تیره به عنوان پیشفرض تنها یک سلیقه نیست: گوگل خط تیره را به عنوان جداکننده کلمات و خط زیرین را به عنوان متصلکننده میشناسد، بنابراین my_first_post به عنوان یک کلمه طولانی و my-first-post به عنوان سه کلمه مجزا به موتورهای جستجو میرسد. گزینه "خط زیرین (_)" برای سیستمهایی قرار داده شده است که بر استفاده از آن اصرار دارند. گزینه "حروف کوچک" روشن است زیرا بیشتر سرورها آدرسها را به حروف بزرگ و کوچک حساس میدانند و استفاده از حروف ترکیبی روشی آسان برای ایجاد دو URL برای یک صفحه است. "حذف کاراکترهای خاص" همه چیز را به جز حروف، اعداد، فاصله، خط تیره و خط زیرین حذف میکند تا علائم نگارشی، نقلقولها و ایموجیها از آدرس دور بمانند — ایموجیها پیش از نویسهگردانی حذف میشوند تا به عنوان مثال یک ایموجی موشک به کلمه rocket تبدیل نشود. "حذف اعداد" خاموش است، زیرا اعداد در عنوان معمولاً بخشی از خود عنوان هستند. "حداکثر طول" بین 10 تا 200 متغیر است و به طور پیشفرض روی 80 تنظیم شده است؛ وقتی اسلاگی از آن طولانیتر باشد، موتور آن را در انتهای آخرین کلمه کاملی که در محدوده قرار میگیرد برش میدهد و کلمه را از وسط قطع نمیکند. عدد کنار هر نتیجه نشاندهنده طول آن به کاراکتر است، و با عبور از عدد 60 به رنگ قرمز در میآید — این یک محدودیت قطعی نیست، بلکه نقطهای است که موتورهای جستجو شروع به کوتاه کردن اسلاگ میکنند و چسباندن آن در یک پیام دشوار میشود.
دو کلید دیگر برای بازگرداندن سادگیِ یک کلیک در تبدیلهای گروهی طراحی شدهاند. "یکتا کردن اسلاگها" مواردی را مدیریت میکند که در آن دو عنوان متفاوت به یک اسلاگ یکسان تبدیل میشوند — "10 نکته برتر" و "10-نکته برتر" هر دو به 10-nkth-brtr تبدیل میشوند — و به دومی -2 و به سومی -3 اختصاص میدهد، و اگر اضافه کردن پسوند باعث تجاوز از حداکثر طول شود، ابتدا بخش اصلی را کوتاه میکند. وجود دو صفحه در یک آدرس مشکلی است که جلوگیری از آن در این لیست بسیار ارزانتر از سیستم مدیریت محتوای (CMS) شما تمام میشود. "استخراج اسلاگ از URL" در جهت معکوس کار میکند: یک لینک کامل را جایگذاری کنید و ابزار آخرین بخش مسیر آن را میگیرد، کوئری استرینگها و پسوندهایی مانند .html یا .php را حذف میکند و کدگذاری درصدی را رمزگشایی میکند، بنابراین یک لینک ویکیپدیا که به %D0%9B%D1%8C%D0%B2%D1%96%D0%B2 ختم میشود به جای مجموعهای از کاراکترهای هگز، به شکل lviv باز میگردد. این ویژگی تنها زمانی عمل میکند که کل خط یک لینک باشد، بنابراین یک آدرس که درون یک جمله نقل شده باشد به همان حالت باقی میماند.
چرا باید این سازنده اسلاگ را انتخاب کنید؟
- فقط در مرورگر: عناوین شما هرگز آپلود نمیشوند و صفحه به صورت آفلاین نیز کار میکند
- تبدیل گروهی با جایگذاری یا از فایل متنی، با نمایش عنوان اصلی در بالای هر اسلاگ
- استانداردهای واقعی نویسهگردانی بر اساس هر زبان، نه یک جدول عمومی برای همه
- استاندارد اوکراینی طبق قطعنامه 55 سال 2010 — املای استفاده شده در پاسپورتها
- قابلیت ویرایش حرف به حرف هر قانون، با امکان بازنشانی با یک کلیک
- پسوندهای خودکار -2 و -3 برای جلوگیری از تکراری شدن اسلاگها در تبدیلهای گروهی
- استخراج اسلاگ از لینکهای جایگذاری شده و رمزگشایی کدهای درصدی (Percent-encoding)
- لیست کلمات توقف قابل ویرایش که از قبل برای زبان شما پر شده است
- برش ایمن در انتهای یک کلمه کامل، همراه با شمارشگر کاراکتر در کنار هر نتیجه
- کاملاً رایگان و نامحدود: بدون ثبتنام، بدون محدودیت تعداد و بدون ذخیره هیچ دادهای
اسلاگها در هر جایی که یک صفحه نیاز به یک آدرس خوانا دارد استفاده میشوند. یک سایت وبلاگ یا خبری هر تیتر را به یک اسلاگ تبدیل میکند، و این دقیقاً همان هدفی است که این ابزار بر اساس آن شکل گرفته است: تیترهای هفته را وارد کنید و URLهای آن را دریافت کنید. یک فروشگاه آنلاین همین کار را برای نام محصولات و دستهبندیها انجام میدهد، معمولاً به صورت گروهی پس از وارد کردن دادهها، و در بسیاری از مواقع به زبانی که حروف آن به طور پیشفرض در آدرس پشتیبانی نمیشوند. مستندات و پایگاههای دانش نیز لینکهای لنگری (Anchor) و نام فایلهای خود را به همین روش میسازند. فراتر از آدرسهای وب، همین رشته متنی تمیز همان چیزی است که برای نام فایلی که در سیستمعامل دیگری دچار مشکل نمیشود نیاز دارید، یا برای یک کلید دیتابیس که در فایل لاگ به راحتی خوانده شود، نام یک شاخه در گیت (Branch)، نام یک تصویر در کتابخانه رسانه، و یا شناسه یک بخش در سازندههای سایتهای استاتیک. هر جایی که یک نام خوانا برای انسان باید در قالبی قابل خوانش برای ماشین قرار گیرد، جای استفاده از اسلاگ است.
دانستن چند محدودیت قبل از تکیه بر این ابزار مفید است. این یک ابزار تولیدکننده است، نه یک اعتبارسنج: این ابزار بررسی نمیکند که آیا اسلاگ از قبل در سایت شما استفاده شده است یا خیر، زیرا ایدهای از محتوای سایت شما ندارد — یکتا بودنی که تضمین میکند تنها به لیستی که در حال تبدیل آن هستید محدود میشود. تغییر مسیرها (Redirects) نیز بر عهده شماست؛ تغییر دادن اسلاگ یک صفحه منتشر شده باعث از کار افتادن آدرس قدیمی آن میشود، و این تصمیمی است که باید در CMS خود بگیرید، نه در این ابزار. گزینه "ذخیره در فایل" فقط متن ساده ذخیره میکند، نه فایل CSV یا JSON. تقسیم خودکار ورودی بر اساس کاما در بیشتر موارد به درستی تصمیمگیری میکند، اما نه همیشه، و دقیقاً به همین دلیل است که "تقسیم ورودی بر اساس" به شما اجازه میدهد این رفتار را تغییر دهید. و نکته آخر اینکه نویسهگردانی یک قرارداد است نه یک ترجمه — München به muenchen تبدیل میشود، نه Munich — بنابراین وقتی یک صفحه در زبان مقصد نام شناختهشدهای دارد، استفاده از آن نام به عنوان اسلاگ بسیار بهتر از هرگونه تبدیل خودکار متن اصلی است.