Skip to content
Slug জেনারেটর
Tools

Slug জেনারেটর

নতুন

যেকোনো শিরোনামকে পরিচ্ছন্ন, SEO-বান্ধব URL slug-এ রূপান্তর করুন — বাল্ক ও অ্যাকসেন্ট-সচেতন।

Mode
Separator
Slug 0 characters

Preview /
Try:

Runs entirely in your browser. Nothing is uploaded.

যেকোনো শিরোনামকে পরিষ্কার, SEO-বান্ধব URL স্লাগে রূপান্তর করুন

একটি স্লাগ জেনারেটর একটি পেজ শিরোনাম বা যেকোনো টেক্সটকে সেই ছোট, লোয়ারকেস, URL-নিরাপদ স্ট্রিং-এ রূপান্তর করে যা একটি পেজকে নাম দেয় — একটি ঠিকানার শেষ স্ল্যাশের পরের অংশ। একটি শিরোনাম টাইপ করুন, আর এই URL স্লাগ জেনারেটর লাইভ স্লাগ তৈরি করে: এটি টেক্সটকে লোয়ারকেস করে, স্পেসকে হাইফেন দিয়ে বদলায়, অ্যাকসেন্টযুক্ত অক্ষর ট্রান্সলিটারেট করে, বিরামচিহ্ন সরিয়ে দেয়, এবং একাধিক সেপারেটরকে একটি পরিষ্কার হাইফেনে গুটিয়ে নেয়।

তাই 'My First Blog Post!' সঙ্গে সঙ্গে হয়ে যায় my-first-blog-post, কপি করার জন্য তৈরি। ইনস্টল করার কিছু নেই এবং তৈরি করার কোনো অ্যাকাউন্ট নেই — একটি শিরোনাম পেস্ট করুন, অপশন ঠিক করুন, আর ফলাফল নিন। প্রতিটি কীস্ট্রোকের সাথে প্রিভিউ আপডেট হয়, একটি নমুনা URL-এর ভেতরে সম্পূর্ণ স্লাগ দেখিয়ে দেয় যাতে আপনি ঠিক দেখতে পারেন এটি অ্যাড্রেস বারে কেমন দেখাবে।

একটি স্লাগকে SEO-এর জন্য ভালো করে তোলে কী

একটি ভালো স্লাগ ছোট, পাঠযোগ্য এবং আপনার মূল কীওয়ার্ডকে ঘিরে তৈরি। সার্চ ইঞ্জিন ফলাফলে স্লাগ দেখায় এবং এটিকে একটি র‍্যাঙ্কিং সিগন্যাল হিসেবে ব্যবহার করে, তাই পূর্ণতার চেয়ে স্পষ্টতা বেশি গুরুত্বপূর্ণ। এটিকে লোয়ারকেস রাখুন, শব্দগুলো হাইফেন দিয়ে আলাদা করুন — আন্ডারস্কোর দিয়ে নয়, যা Google দুটি শব্দকে আলাদা করার বদলে জোড়া লাগানো হিসেবে পড়ে — এবং ফিলার বাদ দিন।

Remove stop words চালু করে a, the, ofto-এর মতো শব্দ স্বয়ংক্রিয়ভাবে বাদ দিন — 'The Best Tips for a Healthy Diet' হয়ে যায় best-tips-healthy-diet, একটি আঁটসাঁট, আরও SEO-বান্ধব স্লাগ। যেখানে সম্ভব স্লাগ ৬০ অক্ষরের নিচে রাখুন। দীর্ঘ শিরোনামকে একটি পূর্ণ শব্দে কেটে ফেলতে একটি max length সেট করুন, যাতে আপনি কখনও how-to-bake-cre-এর মতো ভাঙা টুকরো না পান।

অ্যাকসেন্ট, প্রতীক এবং অ-ইংরেজি টেক্সট

সাধারণ ASCII হলো URL-এর জন্য নিরাপদ বর্ণমালা, তাই a–z, 0–9 এবং হাইফেনের বাইরের যেকোনো কিছু হ্যান্ডেল করতে হয়। এই slugify টুল অ্যাকসেন্টযুক্ত অক্ষরকে তাদের নিকটতম ASCII মিলের সাথে ট্রান্সলিটারেট করে — é→e, ñ→n, ü→u, ç→c — এবং যেসব অক্ষরের একক সমতুল্য নেই সেগুলো বিস্তৃত করে: ß→ss, æ→ae, ø→o।

'Niño Piñata Soirée' হয়ে যায় nino-pinata-soiree। প্রতীকগুলো সরিয়ে দেওয়া হয়, এবং একটি ঐচ্ছিক টগল &-কে and হিসেবে পুনর্লিখন করে, তাই 'Salt & Pepper' হয়ে যায় salt-and-pepper, শব্দটি নীরবে ফেলে দেওয়ার বদলে। চীনা বা আরবির মতো ভাষার জন্য, যেখানে সরাসরি ট্রান্সলিটারেশন নেই, বেশিরভাগ CMS প্ল্যাটফর্ম স্থানীয় স্লাগ নেটিভভাবে হ্যান্ডেল করে — এই টুল ল্যাটিন-স্ক্রিপ্ট ক্ষেত্রে মনোনিবেশ করে, যেখানে অ্যাকসেন্টই মূল সমস্যা।

