Search & Replace

Hromadné vyhledání a nahrazení textu v databázi WordPressu

Search & Replace umí projít celou databázi WordPressu — nastavení webu, meta pole příspěvků i uživatelů, obsah stránek i komentáře — a bezpečně nahradit zadaný text. U každé volby vidíš přímo název DB tabulky, takže víš přesně, do čeho zasahuješ.

Hlavní funkce

  • Plný rozsah: wp_options, postmeta (vč. ACF), usermeta, termmeta, post_content, komentáře
  • U každé volby vidíš reálný název tabulky v databázi
  • Bezpečné pro serializovaná data — nikdy string/regex přímo na serializovaném blobu
  • Rekurzivně rozbalí, nahradí jen skutečné hodnoty (ne klíče) a znovu serializuje
  • Typické pro migraci domény, změnu URL po přesunu webu nebo hromadnou textovou opravu

Jak to funguje

Jádrem modulu je `SerializeSafeReplacer` — detekuje, jestli je hodnota serializovaná (`is_serialized()`), pokud ano, `unserialize()`-uje ji, rekurzivně projde všechny listové (leaf) hodnoty, nahradí jen ve stringových hodnotách (nikdy v klíčích pole) a výsledek zase `serialize()`-uje zpět.

Tenhle přístup je nutný, protože serializovaný formát obsahuje délkové prefixy typu `s:12:"puvodni text"` — obyčejný string/regex replace by po změně délky textu rozbil celou strukturu a WordPress by data při načtení nedokázal rozbalit.

Srovnání s alternativami

Alternativa k pluginu Better Search Replace — s plným rozsahem tabulek přímo zdarma.

Časté dotazy

Je bezpečné pustit náhradu přes celou tabulku wp_options?
Modul zvládá serializovaná data bezpečně, i tak ale před hromadnou změnou doporučujeme zálohu databáze — jde o nevratnou operaci nad produkčními daty.
Rozbije se mi po náhradě ACF repeater pole?
Ne — SerializeSafeReplacer pracuje s rozbalenou strukturou a mění jen textové hodnoty, takže složené ACF pole zůstanou validní.
Můžu nahrazovat i v komentářích?
Ano, obsah i autor komentářů jsou mezi podporovanými tabulkami.