ToolDeck

স্লাগ জেনারেটর

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

একটি উদাহরণ চেষ্টা করুন
Separator

ইনপুট টেক্সট

স্লাগ

স্থানীয়ভাবে চলে · গোপন তথ্য পেস্ট করা নিরাপদ
স্লাগ এখানে দেখা যাবে…

URL স্লাগ কী?

URL স্লাগ হলো একটি ওয়েব ঠিকানার সেই অংশ যা একটি নির্দিষ্ট পেজকে মানুষের পাঠযোগ্য আকারে চিহ্নিত করে। https://example.com/blog/my-first-post URL-এ স্লাগটি হলো my-first-post। একটি স্লাগ জেনারেটর একটি পেজের শিরোনাম বা বিবরণকে এমন একটি স্ট্রিংয়ে রূপান্তর করে যাতে শুধুমাত্র ছোট হাতের অক্ষর, সংখ্যা এবং হাইফেন (অথবা অন্য কোনো নির্বাচিত separator) থাকে। এই প্রক্রিয়ায় স্পেস অপসারণ করা হয়, অ্যাকসেন্ট ও diacritics ছেঁটে ফেলা হয়, বিশেষ অক্ষর বাদ দেওয়া হয় এবং whitespace-কে একক separator-এ স্বাভাবিক করা হয়।

স্লাগ তৈরি করা হলো content management system, static site generator, ব্লগ প্ল্যাটফর্ম এবং যেকোনো অ্যাপ্লিকেশনের একটি মানক ধাপ যা ব্যবহারকারীর ইনপুট থেকে URL তৈরি করে। WordPress, Ghost, Hugo, Next.js এবং Django সবগুলোতেই স্লাগ তৈরির যুক্তি অন্তর্ভুক্ত রয়েছে কারণ পাঠযোগ্য URL ব্যবহারযোগ্যতা এবং সার্চ ইঞ্জিন অপ্টিমাইজেশন উভয়ই উন্নত করে। একটি সুগঠিত স্লাগ লিংকে ক্লিক করার আগেই ব্যবহারকারীকে বলে দেয় পেজটিতে কী রয়েছে।

"slug" শব্দটি সংবাদপত্র প্রকাশনা থেকে এসেছে, যেখানে এটি প্রযোজনার সময় একটি গল্প সনাক্ত করতে ব্যবহৃত একটি সংক্ষিপ্ত লেবেলকে বোঝাত। ওয়েব ডেভেলপমেন্টে স্লাগ একই কাজ করে: এটি একটি দীর্ঘ শিরোনাম বা নাম থেকে তৈরি একটি সংক্ষিপ্ত, অনন্য, URL-নিরাপদ পরিচায়ক। যেহেতু স্লাগগুলি প্রোগ্রামাটিক পদ্ধতিতে তৈরি হয়, তাই একটি নির্ভরযোগ্য স্লাগ জেনারেটর প্রতিটি পেজ ও locale জুড়ে সামঞ্জস্য নিশ্চিত করে।

এই স্লাগ জেনারেটর কেন ব্যবহার করবেন?

হাতে করে URL স্লাগ তৈরি করতে গেলে ভুল হওয়ার আশঙ্কা থাকে। কোনো অ্যাকসেন্ট ছেঁটে ফেলতে ভুলে যাওয়া, ডাবল হাইফেন রেখে দেওয়া, বা Unicode ইনপুটের কোনো edge case বাদ পড়ে যাওয়া ভাঙা বা কুৎসিত URL তৈরি করতে পারে। এই টুলটি স্বয়ংক্রিয়ভাবে সেই সমস্যাগুলো সামলায়।