বাল্ক স্লাগ জেনারেশন এবং ফরম্যাট অপশন

একটির বেশি স্লাগ দরকার? Bulk mode-এ সুইচ করুন, শিরোনামের একটি তালিকা পেস্ট করুন — প্রতি লাইনে একটি — আর বাল্ক স্লাগ জেনারেটর প্রতি লাইনে একটি স্লাগ ফেরত দেয়। সবগুলো কপি করুন বা একটি .txt ফাইল ডাউনলোড করুন। আপনার সেট করা প্রতিটি অপশন (স্টপ-ওয়ার্ড রিমুভাল, সেপারেটর, max length, লোয়ারকেসিং, অ্যাম্পারস্যান্ড এক্সপ্যানশন) পুরো ব্যাচ জুড়ে ধারাবাহিকভাবে প্রযোজ্য হয়।

একটি ব্লগকে নতুন CMS-এ মাইগ্রেট করা, পরিকল্পিত পার্মালিংক কাঠামো দিয়ে একটি কনটেন্ট ক্যালেন্ডার সাজানো, বা পেজ তৈরির আগে পণ্যের নামের তালিকা থেকে স্লাগ তৈরি করার জন্য এটি ব্যবহারিক। কোনো রেট লিমিট নেই, কোনো সাবস্ক্রিপশন নেই, কোনো আপলোড নেই — পুরো ব্যাচ আপনার ব্রাউজারে স্থানীয়ভাবে চলে, তাই শত শত শিরোনামও এক সেকেন্ডেরও কম সময়ে প্রসেস হয়। একটি হাইফেন বা আন্ডারস্কোর সেপারেটর বেছে নিন, পার্মালিংক পরিপাটি রাখতে একটি max length সেট করুন, বা আপনার প্ল্যাটফর্মের প্রয়োজন হলে ক্যাপিটাল রাখুন।

it-tools.tech, 10015.io এবং অন্য স্লাগ জেনারেটরের সাথে তুলনা

বেশিরভাগ ফ্রি অনলাইন স্লাগ টুল মৌলিক কাজগুলো করে: লোয়ারকেস, স্পেসকে হাইফেন দিয়ে বদলানো, বিরামচিহ্ন সরানো। it-tools.tech এবং 10015.io দুটোই এটি করে, কিন্তু কোনোটিই স্টপ-ওয়ার্ড রিমুভাল, একটি কনফিগারযোগ্য সেপারেটর, বা বাল্ক মোড দেয় না। GoToolsOnline কয়েকটি অপশন যোগ করে কিন্তু এখনও প্রতিটি রূপান্তরের জন্য একটি পেজ রিলোড প্রয়োজন হয়। slugify (npm) এবং python-slugify-এর মতো ডেডিকেটেড লাইব্রেরি আরও সক্ষম কিন্তু কোড লেখা প্রয়োজন।

এই টুলটি এই দুইয়ের মাঝে অবস্থান করে: এটি কিছু ইনস্টল না করেই একটি লাইভ UI-এর মাধ্যমে অ্যাকসেন্ট ট্রান্সলিটারেশন, স্টপ-ওয়ার্ড ফিল্টারিং, সেপারেটর পছন্দ, max length এবং অ্যাম্পারস্যান্ড এক্সপ্যানশন হ্যান্ডেল করে। যাদের একটি তালিকা প্রসেস করতে হয় তাদের জন্য বাল্ক মোড ফাঁক পূরণ করে। আর যেহেতু সবকিছু আপনার ব্রাউজারে ক্লায়েন্ট-সাইডে চলে, অপ্রকাশিত পেজ শিরোনাম পেস্ট করায় কোনো গোপনীয়তার ঝুঁকি নেই — কোনো শিরোনাম কোনো সার্ভারে পাঠানো বা কোথাও লগ করা হয় না।

URL-এর গঠন এবং RFC 3986: একটি ঠিকানায় কোথায় কী থাকে

