
🔍 Kuidas leida ja asendada teksti kogu oma WordPressi saidil
Oled pool tundi WordPressi postitust kirjutanud, sõrmed lasevad, mõte voolab. Vajutad „Avalda" ja… märkad, et kirjutasid ühe plugina nime valesti. Mitte ühes kohas. Läbi terve teksti. Ja siis meenub: oled seda nime niimoodi kirjutanud viimased kuus kuud, sajas teiseski artiklis.
Avada iga postitus käsitsi ja hakata trükivigu jahtima? Ehk kui neid on viis. Aga kui neid on viissada?
WordPress ei paku karbist tulles nuppu „Otsi ja asenda", ei redaktoris ega andmebaasi peale. Aga see on parandatav tasuta pluginate ja ühe koodijupiga. Pole vaja phpMyAdminit, tooreid SQL-päringuid ega riski, et vale käsuga saidi kokku jooksmisele saadad.
💡 Kiirülevaade:
- Ehita otsi-ja-asenda otse redaktorisse: Advanced Editor Tools plugin lisab visuaalredaktorile kahe minutiga nupu Otsi ja asenda
- Asenda teksti üle kogu andmebaasi: Better Search Replace otsib ja asendab stringe kõigis tabelites, eelvaate ja serialiseeritud andmete toega
- Sea sisse automaatsed asendusreeglid: Real-Time Find and Replace vahetab teksti „lennult" lehe renderdamisel, andmebaasi puutumata
- Lisa märksõnadele automaatsed lingid: PHP funktsioon failis
functions.phpmähib määratud sõnad kõigis postitustes korraga linkidesse
Allolev video demonstreerib otsimist ja asendamist WordPressi sisus:
Otsi ja asenda teksti WordPressi redaktoris
Klassikalisel WordPressi redaktoril pole nuppu „Otsi ja asenda", erinevalt Google Docsist, Wordist ja peaaegu igast muust tekstitöötlusprogrammist. Gutenbergi plokkredaktoril pole seda samuti. Aga selle saab lisada.
Advanced Editor Tools plugin (endise nimega TinyMCE Advanced) tegeleb sellega. See laiendab visuaalredaktori tööriistariba ja üks saadaolevatest nuppudest ongi Otsi ja asenda.

Paigaldamine on tavapärane: „Plugins" → „Add New" → otsi „Advanced Editor Tools" → „Install" → „Activate". Pärast aktiveerimist:
- Mine: Settings → Advanced Editor Tools
- Leia kasutamata nuppude hulgast Find and Replace
- Lohista see redaktori tööriistaribale
- Salvesta muudatused
Valmis. Nüüd, kui redigeerid visuaalredaktoris ükskõik millist postitust, ilmub üles otsi-ja-asenda nupp. Sisesta otsitav tekst, sisesta asendus, plugin tõstab vasted esile ja saad asendada ühe kaupa või kõik korraga.
Miinus: see töötab ainult ühe postituse piires. Kui on vaja läbi käia sadu artikleid, on vaja võimsamat tööriista.
Otsi ja asenda üle kogu andmebaasi Better Search Replace'iga
Kui viga on laiali kümnetes või sadades kirjetes, muutub iga postituse käsitsi redigeerimine nädalapikkuseks tööks. Selle jaoks on Better Search Replace, WP Engine'i tasuta plugin, mis otsib ja asendab teksti otse WordPressi andmebaasis.