তাৎক্ষণিক রূপান্তর
যেকোনো টেক্সট পেস্ট করুন বা টাইপ করুন এবং রিয়েল টাইমে স্লাগ আপডেট হতে দেখুন। কোনো ফর্ম সাবমিশন নেই, কোনো পেজ রিলোড নেই। একগুচ্ছ নিবন্ধের শিরোনাম বা পণ্যের নামের জন্য স্লাগ দরকার হলে কাজে আসে।
🔒
গোপনীয়তা রক্ষায় প্রক্রিয়াকরণ
সমস্ত স্লাগ তৈরি আপনার ব্রাউজারে চলে। আপনার টেক্সট পেজ ছেড়ে যায় না, তাই আপনি নিরাপদে খসড়া শিরোনাম, অভ্যন্তরীণ প্রকল্পের নাম বা প্রকাশিত হয়নি এমন পণ্যের নাম রূপান্তর করতে পারেন।
⚙️
কাস্টমাইজযোগ্য আউটপুট
হাইফেন, আন্ডারস্কোর বা ডট separator-এর মধ্যে বেছে নিন। lowercase চালু বা বন্ধ করুন। এটি বিভিন্ন framework ও CMS জুড়ে সবচেয়ে প্রচলিত স্লাগ রীতিগুলো কভার করে।
🌐
Unicode ও অ্যাকসেন্ট পরিচালনা
জেনারেটরটি অ্যাকসেন্টযুক্ত অক্ষর থেকে diacritic ছেঁটে ফেলতে NFD normalization প্রয়োগ করে। Café হয়ে যায় cafe, naïve হয়ে যায় naive। যেসব non-Latin অক্ষর transliterate করা সম্ভব নয় সেগুলো পরিষ্কারভাবে অপসারিত হয়।

স্লাগ জেনারেটরের ব্যবহারের ক্ষেত্র

ফ্রন্টএন্ড ডেভেলপার — রুট পরিকল্পনা
React Router, Next.js বা Nuxt-এ dynamic route segment সংযুক্ত করার আগে পেজ রুটের জন্য সামঞ্জস্যপূর্ণ স্লাগ তৈরি করুন। যাচাই করুন যে বিশেষ অক্ষরযুক্ত শিরোনামগুলো পরিষ্কার path তৈরি করছে।
ব্যাকএন্ড ইঞ্জিনিয়ার — ডেটাবেজ পরিচায়ক
মানুষের পাঠযোগ্য পরিচায়ক প্রয়োজন এমন ডেটাবেজ রেকর্ডের জন্য URL-নিরাপদ স্লাগ তৈরি করুন। /api/products/wireless-headphones-এর মতো REST API endpoint-এ numeric ID-এর পাশে secondary key হিসেবে স্লাগ ভালো কাজ করে।
DevOps — কনফিগারেশন ফাইলের নামকরণ
config ফাইল, Docker image ট্যাগ বা Kubernetes resource নামের জন্য সার্ভিসের নাম বা environment লেবেলকে filesystem-নিরাপদ স্ট্রিংয়ে রূপান্তর করুন যেখানে বিশেষ অক্ষর অনুমোদিত নয়।
QA ইঞ্জিনিয়ার — টেস্ট ডেটা তৈরি
staging পরিবেশ জুড়ে URL routing, redirect নিয়ম এবং canonical ট্যাগের আচরণ যাচাই করতে test case-এর শিরোনাম থেকে দ্রুত স্লাগের বিভিন্ন রূপ তৈরি করুন।
ডেটা ইঞ্জিনিয়ার — কলাম স্বাভাবিককরণ
ডেটাবেজ স্কিমা বা data pipeline-এ ব্যবহারের জন্য CSV বা Excel ইমপোর্ট থেকে অগোছালো কলাম হেডারকে সামঞ্জস্যপূর্ণ snake_case বা kebab-case পরিচায়কে রূপান্তর করুন।
শিক্ষার্থী — CMS ও ব্লগ প্রকল্প
WordPress, Jekyll বা কাস্টম CMS দিয়ে ব্লগ তৈরির সময় স্লাগ তৈরি কীভাবে কাজ করে তা শিখুন। আপনার হাতে তৈরি স্লাগকে একটি রেফারেন্স বাস্তবায়নের সাথে তুলনা করতে এই টুলটি ব্যবহার করুন।

স্লাগ তৈরির নিয়ম ও অক্ষর পরিচালনা

