Skip to content

Alt om WordPress, webutvikling — og mer til

🔍 Slik finner og erstatter du tekst på hele WordPress-nettstedet ditt

🔍 Slik finner og erstatter du tekst på hele WordPress-nettstedet ditt

Du har skrevet et WordPress-innlegg i en halvtime, fingrene flyr, tankene strømmer. Du trykker publiser og… legger merke til at du har stavet et plugin-navn feil. Ikke på ett sted. Gjennom hele teksten. Så husker du: du har skrevet dette navnet på denne måten de siste seks månedene i hundre andre artikler.

Åpne hvert innlegg manuelt og jakte på skrivefeil? Kanskje hvis det er fem. Men hva om det er fem hundre?

WordPress tilbyr ingen «søk og erstatt»-knapp ut av boksen, ikke i redigeringsverktøyet, ikke på tvers av databasen. Men dette kan fikses med gratis plugins og én kodesnutt. Ingen phpMyAdmin, ingen rå SQL-spørringer, ingen risiko for å krasje nettstedet med en feil kommando.

💡 Rask oversikt:

  • Bygg søk og erstatt rett inn i redigeringsverktøyet: Advanced Editor Tools-pluginet legger til en Søk og erstatt-knapp i det visuelle redigeringsverktøyet på 2 minutter
  • Erstatt tekst på tvers av hele databasen: Better Search Replace søker og erstatter strenger i alle tabeller med forhåndsvisning og støtte for serialiserte data
  • Sett opp automatiske erstatningsregler: Real-Time Find and Replace bytter tekst «i farten» når siden rendres, uten å røre databasen
  • Legg til automatiske lenker etter nøkkelord: en PHP-funksjon i functions.php pakker spesifiserte ord inn i lenker på tvers av alle innlegg samtidig

Videoen nedenfor demonstrerer søk og erstatt i WordPress-innhold:

Søk og erstatt tekst i WordPress-redigeringsverktøyet

Det klassiske WordPress-redigeringsverktøyet har ingen «Søk og erstatt»-knapp, i motsetning til Google Docs, Word og nesten alle andre tekstbehandlere. Gutenberg-blokkredigeringsverktøyet har heller ingen. Men du kan legge den til.

Advanced Editor Tools-pluginet håndterer dette (tidligere kalt TinyMCE Advanced). Det utvider verktøylinjen i det visuelle redigeringsverktøyet, og en av de tilgjengelige knappene er Søk og erstatt.

Finn og erstatt-knapp i WordPress sin visuelle editor

Installasjon er standard: «Plugins» → «Legg til nytt» → søk «Advanced Editor Tools» → «Installer» → «Aktiver». Etter aktivering:

  • Gå til Innstillinger → Advanced Editor Tools
  • Finn Søk og erstatt blant de ubrukte knappene
  • Dra den til verktøylinjen i redigeringsverktøyet
  • Lagre endringer

Ferdig. Når du nå redigerer et innlegg i det visuelle redigeringsverktøyet, vises en søk og erstatt-knapp øverst. Skriv inn teksten du vil finne, skriv inn erstatningen, pluginet markerer treff, og du kan erstatte ett om gangen eller alle på en gang.

Ulempen: det fungerer bare innenfor ett enkelt innlegg. Hvis du må gå gjennom hundrevis av artikler, trenger du et kraftigere verktøy.

Søk og erstatt på tvers av hele databasen med Better Search Replace

Når en feil er spredt over dusinvis eller hundrevis av poster, blir manuell redigering av hvert innlegg en ukes jobb. For dette finnes Better Search Replace, et gratis plugin fra WP Engine som søker og erstatter tekst direkte i WordPress-databasen.

Better Search Replace sitt søk og erstatt-grensesnitt i WordPress

Funksjoner:

  • Søk i hele databasen eller utvalgte tabeller (wp_posts, wp_postmeta, osv.)
  • Støtte for serialiserte data: pluginet håndterer tabeller og objekter korrekt uten å ødelegge dem
  • Dry Run-modus: en testkjøring uten å gjøre endringer; du ser hvor mange celler som vil bli påvirket, og bestemmer deretter om du vil utføre erstatningen
  • Multisite-støtte

Slik fungerer det: «Verktøy» → «Better Search Replace» → skriv inn søkestrengen og erstatningsstrengen → velg tabeller → kjør Dry Run → gjennomgå resultatet → hvis alt ser bra ut, fjern avhukingen for Dry Run og kjør den faktiske erstatningen.

Før enhver databaseoperasjon, ta en sikkerhetskopi. Better Search Replace angrer ikke endringer. Hvis du gjør en feil med erstatningsstrengen, kan du bare gjenopprette data fra en sikkerhetskopi.

Pluginet oppdateres jevnlig: versjon 1.4.10 ble utgitt i januar 2025. Forfatteren er WP Engine-teamet, med 543 anmeldelser på WordPress.org og en gjennomsnittlig vurdering over 4 stjerner. Aktive installasjoner overstiger én million.

Automatisk teksterstatning i farten med Real-Time Find and Replace

Noen ganger trenger du ikke en engangsretting av skrivefeil, men en permanent regel: for eksempel å erstatte banning i kommentarer, bytte ut en annonseplassholder med JavaScript-kode, eller automatisk korrigere et omprofilert tjenestenavn i alle eksisterende og fremtidige publikasjoner.

Word Replacer pleide å håndtere dette, men pluginet er stengt og har ikke blitt oppdatert på 12 år. Det nåværende alternativet er Real-Time Find and Replace.

Regelsett for Real-Time Find and Replace i WordPress

Slik fungerer det: pluginet bytter tekst i det øyeblikket siden rendres, før den når brukerens nettleser. Databasen forblir uendret. Alle regler ligger i pluginets innstillinger, og du kan deaktivere eller endre enhver regel når som helst uten konsekvenser.

