Slug-Generator/ URL-freundliche Benennung

Verwandeln Sie Titel in URL-freundliche Slugs — verarbeitet Akzentzeichen, CJK-Zeichen, benutzerdefinierte Trennzeichen und maximale Lange.

Trennzeichen
Max. Länge
Text / Titel eingeben
Slug
0 Zeichen
Slug wird hier angezeigt…
Beispiel ausprobieren

Hat dieses Tool Ihr Problem gelöst?

Was ist ein URL-Slug

Ein URL-Slug ist der menschenlesbare Teil einer URL, der eine特定e Seite identifiziert, typischerweise bestehend aus Kleinbuchstaben, Zahlen und Bindestrichen. In `example.com/posts/how-to-seo` ist der Slug `how-to-seo`. Gute Slugs sind kurz, lesbar und enthalten Schlüsselwörter — wichtig für SEO und Benutzererfahrung.

Wie man gute Slugs erstellt

In Kleinbuchstaben umwandeln, Leerzeichen und Sonderzeichen durch Bindestriche ersetzen, Stoppwörter entfernen und Kern-Schlüsselwörter behalten. Kürzere URLs sind besser, aber die Lesbarkeit sollte erhalten bleiben. Vermeiden Sie Daten und IDs in Slugs,除非 nötig.

Code-Beispiele

JavaScript / Node.js
// npm install slugify
import slugify from 'slugify';

slugify('Hello World!', { lower: true })
// 'hello-world'

slugify('Cafe au Lait', { lower: true })
// 'cafe-au-lait'

// npm install limax (CJK support)
import limax from 'limax';
limax('你好世界')       // 'ni-hao-shi-jie' (pinyin)
limax('東京')           // 'dong-jing'

// Manual (no deps)
const slugify = (s) => s
  .toLowerCase()
  .normalize('NFD')
  .replace(/[\u0300-\u036f]/g, '')
  .replace(/[^a-z0-9]+/g, '-')
  .replace(/^-|-$/g, '');
Python
# pip install python-slugify
from slugify import slugify

slugify('Hello World!')
# 'hello-world'

slugify('Cafe au Lait')
# 'cafe-au-lait'

slugify('你好世界', allow_unicode=True)
# '你好世界'

# With max length
slugify('A very long title that should be truncated',
        max_length=30, word_boundary=True)
# 'a-very-long-title-that-should'
Go
// go get github.com/gosimple/slug
import "github.com/gosimple/slug"

slug.Make("Hello World!")
// "hello-world"

slug.Make("Cafe au Lait")
// "cafe-au-lait"

// Custom separator
slug.CustomMake("Hello World", "_")
// "hello_world"

// Truncate
s := slug.Make("A very long title here")
if len(s) > 50 {
    s = s[:50]
}
PHP / WordPress
<?php
// WordPress built-in
$slug = sanitize_title('Hello World! Cafe');
// 'hello-world-cafe'

// PHP custom
function to_slug(string $s): string {
    $s = mb_strtolower($s, 'UTF-8');
    $s = iconv('UTF-8', 'ASCII//TRANSLIT', $s);
    $s = preg_replace('/[^a-z0-9]+/', '-', $s);
    return trim($s, '-');
}

// Laravel
use Illuminate\Support\Str;
Str::slug('Hello World!');    // 'hello-world'
Str::slug('Hello World', '_'); // 'hello_world'

Haufig gestellte Fragen

Was ist ein URL-Slug?
Ein Slug ist der lesbare Teil einer URL, der eine bestimmte Seite identifiziert — bestehend aus Kleinbuchstaben, Zahlen und Bindestrichen, z. B. /blog/my-first-post. Gute Slugs sind pragnant, lesbar und SEO-freundlich. Sie vermeiden Sonderzeichen, Leerzeichen, Grossbuchstaben und Nicht-ASCII-Zeichen (es sei denn, muttersprachliche URLs werden verwendet).
Warum Bindestriche statt Unterstriche in Slugs verwenden?
Google behandelt Bindestriche (-) als Worttrennzeichen und erkennt my-blog-post als drei einzelne Worter. Unterstriche (_) werden als Verbindungszeichen behandelt, sodass my_blog_post als ein Wort erkannt wird. Bindestriche sind daher besser fur SEO. WordPress, GitHub und Shopify verwenden aus demselben Grund standardmassig Bindestriche.
Wie soll ich CJK-Zeichen in Slugs behandeln?
Zwei Hauptansatze: 1) Transliteration zu Pinyin/Romaji (z. B. 你好世界 → ni-hao-shi-jie) — besser fur SEO mit lateinischer Schrift. 2) Native Zeichen direkt verwenden (z. B. /blog/你好世界) — moderne Browser und Suchmaschinen unterstutzen dies, aber Links werden beim Teilen prozentcodiert angezeigt. Dieses Tool unterstutzt beide Modi.
Was ist die ideale Slug-Lange?
SEO-Best-Practice empfiehlt, Slugs unter 60-75 Zeichen zu halten, um ein Abschneiden in Suchergebnissen zu vermeiden. Fugen Sie Ihr Ziel-Keyword ein und entfernen Sie Stoppworter (a, the, of usw.). Beispiel: 'how-to-optimize-nextjs-performance' ist ein effektiver Slug. Zu lange Slugs verwassern das Keyword-Gewicht.
Welche Zeichen sollten beim Erstellen eines Slugs entfernt werden?
Entfernen oder ersetzen: Leerzeichen (→ Trennzeichen), Sonderzeichen (!@#$%^&*()+=[]{}|;:',.<>?/\`~), Akzentzeichen (e→e, u→u) und Steuerzeichen. Beibehalten: Buchstaben (a-z), Ziffern (0-9), Trennzeichen (-._). Ob CJK-Zeichen beibehalten werden, hangt vom Anwendungsfall ab.
Wie generiere ich Slugs in Next.js oder Node.js?
In Node.js: npm install slugify oder limax (CJK/Pinyin-Unterstutzung). Einfache manuelle Implementierung: str.toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, ''). Im dateibasierten Routing von Next.js stammt der Slug typischerweise aus dem Dateinamen oder einem Datenbankfeld. WordPress hat sanitize_title() eingebaut.