স্লাগ তৈরি একটি নির্দিষ্ট ধারায় রূপান্তর ঘটে। প্রতিটি ধাপ বোঝা আপনাকে অপ্রত্যাশিত আউটপুট debug করতে বা নিজের slugify ফাংশন তৈরি করতে সাহায্য করে।

  1. ১. Unicode Normalization (NFD)
    সংযুক্ত অক্ষরগুলিকে base character + combining mark-এ বিভক্ত করুন। উদাহরণস্বরূপ, é (U+00E9) হয়ে যায় e + combining acute accent (U+0301)। এটি পরবর্তী ধাপে diacritic অপসারণযোগ্য করে তোলে।
  2. ২. Diacritic অপসারণ
    Unicode Combining Diacritical Marks block (U+0300–U+036F)-এর সমস্ত অক্ষর অপসারণ করুন। এই ধাপের পরে, café হয়ে যায় cafe এবং Ñ হয়ে যায় N।
  3. ৩. বিশেষ অক্ষর অপসারণ
    অক্ষর, সংখ্যা, whitespace বা হাইফেন নয় এমন যেকোনো অক্ষরকে একটি স্পেস দিয়ে প্রতিস্থাপন করুন। এটি punctuation, প্রতীক এবং ASCII সমতুল্য নেই এমন অক্ষরগুলো বাদ দেয়।
  4. ৪. Whitespace ছাঁটাই ও সংকোচন
    শুরু ও শেষের whitespace অপসারণ করুন, তারপর পরপর আসা স্পেস, আন্ডারস্কোর বা হাইফেনের সব ধারাকে একটি নির্বাচিত separator-এ সংকুচিত করুন।
  5. ৫. Case ও Separator প্রয়োগ
    lowercase-এ রূপান্তর করুন (ঐচ্ছিক) এবং নির্বাচিত separator অক্ষর দিয়ে শব্দগুলো যুক্ত করুন: হাইফেন (-), আন্ডারস্কোর (_) বা ডট (.)।

অক্ষর রূপান্তর রেফারেন্স

নিচের সারণীতে দেখানো হয়েছে স্লাগ তৈরির সময় সাধারণ অক্ষরগুলো কীভাবে পরিচালিত হয়:

ইনপুটআউটপুটপ্রযোজ্য নিয়ম
Hello Worldhello-worldLowercase + space → hyphen
Café au Laitcafe-au-laitNFD normalization strips é → e
naïve résuménaive-resumeMultiple diacritics removed
Price: $9.99!price-9-99Symbols ($, !, :) removed
too many too-manyWhitespace trimmed and collapsed
one--two___threeone-two-threeMixed separators collapsed
Привет мирprivet-mirCyrillic (if transliteration) or removed
file_name.txtfile-name-txtDots and underscores replaced
React & Vuereact-vueAmpersand removed
2026-03-302026-03-30Digits and hyphens preserved

কোড উদাহরণ

জনপ্রিয় ভাষা ও framework-এ স্লাগ তৈরি। প্রতিটি উদাহরণ Unicode normalization, diacritic অপসারণ এবং separator সন্নিবেশ সামলায়।

JavaScript
function slugify(text, separator = '-') {
  return text
    .normalize('NFD')                   // decompose accented chars
    .replace(/[\u0300-\u036f]/g, '')    // strip diacritics
    .toLowerCase()
    .replace(/[^\w\s-]/g, ' ')          // drop special chars
    .trim()
    .replace(/[\s_-]+/g, separator)     // collapse whitespace → separator

  // slugify('Café au Lait')      → "cafe-au-lait"
  // slugify('Hello World', '_')  → "hello_world"
}

// Node.js alternative using the `slugify` npm package:
// npm install slugify
// const slugify = require('slugify')
// slugify('Hello World', { lower: true, strict: true }) → "hello-world"
Python
import re
import unicodedata

def slugify(text: str, separator: str = '-') -> str:
    """Convert text to a URL-safe slug."""
    text = unicodedata.normalize('NFD', text)
    text = text.encode('ascii', 'ignore').decode('ascii')  # strip non-ASCII
    text = text.lower()
    text = re.sub(r'[^\w\s-]', ' ', text)
    text = text.strip()
    text = re.sub(r'[\s_-]+', separator, text)
    return text

# slugify('Café au Lait')      → "cafe-au-lait"
# slugify('Hello World', '_')  → "hello_world"