Võimalused:
- Otsi kogu andmebaasist või valitud tabelitest (
wp_posts,wp_postmetajne) - Serialiseeritud andmete tugi: plugin käsitleb massiive ja objekte korrektselt, neid lõhkumata
- Dry Run režiim: proovikäik ilma muudatusi tegemata; näed, mitu lahtrit mõjutatakse, ja otsustad siis, kas asendus rakendada
- Mitmiksaiditugi
Kuidas see töötab: „Tools" → „Better Search Replace" → sisesta otsitav string ja asendusstring → vali tabelid → käivita Dry Run → vaata tulemus üle → kui kõik on korras, eemalda linnuke Dry Run eest ja käivita tegelik asendus.
Enne igasuguseid andmebaasioperatsioone tee varukoopia. Better Search Replace ei võimalda muudatusi tagasi võtta. Kui teed asendusstringiga vea, saad andmeid taastada ainult varukoopiast.
Plugina uuendatakse regulaarselt: versioon 1.4.10 ilmus jaanuaris 2025. Autor on WP Engine'i meeskond, WordPress.org-is on 543 arvustust ja keskmine hinne üle 4 tärni. Aktiivseid paigaldusi on üle miljoni.
Automaatne teksti asendamine lennult Real-Time Find and Replace'iga
Vahel pole vaja ühekordset trükiveaparandust, vaid püsivat reeglit: näiteks roppuste asendamine kommentaarides, reklaamikohahoidja vahetamine JavaScripti koodi vastu või ümber bränditud teenuse nime automaatne korrigeerimine kõigis olemasolevates ja tulevastes publikatsioonides.
Varem tegeles sellega Word Replacer, kuid see plugin on suletud ja seda pole 12 aastat uuendatud. Praegune alternatiiv on Real-Time Find and Replace.

Kuidas see töötab: plugin vahetab teksti hetkel, mil leht renderdatakse, enne kui see kasutaja brauserisse jõuab. Andmebaas jääb puutumata. Kõik reeglid asuvad plugina seadetes ja iga reegli saab igal ajal ilma tagajärgedeta keelata või muuta.
Mida tasuta versioon suudab:
- Asendada teksti ja HTML-koodi täpse vaste alusel
- Toetada regulaaravaldisi (regex) keerukate mustrite jaoks
- Asendada sisu teemades ja teistes pluginates nende faile redigeerimata
- Töötada AJAX-sisu ja jQuery kaudu laaditud sisuga
- 70 000+ aktiivset paigaldust, testitud kuni WordPress 7.0-ni
Pro versioon (eluaegne litsents alla 15 $) lisab filtrid postituse tüübi, URL-i ja viitaja järgi, reeglite impordi/ekspordi ning võimaluse asendada teksti administraatori lehtedel.
Tüüpiline stsenaarium: soovid, et sõna „computer" muutuks alati lingiks sinu partnerpoe lehele. Loo reegel: Find = computer, Replace = <a href="https://shop.example.com">computer</a>. Plugin rakendab selle lennult kõigile postitustele, lehtedele ja kommentaaridele.
Automaatsed märksõnalingid PHP abil
Kui sa ei soovi paarikümne lingi jaoks eraldi pluginat paigaldada, lahendab probleemi koodijupp sinu teema functions.php failis. See käib läbi iga postituse sisu, leiab määratud sõnad ja mähib need linkidesse.
Teema
functions.phpfailiga töötades kasuta alamteemat, et sinu muudatusi uuenduste käigus üle ei kirjutataks. Ja enne redigeerimist tee failist varukoopia.

