Masowa zmiana nazw (normalizacja)

Spójne i przyjazne dla SEO nazwy plików. Zastępowanie spacji, transliteracja i bezpieczeństwo w URL. Idealne dla sklepów i blogów.

  • Bez rejestracji
  • Szybkie działanie
  • Operacje w pamięci
Przewodnik krok po kroku

Zero back-endu, 100% lokalnie.

icon

Masowa zmiana nazw (normalizacja)

*
Przeciągnij i upuść pliki tutaj lub kliknij, aby wybrać
Maksymalny rozmiar pliku: 50 MB
Przetwarzanie...

Masowa zmiana nazw plików graficznych. SEO friendly, czyste i spójne nazewnictwo

ImageRenamer porządkuje nazwy plików obrazów zgodnie z Twoimi zasadami. Zastępuje spacje, usuwa polskie znaki, normalizuje wielkość liter i stosuje wybrany styl jak kebab case, snake case, camelCase lub PascalCase. Dodajesz prefiksy, sufiksy i numerację z wypełnieniem zerami, a narzędzie pilnuje limitu długości i unikalności nazw w katalogu. Efekt to spójne, czytelne i przyjazne dla SEO nazwy gotowe do publikacji.

kebab-case
snake_case
camelCase
PascalCase

Zobacz jak działa

Co potrafi narzędzie i kiedy je wybrać

Nieporządek w nazwach plików to realny problem w sklepach internetowych, blogach i repozytoriach assetów. Mamy spacje, polskie znaki, wielkie litery, zbyt długie ciągi, a czasem losowe nazwy prosto z aparatu. Ten moduł likwiduje chaos i wprowadza jednolite reguły, które pomagają w SEO, automatyzacji pipeline oraz w pracy zespołowej. Działa w trybie wsadowym, więc w kilka sekund uporządkujesz setki obrazów.

  • Normalizacja nazw na podstawie słów wyłuskanych z oryginału.
  • Różne tryby pisowni w jednym miejscu. Łatwe przełączanie profilu.
  • Prefiksy i sufiksy sterowane polami wejściowymi.
  • Numeracja z kontrolą startu i szerokości wypełnienia.
  • Usuwanie polskich znaków i transliteracja znaków spoza ASCII.
  • Limit długości oraz automatyczna eliminacja powtórzonych separatorów.
  • Gwarancja unikalności nazw w katalogu docelowym bez nadpisywania.

Jak działa renamer pod spodem

Komponent Livewire odbiera pliki, generuje listę podglądu z nowymi nazwami i pozwala zweryfikować wynik przed zapisem. Rdzeniem działania jest funkcja normalizeBase, która rozbija bazową nazwę na słowa, czyści znaki specjalne, usuwa diakrytyki, stosuje wybrany styl pisowni i zapewnia limit długości. Funkcja buildName łączy rdzeń z prefiksem, sufiksem i sekwencją numeracji, a następnie dodaje rozszerzenie oryginalnego pliku. Podczas zapisu do storage publicznego weryfikowana jest unikalność docelowej nazwy. Jeśli istnieje konflikt, narzędzie zwiększa licznik i tworzy nową, wolną nazwę.

// Pseudokod przetwarzania
for each file in local_files:
  orig = original filename
  ext  = extension
  base = filename without extension
  words = sanitize(base) -> split -> remove diacritics (opcjonalnie)
  core  = applyCase(words)    // kebab, snake, camel, pascal, lower, upper, title lub none
  core  = replaceSpaces(core, separator)
  core  = trim and collapse repeated separators
  core  = limit length
  seq   = seq_enabled ? pad(counter, seq_width) : ''
  candidate = prefix + core + [separator + seq] + suffix + '.' + ext
  final = ensureUnique(candidate)
  save to /public/tools/image-renamer/final
Zawartość pliku nie jest modyfikowana. Zmieniasz wyłącznie nazwę i miejsce zapisu, co sprawia, że operacja jest szybka, przewidywalna i bezpieczna.

Tryby pisowni i przykłady

Tryb Opis transformacji Przykład z bazą: Zdjęcie Produktu Nowość 2025
kebab Małe litery, słowa połączone separatorem. Domyślnie separator to myślnik. zdjecie-produktu-nowosc-2025.jpg
snake Małe litery, słowa oddzielone podkreśleniem. zdjecie_produktu_nowosc_2025.jpg
camel Pierwsze słowo małe, kolejne z wielkiej litery, brak separatorów. zdjecieProduktuNowosc2025.jpg
pascal Każde słowo z wielkiej litery, brak separatorów. ZdjecieProduktuNowosc2025.jpg
lower Wszystko małymi literami z zachowaniem spacji lub wybranego separatora. zdjecie produktu nowosc 2025.jpg
upper Wszystko wielkimi literami. ZDIECIE PRODUKTU NOWOSC 2025.jpg
title Inicjały wielkie, reszta małe, spacje zachowane lub zastąpione separatorem. Zdjecie Produktu Nowosc 2025.jpg
none Brak zmiany pisowni, ale możliwa transliteracja i zamiana spacji. Zdjęcie Produktu Nowość 2025.jpg → Zdjecie-Produkt-Nowosc-2025.jpg

Transliteracja i usuwanie polskich znaków

Opcja Usuń polskie znaki zamienia ą, ć, ę, ł, ń, ó, ś, ź, ż na odpowiedniki ASCII. Dodatkowo działa fallback przez iconv, który transliteruje mniej typowe znaki łacińskie. Dzięki temu nazwy są bezpieczne w systemach plików, URL i pipeline CDN. Jeśli chcesz zachować oryginalną pisownię, wyłącz to pole, lecz pamiętaj o możliwych problemach w linuksowych serwerach i w niektórych przeglądarkach podczas pobierania.