# Alternative: python-slugify (pip install python-slugify)
# from slugify import slugify
# slugify('Café au Lait')  → "cafe-au-lait"
Go
package main

import (
	"regexp"
	"strings"
	"unicode"

	"golang.org/x/text/unicode/norm"
	"golang.org/x/text/transform"
	"golang.org/x/text/runes"
)

func slugify(text string) string {
	// NFD normalize and strip diacritics
	t := transform.Chain(norm.NFD, runes.Remove(runes.In(unicode.Mn)), norm.NFC)
	result, _, _ := transform.String(t, text)

	result = strings.ToLower(result)
	re := regexp.MustCompile(`[^\w\s-]+`)
	result = re.ReplaceAllString(result, " ")
	result = strings.TrimSpace(result)
	re = regexp.MustCompile(`[\s_-]+`)
	result = re.ReplaceAllString(result, "-")
	return result
}

// slugify("Café au Lait") → "cafe-au-lait"
// slugify("Hello World")  → "hello-world"
PHP
function slugify(string $text, string $separator = '-'): string {
    // Transliterate non-ASCII characters
    $text = transliterator_transliterate(
        'Any-Latin; Latin-ASCII; Lower()', $text
    );
    // Remove anything that is not a word char, space, or hyphen
    $text = preg_replace('/[^\w\s-]/', ' ', $text);
    $text = trim($text);
    $text = preg_replace('/[\s_-]+/', $separator, $text);
    return $text;
}

// slugify('Café au Lait')      → "cafe-au-lait"
// slugify('Hello World', '_')  → "hello_world"

সাধারণ জিজ্ঞাসা

স্লাগ এবং URL path-এর মধ্যে পার্থক্য কী?
URL path হলো domain-এর পরের পূর্ণ অংশ, যেমন /blog/2026/my-post। স্লাগ হলো সেই path-এর মধ্যে একটি নির্দিষ্ট সম্পদ সনাক্তকারী মানুষের পাঠযোগ্য অংশ, সাধারণত শেষ segment: my-post। স্লাগগুলি প্রায়ই শিরোনাম থেকে নেওয়া হয়, আর path-এর বাকি অংশ সাইটের routing কাঠামো প্রতিফলিত করে।
চীনা বা আরবির মতো non-Latin লিপি স্লাগ তৈরিতে কীভাবে পরিচালিত হয়?
NFD normalization ও diacritic stripping ব্যবহারকারী মানক স্লাগ জেনারেটরগুলো non-Latin লিপি transliterate করতে পারে না। চীনা হানজি বা আরবি অক্ষরের কোনো ASCII সমতুল্য নেই, তাই বিশেষ অক্ষর পরিষ্কারের ধাপে সেগুলো অপসারিত হয়। স্লাগে non-Latin বিষয়বস্তু সংরক্ষণ করতে limax (JavaScript), python-slugify with the unidecode backend, বা কাস্টম mapping table-এর মতো transliteration লাইব্রেরি প্রয়োজন।
URL স্লাগে হাইফেন না আন্ডারস্কোর ব্যবহার করা উচিত?
Google হাইফেনকে শব্দ বিভাজক হিসেবে গণ্য করে কিন্তু আন্ডারস্কোরকে শব্দ সংযোগকারী হিসেবে। স্লাগ my-first-post তিনটি শব্দ (my, first, post) হিসেবে পড়া হয়, আর my_first_post একটি token হিসেবে। SEO-র জন্য হাইফেন হলো URL স্লাগের মানক পছন্দ। আন্ডারস্কোর ফাইলের নাম, ডেটাবেজ কলাম এবং প্রোগ্রামিং পরিচায়কে প্রচলিত যেখানে সেগুলো variable-নিরাপদ সংযোগকারী হিসেবে কাজ করে।
URL স্লাগ কতটা দীর্ঘ হওয়া উচিত?
Google সার্চ ফলাফলে ছাঁটাই করার আগে একটি URL-এর প্রায় ৬০টি অক্ষর প্রদর্শন করে। ছোট স্লাগ পড়তে, শেয়ার করতে এবং টাইপ করতে সহজ। ৩ থেকে ৬টি শব্দ লক্ষ্য করুন। অর্থ না পরিবর্তন করলে stop word (the, a, an, and, or, in) বাদ দিন: how-to-build-nextjs-app হলো how-to-build-a-next-js-app-in-2026-এর চেয়ে ভালো।
স্লাগ তৈরি কি URL encoding-এর মতো?
না। URL encoding (percent-encoding) অনিরাপদ অক্ষরগুলিকে %20-এর মতো percent-sign triplet দিয়ে প্রতিস্থাপন করে। স্লাগ তৈরি অনিরাপদ অক্ষরগুলো সম্পূর্ণরূপে অপসারণ বা প্রতিস্থাপন করে, কোনো encoding artifact ছাড়া একটি পরিষ্কার স্ট্রিং তৈরি করে। একটি স্লাগে কখনো percent sign, স্পেস বা বিশেষ অক্ষর থাকে না। URL encoding মূল বিষয়বস্তু সংরক্ষণ করে; স্লাগ তৈরি সেটিকে নতুন কিছুতে রূপান্তরিত করে।
দুটি ভিন্ন শিরোনাম কি একই স্লাগ তৈরি করতে পারে?
হ্যাঁ। শুধুমাত্র punctuation, অ্যাকসেন্ট বা case-এ আলাদা শিরোনামগুলি প্রায়ই একই স্লাগে পরিণত হয়। উদাহরণস্বরূপ, Résumé Tips এবং Resume Tips উভয়ই resume-tips তৈরি করে। CMS বা ডেটাবেজ প্রসঙ্গে, একটি collision ঘটলে numeric suffix (resume-tips-2) যোগ করে এমন একটি uniqueness পরীক্ষা প্রয়োজন।
WordPress বা Django-তে স্লাগ কীভাবে তৈরি করব?
WordPress স্বয়ংক্রিয়ভাবে sanitize_title() ব্যবহার করে পোস্টের শিরোনাম থেকে স্লাগ তৈরি করে। আপনি পোস্ট এডিটরে স্লাগ সম্পাদনা করতে পারেন। Django django.utils.text-এ slugify() ফাংশন সরবরাহ করে যা ASCII ইনপুট ভালোভাবে সামলায়। Unicode সমর্থনের জন্য allow_unicode=True পাস করুন। উভয় প্ল্যাটফর্ম পূর্ণ শিরোনামের পাশাপাশি ডেটাবেজে স্লাগ সংরক্ষণ করে।