Hva gratisversjonen kan gjøre:

  • Erstatte tekst og HTML-kode ved eksakt treff
  • Støtte regulære uttrykk (regex) for komplekse mønstre
  • Erstatte innhold i temaer og andre plugins uten å redigere filene deres
  • Fungere med AJAX-innhold og innhold lastet via jQuery
  • 70 000+ aktive installasjoner, testet opp til WordPress 7.0

Pro-versjonen (livstidslisens under $15) legger til filtre etter innholdstype, URL og referrer, import/eksport av regler, og muligheten til å erstatte tekst på admin-sider.

Typisk scenario: du vil at ordet «computer» alltid skal bli en lenke til din affiliate-butikk. Opprett en regel: Find = computer, Replace = <a href="https://shop.example.com">computer</a>. Pluginet anvender det på alle innlegg, sider og kommentarer i farten.

Automatiske nøkkelordlenker via PHP

Hvis du ikke vil installere et eget plugin for et dusin lenker, løser en kodesnutt i temaets functions.php problemet. Den går gjennom hvert innleggs innhold, finner spesifiserte ord og pakker dem inn i lenker.

Når du jobber med temaets functions.php, bruk et child theme slik at endringene dine ikke blir overskrevet under oppdateringer. Og ta en sikkerhetskopi av filen før du redigerer.

PHP-kode for automatisk lenkeinnsetting i WordPress

Legg til denne koden i functions.php:

1function 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}
9add_filter( 'the_content', 'techblog_auto_link_words' );
10add_filter( 'the_excerpt', 'techblog_auto_link_words' );

Slik fungerer det: str_replace-funksjonen søker etter nøklene i $replace-tabellen i innleggsteksten og erstatter dem med verdiene (lenkene). the_content- og the_excerpt-filtrene anvender erstatningen på henholdsvis hele innleggsteksten og utdraget.

Du kan utvide $replace-tabellen: legg til et nytt par 'keyword' => '<a href="...">anchor</a>', og regelen begynner å virke umiddelbart.

Begrensninger: erstatningen skiller mellom store og små bokstaver, utløses på eksakte treff, og vet ikke hvordan den skal ekskludere ord inne i tagger eller attributter. Hvis teksten allerede hadde en lenke med samme ankertekst, ender du opp med en nestet lenke. For komplekse scenarioer, bruk Real-Time Find and Replace beskrevet ovenfor.

⁉️🤔 Ofte stilte spørsmål

Kan jeg søke og erstatte tekst i WordPress uten plugins?

Ja, med en direkte SQL-spørring til databasen. Kommandoen ser omtrent slik ut: UPDATE wp_posts SET post_content = REPLACE(post_content, 'old', 'new'). Men denne metoden håndterer ikke serialiserte data, krever tilgang til phpMyAdmin eller WP-CLI, og gir ingen forhåndsvisning. En feil i spørringen kan ødelegge databasen. Better Search Replace gjør det samme, men tryggere.

Hva bør jeg gjøre hvis nettstedet bryter sammen etter en erstatning?

Først, ikke få panikk. Hvis du aktiverte Dry Run før erstatningen, vet du nøyaktig hvilke tabeller som ble påvirket. Hvis ikke, gjenopprett databasen fra en sikkerhetskopi (du tok vel en sikkerhetskopi før operasjonen?). Better Search Replace oppretter ikke sine egne sikkerhetskopier i gratisversjonen, så en sikkerhetskopi er kritisk.

Senker Real-Time Find and Replace nettstedets hastighet?

Med et fornuftig antall regler (opptil 50), nei. Pluginet utfører erstatningen før sideutdata, på serversiden, uten ekstra databasespørringer. Hvis du bruker caching, er påvirkningen enda mindre. Problemer kan bare oppstå med komplekse regex-regler som inneholder syntaksfeil.

Hva er forskjellen mellom Real-Time Find and Replace og Better Search Replace?

Better Search Replace endrer data i databasen: endringer er permanente. Real-Time Find and Replace bytter tekst ved renderingstidspunkt: databasen forblir urørt. Den første er for engangsrettinger (skrivefeil, domenebytter). Den andre er for permanente regler (sensur, annonseinnsettinger, automatiske lenker). De er ikke konkurrenter, men verktøy for forskjellige oppgaver.

Hvilken metode bør jeg velge for domenebytte ved migrering av et nettsted?

Bare Better Search Replace. Domenebytte betyr redigering av tusenvis av URL-er i databasen (i innhold, metafelter, innstillinger). Real-Time Find and Replace vil ikke fungere: det endrer ikke data fysisk, og et domenebytte krever faktisk skriving til databasen. I tillegg håndterer Better Search Replace serialiserte tabeller korrekt der strenglengden er kodet sammen med verdien.

Hva du bør bruke til din oppgave

Oppgaven bestemmer verktøyet. Det finnes ingen universell «søk og erstatt» i WordPress, men det finnes en ferdig løsning for hvert scenario:

  • Trenger å fikse noen fraser i ett utkast: Advanced Editor Tools, Søk og erstatt-knappen i redigeringsverktøyet
  • En skrivefeil spredt over hundre innlegg: Better Search Replace, én databasespørring med forhåndsvisning
  • Vil at en kundelogo automatisk skal pakkes inn i en lenke til kundens nettsted på tvers av alt innhold: Real-Time Find and Replace, en regel i farten
  • Trenger å legge til lenker til et dusin nøkkelord uten å installere plugins: PHP-snutt i functions.php, 10 linjer med kode

Før enhver erstatning: sikkerhetskopi. Før erstatning i databasen: Dry Run. Disse to vanene sparer dager med gjenoppretting.