Lisa see kood faili functions.php:
1 function techblog_auto_link_words( $text ) { 2 $replace = array( 3 'wordpress' => '<a href="https://wordpress.org">WordPress</a>', 4 'php' => '<a href="https://www.php.net">PHP</a>', 5 ); 6 $text = str_replace( array_keys( $replace ), $replace, $text ); 7 return $text; 8 } 9 add_filter( 'the_content', 'techblog_auto_link_words' ); 10 add_filter( 'the_excerpt', 'techblog_auto_link_words' );
Kuidas see töötab: funktsioon str_replace otsib postituse tekstist massiivi $replace võtmeid ja asendab need väärtustega (linkidega). Filtrid the_content ja the_excerpt rakendavad asenduse vastavalt täielikule postituse tekstile ja väljavõttele.
Saad massiivi $replace laiendada: lisa uus paar 'keyword' => '<a href="...">anchor</a>' ja reegel hakkab kohe tööle.
Piirangud: asendus on tõstutundlik, käivitub täpsetel vastetel ega oska välistada siltide või atribuutide sees olevaid sõnu. Kui tekstis oli juba sama ankruga link, tekib pesastatud link. Keerukate stsenaariumide jaoks kasuta ülalkirjeldatud Real-Time Find and Replace'i.
⁉️🤔 Korduma kippuvad küsimused
Kas ma saan WordPressis teksti otsida ja asendada ilma pluginate?
Jah, otse andmebaasi suunatud SQL-päringuga. Käsk näeb välja umbes selline:
UPDATE wp_posts SET post_content = REPLACE(post_content, 'old', 'new'). Kuid see meetod ei käsitle serialiseeritud andmeid, nõuab juurdepääsu phpMyAdminile või WP-CLI-le ega paku eelvaadet. Viga päringus võib andmebaasi rikkuda. Better Search Replace teeb sama asja, kuid turvalisemalt.
Mida teha, kui sait läheb pärast asendamist katki?
Esiteks, ära satu paanikasse. Kui lubasid enne asendamist Dry Run'i, tead täpselt, milliseid tabeleid mõjutati. Kui mitte, taasta andmebaas varukoopiast (sa ju tegid enne operatsiooni varukoopia, eks?). Better Search Replace ei loo tasuta versioonis ise varukoopiaid, seega on varukoopia kriitilise tähtsusega.
Kas Real-Time Find and Replace aeglustab saiti?
Mõistliku arvu reeglite korral (kuni 50) mitte. Plugin teostab asenduse enne lehe väljastamist, serveri poolel, ilma täiendavate andmebaasipäringuteta. Kui kasutad vahemällu salvestamist, on mõju veelgi väiksem. Probleemid võivad tekkida ainult keerukate, süntaksivigu sisaldavate regex-reeglitega.
Mis vahe on Real-Time Find and Replace'il ja Better Search Replace'il?
Better Search Replace muudab andmeid andmebaasis: muudatused on püsivad. Real-Time Find and Replace vahetab teksti renderdamise ajal: andmebaas jääb puutumata. Esimene on ühekordsete paranduste jaoks (trükivead, domeenivahetused). Teine on püsivate reeglite jaoks (tsensuur, reklaami lisamine, automaatsed lingid). Need ei ole konkurendid, vaid tööriistad erinevate ülesannete jaoks.
Millise meetodi peaksin valima domeeni asendamiseks saidi migreerimisel?
Ainult Better Search Replace. Domeeni asendamine tähendab tuhandete URL-ide muutmist andmebaasis (sisus, metaväljadel, seadetes). Real-Time Find and Replace ei tööta: see ei muuda andmeid füüsiliselt ja domeenivahetus nõuab tegelikku andmebaasi kirjutamist. Lisaks käsitleb Better Search Replace korrektselt serialiseeritud massiive, kus stringi pikkus on koos väärtusega kodeeritud.
Mida oma ülesande jaoks kasutada
Ülesanne määrab tööriista. WordPressis pole universaalset „otsi ja asenda" lahendust, kuid iga stsenaariumi jaoks on olemas valmis lahendus:
- Vaja parandada paar fraasi ühes mustandis: Advanced Editor Tools, nupp Otsi ja asenda redaktoris
- Trükiviga on levinud sajasse postitusse: Better Search Replace, üks andmebaasipäring koos eelvaatega
- Soovid, et kliendi logo mähitaks automaatselt kogu sisu ulatuses lingiks kliendi saidile: Real-Time Find and Replace, lennult rakenduv reegel
- Vaja lisada lingid tosinale märksõnale ilma pluginaid paigaldamata: PHP jupp failis
functions.php, 10 koodirida
Enne igasugust asendamist: varukoopia. Enne andmebaasis asendamist: Dry Run. Need kaks harjumust säästavad päevi taastamistööd.