সম্পর্কিত টুলস

শব্দ গণনাকারীশব্দ, অক্ষর, বাক্য, অনুচ্ছেদ গণনা করুন এবং পড়ার সময় অনুমান করুনকেস রূপান্তরকারীটেক্সট uppercase, lowercase, title case, camelCase, snake_case এবং আরও কেসের মধ্যে রূপান্তর করুনলোরেম ইপসাম জেনারেটরকনফিগারযোগ্য অনুচ্ছেদ ও শব্দ সহ লোরেম ইপসাম প্লেসহোল্ডার টেক্সট তৈরি করুনলাইন সর্টারলাইনগুলি বর্ণানুক্রমিক, দৈর্ঘ্য অনুযায়ী, বিপরীত বা র্যান্ডমলি সাজানসদৃশ লাইন অপসারণকারীপাঠ্য থেকে সদৃশ লাইনগুলি সরান, শুধুমাত্র অনন্য লাইনগুলি রাখুনটেক্সট ডিফদুটি টেক্সট পাশাপাশি তুলনা করুন এবং লাইন-বাই-লাইন পার্থক্য হাইলাইট করুনRegex পরীক্ষকস্ট্রিং-এ রেগুলার এক্সপ্রেশন পরীক্ষা করুন এবং সমস্ত ম্যাচ হাইলাইট দেখুনMarkdown প্রিভিউরিয়েল টাইমে Markdown টেক্সট HTML হিসেবে রেন্ডার করে প্রিভিউ দেখুনপাসওয়ার্ড জেনারেটরকাস্টমাইজযোগ্য দৈর্ঘ্য এবং ক্যারেক্টার সেট দিয়ে শক্তিশালী র‍্যান্ডম পাসওয়ার্ড তৈরি করুন