Separator, spacje i limit długości

Możesz zdecydować czy spacje mają zostać, czy zamienić je na wybrany separator. Wartością domyślną jest myślnik, ale nic nie stoi na przeszkodzie, by użyć podkreślenia, kropki lub innego znaku. Silnik usuwa zdublowane separatory i przycina je z początku oraz końca nazwy. Limit długości działa na rdzeń bez rozszerzenia. Po jego przekroczeniu nazwa jest bezpiecznie skracana i czyszczona, aby nie urwać w połowie separatora.

Numeracja z wypełnieniem zerami

Numeracja ułatwia porządkowanie serii zdjęć. Ustawiasz start licznika i szerokość, na przykład 3 dla formatu 001. Po włączeniu opcji numeracja jest dopinana do nazwy czystym separatorem. Gdy w katalogu docelowym wykryty zostanie konflikt, renamer rozpocznie próby z kolejnymi numerami i nie nadpisze istniejących plików.

Parametry wejściowe i wyjściowe

Pole Opis Zakres lub format
local_files[] Lista wgranych plików JPEG, PNG, WebP, GIF, SVG, TIFF
case Styl pisowni none, kebab, snake, camel, pascal, lower, upper, title
strip_diacritics Usuwanie polskich znaków true lub false
replace_spaces, separator Zamiana spacji na separator separator dowolny znak, domyślnie -
prefix, suffix Dodatkowe ciągi doklejane do nazwy dowolny tekst
seq_enabled, seq_start, seq_width Numeracja z kontrolą startu i szerokości seq_width 1 do 6
limit Maksymalna długość nazwy bez rozszerzenia 10 do 200 znaków

Przykładowe scenariusze

  • Sklep online. Zrównanie nazw zdjęć produktów pod schemat kategoria-nazwa-model-numer z numeracją 001, 002, 003.
  • Blog. Ujednolicenie nazw ilustracji do postów na przyjazne URL i alt. Łatwiejsze wyszukiwanie i redirecty w CDN.
  • Repo zespołowe. Spójne nazwy sprzyjają code review i automatom CI, które walidują naming convention.
  • Archiwum. Zmiana nieczytelnych nazw z aparatu na informacyjne i krótkie, z limitem 60 znaków.

Wgląd w implementację

private function wordsFrom($str) {
  if ($this->strip_diacritics) $str = $this->stripDiacritics($str);
  $s = preg_replace('/[^A-Za-z0-9-_.\s]+/u', ' ', $str);
  $parts = preg_split('/[\s_\-]+/u', trim($s));
  return array_values(array_filter($parts)) ?: ['plik'];
}

private function applyCase(array $words) {
  switch ($this->case) {
    case 'snake':  return strtolower(implode('_', $words));
    case 'camel':  return implode('', array_map(fn($i,$w)=>$i?ucfirst(strtolower($w)):strtolower($w), array_keys($words), $words));
    case 'pascal': return implode('', array_map(fn($w)=>ucfirst(strtolower($w)), $words));
    case 'lower':  return strtolower(implode(' ', $words));
    case 'upper':  return strtoupper(implode(' ', $words));
    case 'title':  return implode(' ', array_map(fn($w)=>ucfirst(strtolower($w)), $words));
    case 'none':   return implode(' ', $words);
    case 'kebab':
    default:       return strtolower(implode('-', $words));
  }
}

Dobre praktyki nazewnictwa pod SEO i zespół

  • Używaj krótkich, opisowych nazw zawierających słowo klucz. Unikaj zbitek bez znaczenia.
  • Wybierz jeden separator i trzymaj się go konsekwentnie w całym projekcie.
  • Bez polskich znaków i spacji w URL. Zmniejszasz ryzyko błędów w linkowaniu i integracjach.
  • Włącz numerację dla serii ujęć jednego produktu. Ułatwia to mapowanie wariantów.
  • Dokumentuj schemat w README. Nowe osoby szybciej wdrożą się w repo i deployment.

Rozwiązywanie problemów

  • Powtarzające się nazwy po eksporcie. Włącz numerację lub dodaj sufiks wskazujący wariant.
  • Zbyt długa nazwa. Zmniejsz limit lub uprość rdzeń. Pamiętaj o ograniczeniach systemów plików i CDN.
  • Niechciane znaki w wyniku. Sprawdź opcję usuwania diakrytyków i filtr znaków w wordsFrom.
  • Inny separator niż w podglądzie. Upewnij się, że masz zaznaczoną opcję zamiany spacji.
  • Brak podglądu obrazków SVG. Miniatura może nie być generowana dla każdego typu. Nazwa zmieni się poprawnie.

Bezpieczeństwo i zgodność

Operacja zmiany nazwy odbywa się na kopii w storage publicznym. Oryginały pozostają bez zmian. Pliki są zapisywane we własnym folderze narzędzia. Linki pobierania możesz używać od razu lub przenieść rezultaty do docelowej lokalizacji. Jeśli w projekcie obowiązuje polityka retencji, ustaw harmonogram czyszczenia katalogu wyników.

 
Efekt
Spójne, krótkie i czytelne nazwy plików zgodne z Twoim schematem
Kontrola
Style pisowni, transliteracja, separator, limit, prefiksy, sufiksy i numeracja

Najpierw przetestuj ustawienia na małej próbce. Gdy zaakceptujesz wynik, uruchom renaming na całej paczce. Utrzymasz porządek i unikniesz niespodzianek w linkach oraz mapach witryny.

Zacznij porządkować nazwy