একটি URL-এর RFC 3986 দ্বারা সংজ্ঞায়িত পাঁচটি অংশ থাকে, যা হলো সেই ইন্টারনেট স্ট্যান্ডার্ড যা ওয়েব ঠিকানার কাঠামো নিয়ন্ত্রণ করে: স্কিম (https://), অথরিটি (example.com), পাথ (/blog/my-post), একটি ঐচ্ছিক কোয়েরি স্ট্রিং (?ref=home), এবং একটি ঐচ্ছিক ফ্র্যাগমেন্ট (#comments)। স্লাগটি পাথের মধ্যে থাকে — সেই অংশ যা সার্ভারে নির্দিষ্ট রিসোর্স শনাক্ত করে।

RFC 3986 একগুচ্ছ unreserved characters সংজ্ঞায়িত করে যা পার্সেন্ট-এনকোডিং ছাড়াই একটি URL-এর যেকোনো অংশে অন্তর্ভুক্ত করা নিরাপদ: ২৬টি বড় হাতের ও ২৬টি ছোট হাতের ASCII অক্ষর, 0–9 সংখ্যা, এবং চারটি প্রতীক — হাইফেন (-), আন্ডারস্কোর (_), পিরিয়ড (.), এবং টিল্ড (~)। বাকি সবকিছু — স্পেস, অ্যাকসেন্ট, &, ?, #, ডিলিমিটার ভূমিকার বাইরে ব্যবহৃত / — পার্সেন্ট-এনকোডেড হয়ে একটি %XX হেক্স সিকোয়েন্সে পরিণত হতে হয়। যেমন একটি স্পেস হয়ে যায় %20। মনে রাখবেন প্লাস চিহ্ন (+) সর্বজনীন স্পেস-বিকল্প নয়: এটি স্পেস প্রতিনিধিত্ব করে শুধু application/x-www-form-urlencoded কোয়েরি স্ট্রিং-এর (HTML ফর্ম ডেটা) ভেতরে, URL পাথে নয়। /my+blog+post-এর মতো একটি পাথ লেখা কোয়েরি প্রসঙ্গের বাইরে প্রযুক্তিগতভাবে ভুল এবং পাথ আক্ষরিকভাবে পার্স করা সার্ভারকে বিভ্রান্ত করতে পারে।

লম্বা পেজিনেটেড বা ফিল্টার করা URL তৈরির সময় ব্রাউজার URL দৈর্ঘ্যের সীমা জানাও মূল্যবান। Internet Explorer URL-কে ২,০৪৮ অক্ষরে সীমাবদ্ধ করত; আধুনিক Chrome এবং Firefox ট্রাঙ্কেট করার আগে প্রায় ৮,১৯২ অক্ষর পর্যন্ত সামলায়। বিশেষভাবে স্লাগের ক্ষেত্রে, বাধাটি ব্রাউজার নয় বরং সার্চ ইঞ্জিন স্নিপেট: Google সাধারণত ফলাফল পেজে একটি URL-এর ৬০–৭০ অক্ষর দেখায়, তাই এর চেয়ে লম্বা স্লাগ প্রযুক্তিগতভাবে কাজ করলেও প্রদর্শনে কেটে যায়।

হাইফেন বনাম আন্ডারস্কোর: Google-এর সুস্পষ্ট অবস্থান

হাইফেন ও আন্ডারস্কোরের মধ্যে বাছাই কোনো স্টাইল পছন্দ নয় — এর একটি সুনির্দিষ্ট, নিশ্চিত প্রভাব রয়েছে Google কীভাবে আপনার পেজ ইনডেক্স করে তার ওপর। Google-এর John Mueller একাধিকবার স্পষ্টভাবে বলেছেন যে হাইফেনকে শব্দ বিভাজক হিসেবে গণ্য করা হয়, আর আন্ডারস্কোর শব্দ জোড়কারী হিসেবে কাজ করে। বাস্তবে এর মানে word-count-tool স্লাগটি তিনটি আলাদা শব্দ হিসেবে ইনডেক্স হয় — «word», «count», এবং «tool» — এবং এদের যেকোনোটির সাথে আলাদাভাবে মিলতে পারে। word_count_tool স্লাগটি একটি একক জোড়া টোকেন হিসেবে ইনডেক্স হয়, «wordcounttool», এবং শুধু সেই সঠিক জোড়া স্ট্রিং-এর সার্চেই মিলবে।

SEO-এর জন্য পরিণতিটি সরাসরি: হাইফেনযুক্ত স্লাগ পাথ সেগমেন্টের প্রতিটি কীওয়ার্ডের জন্য র‍্যাঙ্ক করে, আর আন্ডারস্কোরযুক্তগুলো কার্যত সেই শব্দগুলোকে সার্চ ইনডেক্স থেকে আড়াল করে রাখে, যদি না সার্চকারী জোড়া রূপটি টাইপ করেন। এই কারণেই প্রতিটি বড় CMS হাইফেনকে ডিফল্ট করে: WordPress, Drupal, Ghost, Shopify, Hugo, এবং Jekyll সবাই সেটিং ওভাররাইড না করলে পোস্ট শিরোনাম থেকে হাইফেনযুক্ত স্লাগ তৈরি করে। আন্ডারস্কোর শুধু সেসব প্রসঙ্গে ব্যবহার করুন যেখানে এটি স্পষ্টভাবে প্রয়োজন, যেমন প্রোগ্রামিং আইডেন্টিফায়ার, ডেটাবেস কলামের নাম, বা এমন ইন্টারনাল API প্যারামিটার যা কখনও ক্রল করা যায় এমন URL-এ দেখা যাবে না।

হাইফেন-বনাম-আন্ডারস্কোর প্রশ্নের বাইরে, Google-এর বৃহত্তর URL নির্দেশনা হলো স্লাগকে ছোট, বর্ণনামূলক এবং স্থিতিশীল রাখা। যেখানে সম্ভব /p?id=12345-এর মতো স্বয়ংক্রিয় সংখ্যাসূচক ID এড়িয়ে চলুন — একটি মানুষ-পাঠযোগ্য স্লাগ Googlebot-কে কনটেন্ট পড়ার আগেই পেজের বিষয় বুঝতে সাহায্য করে। আর একবার একটি পেজ প্রকাশিত ও ইনডেক্স হয়ে গেলে, স্লাগ পরিবর্তন একেবারে শেষ উপায় হওয়া উচিত: এমনকি একটি সঠিক 301 রিডিরেক্টও নতুন URL-এ মাত্র প্রায় ৯০–৯৯% লিংক ইকুইটি পাস করে, এবং পুরনো ঠিকানার দিকে নির্দেশিত যেকোনো বাহ্যিক লিংক ইনডেক্সে আপডেট হতে সপ্তাহ বা মাস সময় নেয়।

আন্তর্জাতিকীকৃত স্লাগ এবং ট্রান্সলিটারেশন কৌশল

URL-এ অ-ASCII অক্ষর Internationalized Resource Identifier (IRI) স্ট্যান্ডার্ডের অধীনে প্রযুক্তিগতভাবে বৈধ, এবং Chrome ও Firefox-এর মতো আধুনিক ব্রাউজার অ্যাড্রেস বারে ডিকোড করা Unicode রূপ দেখায় — তাই /café-paris-এর মতো একটি স্লাগ /%C3%A9-এর বদলে পাঠযোগ্যভাবে রেন্ডার হয়। তবে অন্তর্নিহিত HTTP অনুরোধ এখনও পার্সেন্ট-এনকোডেড রূপটিই পাঠায়, এবং পুরনো টুল, লিংক-শর্টনার ও ইমেল ক্লায়েন্ট কখনও কখনও এনকোডেড অক্ষরগুলো বিকৃত করে ফেলে। বিশেষভাবে ডোমেইনের জন্য, অ-ASCII হোস্টনেম Punycode এনকোডিং দিয়ে হ্যান্ডেল করা হয় (যেমন münchen.dexn--mnchen-3ya.de), যা পাথ এনকোডিং থেকে একটি আলাদা সিস্টেম।

বেশিরভাগ CMS প্ল্যাটফর্ম ও স্লাগ লাইব্রেরি ট্রান্সলিটারেশন-কে ডিফল্ট করে: স্লাগ তৈরির আগে প্রতিটি অ্যাকসেন্টযুক্ত বা অ-ল্যাটিন অক্ষরকে তার নিকটতম ASCII সমতুল্যে ম্যাপ করা। এটি সর্বজনীনভাবে নিরাপদ URL তৈরি করে — niño-pinata হয়ে যায় nino-pinata — মূল বানানরীতি হারানোর বিনিময়ে। আরবি, হিব্রু এবং CJK (চীনা, জাপানি, কোরিয়ান) স্ক্রিপ্টের জন্য, যেখানে কোনো অর্থপূর্ণ এক-থেকে-এক ল্যাটিন ম্যাপিং নেই, ট্রান্সলিটারেশন ব্যবহারিক নয়। সাধারণ পদ্ধতিগুলো হলো রোমানাইজড ট্রান্সলিটারেশন সিস্টেম ব্যবহার করা (ম্যান্ডারিনের জন্য Pinyin, জাপানির জন্য Hepburn, আরবির জন্য ALA-LC), একটি স্থানীয় ও একটি ইংরেজি স্লাগ উভয়ই অন্তর্ভুক্ত করা, বা পূর্ণ Unicode স্লাগের অনুমতি দিয়ে সার্ভার ও CDN-এর ওপর নির্ভর করা যাতে তা সঠিকভাবে হ্যান্ডেল করে।

Shopify, WordPress (সঠিক লোকেল প্লাগিন সহ), এবং Contentful সবাই নেটিভভাবে Unicode স্লাগ সমর্থন করে এবং প্রদর্শনের জন্য ব্রাউজারকে সেগুলো ডিকোড করতে দেয়। প্রযুক্তিগত শর্তগুলো হলো সার্ভার আগত পাথ ডাবল-এনকোড না করা, Accept-Language ও canonical ট্যাগ ধারাবাহিকভাবে সেট করা, এবং যেকোনো রিডিরেক্ট লজিক ডিকোড করা URL তুলনা করা যাতে /caf%C3%A9/café দুটি আলাদা পেজ হিসেবে গণ্য না হয়। বেশিরভাগ ল্যাটিন-স্ক্রিপ্ট কনটেন্টের জন্য, ASCII ট্রান্সলিটারেশনই সহজ, নিরাপদ ডিফল্ট থেকে যায়।

স্লাগ সংঘর্ষ এবং CMS কীভাবে ডুপ্লিকেট শিরোনাম সমাধান করে

যখন দুটি পেজ একই শিরোনাম শেয়ার করে — বা এমন শিরোনাম যা প্রসেসিংয়ের পর একই স্লাগ তৈরি করে — তখন একটি স্লাগ সংঘর্ষ (collision) ঘটে। সর্বজনীন সমাধান হলো ক্রমিক সাফিক্সিং: প্রথম পোস্ট পায় my-post, দ্বিতীয়টি পায় my-post-2, তৃতীয়টি my-post-3, এভাবে চলতে থাকে। WordPress সংস্করণ ২.০ থেকে এটি করে আসছে; Django-এর AutoSlugField (django-autoslug-এর মাধ্যমে), স্বতন্ত্রতা যাচাইসহ Laravel-এর Str::slug, এবং Rails-এর FriendlyId জেম সবাই একই প্যাটার্ন বাস্তবায়ন করে। এটি সার্ভার ত্রুটি প্রতিরোধ করে কিন্তু এমন স্লাগ তৈরি করে যা কোনো অর্থপূর্ণতা ছাড়াই একটি সংখ্যা বহন করে।

একটি বিকল্প হলো একটি ছোট হ্যাশ বা UUID ফ্র্যাগমেন্ট যোগ করা — my-post-a3f2 — যা অনুমানযোগ্য বৃদ্ধিমান প্যাটার্ন এড়ায় এবং কোনো ক্রম না বোঝিয়েই স্লাগকে অনন্য করে তোলে। কিছু প্ল্যাটফর্ম URL কাঠামোতে একটি তারিখ প্রিফিক্স অন্তর্ভুক্ত করে (/2024/06/my-post/) যাতে সংঘর্ষ সম্পূর্ণ এড়ানো যায়, যেহেতু ভিন্ন মাসে প্রকাশিত একই শিরোনাম একটি ভিন্ন পাথে থাকে। তারিখ-প্রিফিক্সযুক্ত URL সংবাদ ও সাংবাদিকতা সাইটের জন্য ভালো কাজ করে কিন্তু লম্বা URL তৈরি করে এবং চিরস্থায়ী কনটেন্টকে সার্চ ফলাফলে পুরনো দেখায়।

হাজার হাজার নিবন্ধযুক্ত দীর্ঘদিন চলা সাইটের জন্য শুরুতে বেছে নেওয়া সংঘর্ষ কৌশল পরে বদলানো ব্যয়বহুল হয়ে পড়ে। স্লাগ ইতিমধ্যে ইনডেক্স ও লিংকড থাকলে, সংখ্যাসূচক সাফিক্স থেকে হ্যাশে — বা ফ্ল্যাট থেকে তারিখ-প্রিফিক্সযুক্ত URL-এ — সরানোর জন্য প্রতিটি বদলানো ঠিকানার জন্য 301 রিডিরেক্ট, Googlebot সেগুলো প্রসেস করার সময় কয়েক সপ্তাহের ক্রল ল্যাগ, এবং কনটেন্ট জুড়ে আপডেট করা ইন্টারনাল লিংক প্রয়োজন। বাস্তব পরামর্শ হলো লঞ্চের আগে একটি সংঘর্ষ কৌশল ঠিক করুন, এটিকে আপনার CMS কনফিগারেশনের অংশ করুন, এবং প্রকাশিত স্লাগকে স্থায়ী শনাক্তকারী হিসেবে গণ্য করুন। সৌন্দর্যের জন্য এগুলো পুনর্নামকরণ SEO বিঘ্নের তুলনায় খুব কমই মূল্যবান।

Frequently asked questions

URL স্লাগ কী?

একটি স্লাগ হলো URL-এর সেই মানুষ-পাঠযোগ্য অংশ যা একটি নির্দিষ্ট পেজকে নাম দেয় — শেষ স্ল্যাশের পরের টেক্সট। example.com/blog/url-slug-guide-তে স্লাগ হলো 'url-slug-guide'। ভালো স্লাগ লোয়ারকেস হয়, শব্দের মধ্যে হাইফেন ব্যবহার করে, এবং কোনো স্পেস, অ্যাকসেন্ট বা বিরামচিহ্ন থাকে না। এতে সেগুলো পড়া, শেয়ার করা ও সার্চ ফলাফলে র‍্যাঙ্ক করা সহজ থাকে — এবং অ্যাড্রেস বার ভরে দেওয়া %20-এর মতো পার্সেন্ট-এনকোডেড আবর্জনা এড়ানো যায়।

URL স্লাগের একটি উদাহরণ কী?

'How to Bake Crème Brûlée' শিরোনামটি নিন। একটি পরিষ্কার স্লাগ হলো 'how-to-bake-creme-brulee' — লোয়ারকেস করা, স্পেসগুলো হাইফেন দিয়ে বদলানো, অ্যাকসেন্টযুক্ত 'è' ও 'û' সাধারণ 'e' ও 'u'-তে ট্রান্সলিটারেট করা, এবং বিরামচিহ্ন সরানো। আপনি স্টপ ওয়ার্ড সরিয়ে এটিকে আরও আঁটসাঁট করতে পারেন: 'how-bake-creme-brulee'। উপরে যেকোনো শিরোনাম পেস্ট করুন আর স্লাগটি সঙ্গে সঙ্গে দেখা যাবে, কপি করার জন্য তৈরি।

একটি URL-কে স্লাগ বলা হয় কেন?

শব্দটি এসেছে সংবাদপত্র প্রকাশনা থেকে। সম্পাদকরা প্রতিটি গল্পকে একটি ছোট, লোয়ারকেস ডাকনাম দিতেন — যাকে বলা হতো স্লাগ — একটি সঠিক শিরোনাম লেখার আগে প্রোডাকশন পাইপলাইনে সেটি ট্র্যাক করার জন্য। ওয়েব শব্দটি ধার করে সেই ছোট, লোয়ারকেস শনাক্তকারীর জন্য যা একটি পেজকে তার URL-এ নাম দেয়। ধারণাটি একই: একটি কমপ্যাক্ট, মানুষ-পাঠযোগ্য হ্যান্ডেল যা একটি সংখ্যাসূচক ID বা স্বয়ংক্রিয়ভাবে তৈরি স্ট্রিং-এর চেয়ে কাজ করা সহজ।

একটি স্লাগ কি একটি URL-এর মতোই?

না। URL হলো পূর্ণ ঠিকানা — https://example.com/blog/my-post। স্লাগ হলো শুধু শেষের, পেজ-নামকারী সেগমেন্ট: 'my-post'। একটি স্লাগ একটি URL-এর ভেতরে থাকে, তাই স্লাগ বদলালে ঠিকানার সেই অংশ বদলে যায় এবং যেকোনো বিদ্যমান লিংক ভেঙে যায়। প্রকাশের আগে একটি চূড়ান্ত স্লাগ ঠিক করে নিন — এবং পরে যদি বদলাতেই হয়, তাহলে পুরনো URL থেকে নতুনটিতে একটি 301 রিডিরেক্ট সেট করুন যাতে সার্চ ইঞ্জিন তা অনুসরণ করে এবং লিংক ইকুইটি হারিয়ে না যায়।

একটি স্ট্রিং থেকে কীভাবে একটি স্লাগ তৈরি করব?

টেক্সটকে লোয়ারকেস করুন, প্রতিটি স্পেসকে একটি হাইফেন দিয়ে বদলান, অ্যাকসেন্টযুক্ত অক্ষরকে সাধারণ ASCII-তে ট্রান্সলিটারেট করুন, এবং অক্ষর, সংখ্যা বা হাইফেন নয় এমন সবকিছু সরিয়ে দিন। তাই 'My First Blog Post!' হয়ে যায় 'my-first-blog-post'। আপনি টাইপ করার সাথে সাথে এই টুল এই সব করে — শুধু একটি শিরোনাম পেস্ট করুন আর স্লাগটি লাইভ দেখা যায়। কোনো বাটন চাপতে হয় না এবং কোনো পেজ রিলোড নেই, যা ফলাফল দেখতে ফর্ম সাবমিশন প্রয়োজন হওয়া পুরনো অনলাইন স্লাগ টুলের চেয়ে দ্রুত।

একটি SEO-বান্ধব স্লাগ কীভাবে তৈরি করব?

এটিকে ছোট ও বর্ণনামূলক রাখুন, আপনার মূল কীওয়ার্ড অন্তর্ভুক্ত করুন, শব্দের মধ্যে হাইফেন ব্যবহার করুন, এবং লোয়ারকেস রাখুন। a, the ও of-এর মতো ফিলার 'স্টপ ওয়ার্ড' বাদ দিন যাতে কীওয়ার্ড স্পষ্ট হয় — 'The Best Tips for a Healthy Diet' হয়ে যায় 'best-tips-healthy-diet'। এটি স্বয়ংক্রিয়ভাবে করতে উপরে 'Remove stop words' চালু করুন। ৬০ অক্ষরের নিচের একটি স্লাগ আদর্শ; Google লম্বা URL সার্চ স্নিপেটে ট্রাঙ্কেট করে থাকে, যা সেগুলো পড়া ও ক্লিক করা কঠিন করে তোলে।

স্লাগে হাইফেন নাকি আন্ডারস্কোর ব্যবহার করা উচিত?

হাইফেন ব্যবহার করুন। Google স্পষ্টভাবে হাইফেনকে শব্দ বিভাজক হিসেবে গণ্য করে কিন্তু আন্ডারস্কোরকে জোড়ক হিসেবে পড়ে, তাই 'url_slug_guide' একটি একক টোকেন 'urlslugguide' হিসেবে পড়া হয়, আর 'url-slug-guide' তিনটি আলাদা শব্দ হিসেবে পড়া হয়। এটি কীওয়ার্ড মেলানোর জন্য গুরুত্বপূর্ণ — হাইফেন Google-কে প্রতিটি শব্দ আলাদাভাবে বুঝতে সাহায্য করে। আন্ডারস্কোর শুধু সেই ইন্টারনাল আইডেন্টিফায়ারের জন্য ব্যবহার করুন যা কখনও একটি পাবলিক URL-এ দেখা যাবে না বা সার্চ ইঞ্জিন দ্বারা ক্রল হবে না।

একটি স্লাগে কোন অক্ষরগুলো অনুমোদিত?

লোয়ারকেস ASCII অক্ষর (a–z), সংখ্যা (0–9), এবং হাইফেনেই থাকুন। স্পেস, অ্যাকসেন্ট, এবং ?, &, /, # ও %-এর মতো প্রতীক হয় URL ভেঙে দেয় নয়তো %20-এর মতো কোডে (একটি স্পেসের জন্য) পার্সেন্ট-এনকোডেড হয়ে যায়। এই টুল স্বয়ংক্রিয়ভাবে সেগুলো সব সরিয়ে দেয় বা ট্রান্সলিটারেট করে। একটি ব্যতিক্রম: অ্যাম্পারস্যান্ড (&) সরানোর আগে 'and'-এ বিস্তৃত করা যায় — 'Expand & to and' টগল করুন আর 'Salt & Pepper' নীরবে শব্দটি হারানোর বদলে 'salt-and-pepper' হয়ে যায়।

স্লাগ কি লোয়ারকেস হওয়া উচিত?

হ্যাঁ। একটি URL-এর পাথ অংশ অনেক সার্ভারে কেস-সংবেদনশীল হতে পারে, তাই /My-Page ও /my-page ভিন্ন পেজে রিজলভ করতে পারে — বা একটি 404 ফেরত দিতে পারে। স্লাগ লোয়ারকেস রাখলে কেউ একটি URL কপি করে ভুলবশত কেস বদলে ফেললে ডুপ্লিকেট-কনটেন্ট সমস্যা এবং ভাঙা-লিংক সমস্যা এড়ানো যায়। এখানে লোয়ারকেস ডিফল্টভাবে চালু; শুধু তখনই বন্ধ করুন যখন আপনার CMS বা অ্যাপ্লিকেশন বিশেষভাবে সংরক্ষিত ক্যাপিটালাইজেশন দাবি করে।

একটি স্লাগে অ্যাকসেন্ট ও বিশেষ অক্ষর কীভাবে হ্যান্ডেল করব?

অ্যাকসেন্টযুক্ত অক্ষর তাদের নিকটতম সাধারণ ASCII রূপে ট্রান্সলিটারেট করা হয় — é→e, ñ→n, ü→u, ç→c — এবং যেসব অক্ষরের একক সমতুল্য নেই সেগুলো বিস্তৃত করা হয়: ß→ss, æ→ae, ø→o। 'Niño Piñata Soirée' হয়ে যায় 'nino-pinata-soiree'। কোনো নিকটবর্তী ASCII মিল নেই এমন অক্ষর — ইমোজি, চীনা অক্ষর, গাণিতিক প্রতীক — সম্পূর্ণ সরিয়ে দেওয়া হয়। ট্রান্সলিটারেশন পার্সেন্ট-এনকোডিংয়ের চেয়ে পরিষ্কার, যা লম্বা, কুৎসিত URL তৈরি করে যা শেয়ার ও পড়া কঠিন।

একটি স্লাগ থেকে 'a', 'the' ও 'of'-এর মতো স্টপ ওয়ার্ড সরাতে পারি কি?

হ্যাঁ — 'Remove stop words' চালু করুন। এটি সাধারণ ফিলার শব্দ (a, an, the, of, to, in, on, for, and…) বাদ দেয় যাতে স্লাগ কীওয়ার্ডে কেন্দ্রীভূত থাকে: 'The History of the Roman Empire' হয়ে যায় 'history-roman-empire'। এটি কখনও একটি খালি স্লাগ ফেরত দেয় না — প্রতিটি শব্দ স্টপ ওয়ার্ড হলে মূলগুলোই রাখা হয়। এটি সবচেয়ে বেশি সাহায্য করে সেই ব্লগ পোস্ট শিরোনামে যেগুলো 'A Beginner's Guide to...' বা 'The Complete List of...'-এর মতো লম্বা ভূমিকা দিয়ে শুরু হয়।

এটি it-tools.tech বা 10015.io স্লাগ জেনারেটরের সাথে কীভাবে তুলনীয়?

it-tools.tech-এ একটি মৌলিক স্লাগ টুল আছে যা লোয়ারকেস করে ও স্পেসকে হাইফেন দিয়ে বদলায়, কিন্তু এতে স্টপ-ওয়ার্ড রিমুভাল, অ্যাকসেন্ট ট্রান্সলিটারেশন অপশন এবং বাল্ক মোড নেই। 10015.io-এর টেক্সট slugify অনুরূপ — একক ইনপুট, কোনো বাল্ক প্রসেসিং নেই, কোনো সেপারেটর পছন্দ নেই। এই টুল লাইভ প্রিভিউ, একবারে শত শত শিরোনাম প্রসেস করার বাল্ক মোড, কনফিগারযোগ্য স্টপ-ওয়ার্ড রিমুভাল, সেপারেটর পছন্দ (হাইফেন বা আন্ডারস্কোর), max length, এবং অ্যাম্পারস্যান্ড এক্সপ্যানশন দেয় — সবই পেজ রিলোড ছাড়া ক্লায়েন্ট-সাইডে চলে। আপনি যা পেস্ট করেন কিছুই আপলোড বা লগ করা হয় না।

বাল্ক-এ স্লাগ কীভাবে তৈরি করব?

Bulk mode-এ সুইচ করুন, প্রতি লাইনে একটি শিরোনাম পেস্ট করুন, আর আপনি প্রতি লাইনে একটি স্লাগ পাবেন — তারপর সব কপি করুন বা একটি .txt ফাইল হিসেবে ডাউনলোড করুন। এটি একটি ব্লগ মাইগ্রেট করা, একটি CMS সিড করা, বা এমন একটি কনটেন্ট ক্যালেন্ডার পরিকল্পনার জন্য তৈরি যেখানে একবারে ডজন ডজন পার্মালিংক দরকার। প্রতিটি অপশন (স্টপ ওয়ার্ড, সেপারেটর, max length, লোয়ারকেসিং) পুরো ব্যাচ জুড়ে ধারাবাহিকভাবে প্রযোজ্য হয়। সবকিছু আপনার ব্রাউজারে স্থানীয়ভাবে প্রসেস হয় — কোনো আপলোড নেই, কোনো রেট লিমিট নেই, কোনো সাবস্ক্রিপশন নেই।

কোডে স্লাগ কীভাবে তৈরি করব?

JavaScript-এ জনপ্রিয় slugify npm প্যাকেজ এটি হ্যান্ডেল করে: slugify('Hello World', { lower: true }) → 'hello-world'। Python ডেভেলপাররা python-slugify ব্যবহার করেন। Django (django.utils.text.slugify), Laravel (Str::slug), Rails (parameterize), এবং Symfony-এর মতো ফ্রেমওয়ার্ক নিজেদের বাস্তবায়ন নিয়ে আসে। কোড না লিখে দ্রুত একটি স্লাগের জন্য এই টুল ব্যবহার করুন, অথবা আপনার লাইব্রেরি কী তৈরি করে তা যাচাই করতে — একটি CMS একটি নির্দিষ্ট শিরোনাম থেকে আপনার প্রত্যাশার চেয়ে ভিন্ন পার্মালিংক তৈরি করলে কেন তা ডিবাগ করার সময় দরকারি।

নতুন

UTM বিল্ডার

utm_source, medium, campaign এবং আরও সহ ট্র্যাকযোগ্য ক্যাম্পেইন URL তৈরি করুন।

SEO ও মার্কেটিং
নতুন

SERP স্নিপেট প্রিভিউ

আপনার শিরোনাম ও বিবরণ Google-এ ডেস্কটপ ও মোবাইলে কেমন দেখায় তা প্রিভিউ করুন।

SEO ও মার্কেটিং
নতুন

Robots.txt জেনারেটর

allow/disallow নিয়ম ও একটি sitemap লাইন সহ একটি বৈধ robots.txt তৈরি করুন।

SEO ও মার্কেটিং
নতুন

মেটা ট্যাগ জেনারেটর

লাইভ প্রিভিউ সহ SEO, Open Graph ও Twitter Card মেটা ট্যাগ তৈরি করুন।

SEO ও মার্কেটিং
নতুন

সময়কাল ক্যালকুলেটর

দুটি ঘড়ির সময়ের মধ্যেকার সময় বের করুন এবং একাধিক সময়কাল যোগ করুন।

কনভার্টার ও একক
নতুন

মুনাফা মার্জিন ক্যালকুলেটর

মুনাফা, মার্জিন ও মার্কআপ বের করুন, অথবা একটি লক্ষ্য মার্জিনের জন্য দাম নির্ধারণ করুন।

ফাইন্যান্স ও ক্যালকুলেটর