Enterprise WordPress-utvikling
Vi bygger WordPress for bedrifter med integrasjoner, høye krav til oppetid eller mye innhold.
- Det kundene serEget tema og Gutenberg-blokker, sider fra cacheGutenbergCDN
- ApplikasjonenForretningslogikk i kontrollere og modellerWPFluentPHP 8.4
- BakgrunnsjobberE-post og synk mot økonomisystemet i køerRedis-køerTripletex
- Data og søkDatabase, cache og produktsøkMySQLRedisMeilisearch
- DriftFlere instanser bak lastbalansererenFrankenPHPTraefikCI/CD
Når nettsiden har vokstfra det den ble laget for
Mange WordPress-nettsider er bygget for et mye mindre behov enn de har i dag. Nettbutikken hadde femti produkter og har nå tusen, eller nettsiden har blitt et verktøy salgsavdelingen bruker hele dagen. Den vanlige måten å utvikle WordPress på, med en plugin for hvert behov og litt egen kode imellom, er ikke laget for det.
Typiske tegn er at adminpanelet blir tregt når noen lagrer, og at plugin-oppdateringer blir utsatt fordi en tidligere oppdatering ga feil i butikken. Søket finner heller ikke varer som ligger på lager.
Å bytte plattform løser sjelden dette, fordi problemet ligger i hvordan nettsiden er bygget. Det er oppbyggingen som må endres, slik at siden tåler å brukes som det viktige arbeidsverktøyet den har blitt.
kunde.no/wp-adminGjennomgang- Av alle nettsteder bruker WordPress
- 40%
- Svartid fra serveren med FrankenPHP
- <30ms
- Andel forespørsler som hentes fra mellomlageret
- 97%
- Plugins installert «for sikkerhets skyld»
- 0
Egne pluginsfor funksjoner som ikke finnes ferdige
Vi lager det du ikke finner ferdig, for eksempel en kundeportal med ordrehistorikk, fakturaer og supportsaker. Andre eksempler er en kobling mot Tripletex, Power Office eller et fagsystem bare du bruker, og chatboter som svarer kundene ut fra dokumentasjonen din.
Når et behov ellers ville krevd flere generiske plugins som hver dekker en del av det, skriver vi heller én plugin på WPFluent-arkitekturen vår. Den er liten, testet og ligger i versjonskontroll, og den har ikke med seg kode som ingen bruker.
pxl-tripletexTil gjennomgangPublisertfinal readonly class CreditNoteSync{public function __construct(private TripletexClient $tripletex,) {}public function handle(WC_Order_Refund $refund): void{$this->tripletex->creditNotes()->create(CreditNote::fromRefund($refund),);}}
- PHPStan, nivå 9
- Pest46 tester
- Migrering i staging
- Skjermbildetest32 sider
Vi lager også egne innholdsblokker i redigeringsverktøyet, koblinger som utveksler data med andre systemer i sanntid, og innloggede sider der hver bruker ser det de har tilgang til.
Derfor får vanlig WordPress-utvikling problemer når nettsiden vokser
Vanlig WordPress-utvikling betyr som regel å finne en plugin som nesten passer, og fylle resten med litt egen kode. Hver snarvei er billig der og da, men til sammen gjør de hver endring dyrere i årene etterpå.
- Måten WordPress lagrer produktdata på, er fleksibel, men blir treg når datamengden vokser. Å filtrere 1 000 produkter på farge, størrelse og lagerstatus belaster serveren mye
- Uten en fast struktur blir koden spredt rundt i temaet og i små tillegg. Etter hvert vet ingen hva en liten endring påvirker
- Standardsøket tåler verken skrivefeil eller synonymer, og det sorterer ikke etter hva som passer best. Kunden skriver «Ifone» og får null treff, selv om du har hundre telefoner på lager
- Plugins med kjente sikkerhetshull blir stående fordi oppdateringer kan skape nye konflikter. Uten struktur blir hver runde med vedlikehold en risiko
Vi kan gå gjennom dagens oppsett og si hvor grensene går, før du bestemmer deg for noe.
WPFluent: WordPress-utvikling med fast struktur
Vi har laget vårt eget rammeverk for WordPress, WPFluent, etter modell fra Laravel. Det gir koden en fast struktur (MVC), der logikken, databaseoppslagene og visningen av innholdet ligger hver for seg.
- 01 / 04
Samme struktur i alle prosjekter
Alle prosjektene våre er bygget opp på samme måte. Strukturen er så forutsigbar at en ny utvikler finner fram i koden i løpet av første uke.
- 02 / 04
Ryddige avhengigheter
Delene av koden får det de trenger fra ett sted (dependency injection). Da blir koden lettere å teste, og en endring ett sted ødelegger ikke noe et annet sted.
- 03 / 04
Testbar kode
Komponentene er adskilt, og hver av dem testes automatisk med PHPUnit før den publiseres. Feiler Tripletex-koblingen, påvirker det ikke resten av nettstedet.
- 04 / 04
Ingen leverandørlås
Koden følger kjente mønstre fra Laravel, så en erfaren PHP-utvikler kan sette seg inn i den uten opplæring. Du kan derfor bytte leverandør uten å bytte plattform.
app/Http/Controllers/OrderController.php- kundeportal
- app/Http/Controllers
- OrderController.php
- app/Models/Order.php
- app/Services/TripletexClient.php
- routes/web.php
- tests/OrderControllerTest.php
- plugin.php
final class OrderController extends Controller{public function __construct(private readonly TripletexClient $tripletex,) {}public function index(Request $request): View{$orders = Order::query()->forCustomer($request->user())->latest()->paginate(20);return view('orders.index', compact('orders'));}}
Serveroppsettfor mye trafikk
Når trafikken dobles, blir serveren ofte flaskehalsen. Et delt webhotell til 99 kroner i måneden er ikke laget for så mye trafikk.
Vi kjører WordPress på FrankenPHP, med Traefik foran og Redis til mellomlagring. Med dette oppsettet går svartiden typisk ned fra 200–300 ms til 20–30 ms.
Traefik gjør det også mulig å publisere uten nedetid. Ny kode kan publiseres midt på dagen uten at kundene mister handlekurven.
40 ms195 ms97 % treff18 spørringerTeknologien vi bruker i drift
FrankenPHP Worker Mode
WordPress starter én gang og ligger klar i minnet på PHP 8.4. Med vanlig PHP-FPM starter hele applikasjonen på nytt for hver sidevisning, og den tiden sparer du.
Traefik fordeler trafikken
Flere kopier av nettstedet kjører samtidig. Traefik fordeler trafikken mellom dem og håndterer SSL. Ved publisering starter den nye versjonen ved siden av den gamle, og trafikken flyttes over når den er klar.
Redis til mellomlagring og bakgrunnsjobber
Svar på tunge databaseoppslag mellomlagres, og handlekurvene ligger i minnet. E-post og synkronisering mot ERP kjører i bakgrunnen, så de besøkende slipper å vente.
Versjonskontroll og automatiske tester
All kode ligger i Git. Automatiske tester kjører før hver publisering, og testmiljøet er satt opp likt som den publiserte siden. Rutineoppgaver er automatisert, og ingen laster opp filer for hånd.
Samme nettsted på PHP-FPM og FrankenPHP
Fjelljakke Pro Gore-Texkr 3 499
Fjelljakke Pro Gore-Texkr 3 499Lastetiden påvirker om besøkende blir værende. Google har målt at lengre lastetid gir færre konverteringer, fordi flere gir opp før siden er ferdig lastet [1].
Sikkerhet fra starten
Rundt 90 % av alle hackede CMS-sider kjører WordPress. Det sier mer om hvordan sidene vedlikeholdes enn om selve plattformen. De fleste innbrudd skyldes plugins som aldri ble oppdatert, passord som er brukt på flere tjenester, eller et tema fra en tvilsom kilde. Derfor planlegger vi sikkerheten fra starten av prosjektet.
Brannmur for nettsider (WAF)
Kjente angrepsmetoder blir stoppet før de når WordPress. Beskyttelsen ligger i serveroppsettet, så du slipper enda en plugin som må oppdateres.
Automatiske sikkerhetsoppdateringer
WordPress og plugins oppdateres først i testmiljøet, testes og publiseres deretter. Sikkerhetsoppdateringer går ut samme dag, og andre oppdateringer følger en fast plan.
Daglig backup
Hver natt tar vi en full kopi av hele oppsettet, med både filer og database. Vi tester jevnlig at kopien kan hentes tilbake, og nettstedet kan være oppe igjen i løpet av minutter.
Overvåking og varsling
Vi overvåker oppetid, responstid og mistenkelig aktivitet hele døgnet. Som regel får vi varselet før kundene dine merker noe. Les mer om vedlikeholdsavtalen vår.
Produktsøkmed Meilisearch
Standardsøket i WordPress leter bare etter nøyaktig de ordene kunden skriver. Hvis kunden skriver «vinterstøvler dame» og produktet heter «Støvletter vinter 2026», blir resultatlisten tom. Derfor bruker vi Meilisearch som egen søkemotor ved siden av WordPress.
Meilisearch tåler skrivefeil, sorterer etter relevans og oppdaterer filtrene mens kunden skriver. Med KI kan søkemotoren også forstå hva kunden mener. Da finner «noe varmt til beina» også vinterstøvlene.
Søket oppdateres med en gang noe endres i WordPress, og det svarer på under 12 millisekunder.
Støvletter vinter 2026Fjellsport1 899 kr96 %
Vinterstøvel Nord dameFjellsport1 499 kr93 %
Ullsokker tykk, 2-pkVarde249 kr88 %
Tursko Gore-Tex vinterNorheim2 199 kr84 %
noe varmt→Foret eller ulltil beina→Sko, støvler og sokkervinterstøvler→Samme som støvletter- Responstid
- 9 ms
- Relevans
- 94 %
- Produkter indeksert
- 1 240
Tre måter å bygge WordPress på
| Tradisjonell | HybridVi anbefaler denne | Headless | |
|---|---|---|---|
| Responstid | Treg (2–5 s) | Rask (<200 ms) | Rask (<100 ms) |
| Hverdagen for redaktøren | Enkel | Enkel | Krever utvikler |
| Forhåndsvisning av innhold | Ja | Ja | Begrenset |
| Gutenberg-editoren | Ja | Ja | Nei |
| Støtte for plugins | Full | Delvis | Minimal |
| Kapasitet under trafikktopper | Begrenset | Høy | Svært høy |
| Kostnad å bygge | Lav | Middels | Høy |
| Vedlikehold på sikt | Enkelt | Moderat | Komplisert |
Norske krav du må forholde deg til
Personvern og GDPR
Datatilsynet følger med på hvor personopplysninger lagres og hvem som behandler dem. Sender nettsiden skjemadata til amerikanske tredjeparter uten databehandleravtale, kan det være i strid med personvernreglene. Vi lagrer dataene i EU/EØS.
Universell utforming (WCAG)
Forskriften om universell utforming ble strammet inn fra 2025. Vi bygger etter WCAG 2.1 AA fra første skisse, fordi det koster mer å rette opp tilgjengeligheten i etterkant.
Norske integrasjoner
Vi kobler WordPress mot Tripletex, Power Office, HubSpot, Vipps, BankID og Altinn. Ferdige plugins sliter ofte med norske datoformater, organisasjonsnumre og MVA-satser, så koblingene bygger vi selv.
Samtykke og skjemahåndtering
Skjemaer samler ofte inn personopplysninger som må behandles etter personvernreglene, og nyhetsbrev krever samtykke. Vi bygger skjemaene inn i nettsiden, så dataene ikke går via en gratis plugin til en server i USA.
Hva enterprise WordPress-utvikling koster
Prisen avhenger av hvor komplisert prosjektet er og hvor mange integrasjoner det trenger. Etter en første samtale får du et konkret estimat som vi holder oss til. Holder det med en vanlig bedriftsnettside, står prisene på siden om WordPress-nettside.
Vanlig bedriftsnettside
Fra50 000 kr
Eget tema og universell utforming, uten integrasjoner
Enterprise WordPress
Fra150 000 kr
Integrasjoner mot CRM/ERP, eget søk, testmiljø og automatisk publisering
Enterprise WooCommerce
Fra200 000 kr
Eget søk, servere som tåler kampanjetrafikk, Vipps og Klarna
Vedlikehold og SLA
Fra2 500 kr/mnd
Overvåking, sikkerhet, oppdateringer, avtalt responstid
Fra kartlegging til drift
Det samme teamet følger prosjektet fra første møte til drift, så kunnskapen om prosjektet ikke forsvinner i en overlevering.
Kartlegging og arkitektur
Først setter vi oss inn i virksomheten: trafikken, hvilke systemer som skal kobles på og hva som ikke fungerer i dag. Deretter lager vi en plan for hvordan løsningen skal bygges, og forklarer hvorfor vi velger som vi gjør.
Utvikling med automatiske tester
Koden ligger i Git fra første linje, og hver endring går gjennom automatiske tester. Du følger arbeidet i testmiljøet og gir tilbakemelding direkte der.
Lansering uten nedetid
Vi tar oss av publiseringen, flyttingen av domenet, SSL-sertifikatet og sikkerhetsinnstillingene. Når du har godkjent, setter vi nettstedet i drift.
Drift etter lansering
Når nettstedet er i drift, følger vi det opp gjennom vedlikeholdsavtalen. Den gir overvåking, automatiske oppdateringer og avtalt responstid.
Hvem enterprise WordPress passer for
De fleste trenger ikke dette. Har du fem informasjonssider og moderat trafikk, holder en vanlig bedriftsnettside. Kjenner du deg igjen i punktene under, bør du se nærmere på hvordan nettsiden er bygget:
Da trenger du mer enn en vanlig nettside, med drift og infrastruktur som tar høyde for det. Det er slike prosjekter vi jobber mest med.
- Bedriften er avhengig av nettstedet, og nedetid gir tapt omsetning
- Utviklingen har stoppet opp fordi standardoppsettet ikke strekker til
- Databasen vokser, og søket gir stadig dårligere treff
- Du trenger koblinger mot norske systemer som Tripletex, HubSpot eller et bookingsystem
- Kontraktene du signerer stiller faste krav til sikkerhet og etterlevelse av regelverk
- Du vil eie koden selv, så du kan bytte leverandør om du ønsker det
Åtte spørsmål du kan stille en WordPress-utvikler
- Ligger koden i Git, slik at du kan se hva som er endret og av hvem?
- Finnes det et testmiljø, eller testes endringer direkte på den publiserte siden?
- Kan de vise målte ytelsestall, i stedet for å si at siden «er rask»?
- Hvordan jobber de med sikkerhet utover å oppdatere WordPress og plugins?
- Skriver de egne plugins, eller setter de sammen ferdige plugins fra markedsplassen?
- Hva får du etter lansering? Finnes det en vedlikeholdsavtale med SLA og avtalt responstid?
- Har de referanser fra norske bedrifter med lignende behov?
- Eier du koden etterpå, og har du selv tilgang til den?
Beskriv hvordan nettsiden brukes i dag og hva som skal komme, så sier vi hva vi mener må endres og hva det vil koste.
Spørsmål vi ofte får
Tåler WordPress store nettsteder?
Ja. Time, TechCrunch og The New Yorker bruker WordPress og har millioner av sidevisninger i måneden. Hvor mye en nettside tåler, avhenger av hvordan den er bygget og driftet. Hos oss holder FrankenPHP Worker Mode applikasjonen klar i minnet, og Redis mellomlagrer tunge databaseoppslag. Søk går til en egen søkemotor, så databasen slipper den lasten.
Hva er forskjellen på WPFluent og tradisjonell WordPress-utvikling?
WPFluent gir WordPress en fast struktur etter modell fra Laravel. Logikken, databaseoppslagene og visningen av innholdet ligger hver for seg, og hver del testes automatisk før den publiseres. Koden blir lettere å sette seg inn i og å endre, og det gjør vedlikeholdet billigere.
Hvorfor FrankenPHP i stedet for tradisjonell Apache/Nginx?
Med Worker Mode ligger applikasjonen ferdig startet i minnet. Hver forespørsel slipper oppstarten som vanlig PHP-FPM gjør på nytt for hver sidevisning. Svartiden går fra et par hundre millisekunder til godt under tretti, og serveren klarer trafikktopper med mindre maskinvare. Det gir lavere driftskostnader til vanlig og mer kapasitet når en kampanje sender tusen besøkende inn samtidig.
Bør jeg velge headless eller hybrid?
Begge skiller deler av nettsiden ut fra WordPress, men i ulik grad. Med headless lages hele nettsiden utenfor WordPress, og innholdet hentes fra WordPress. Det gir best ytelse, men du mister forhåndsvisning og Gutenberg-editoren, og endringer i frontend krever en utvikler. Hybrid beholder WordPress-temaet og redaktørverktøyene og bruker egen frontend bare der det gir en tydelig gevinst. Tabellen over viser forskjellene punkt for punkt.
Kan dere modernisere en eksisterende WordPress-side?
Ja. Først kartlegger vi hva som faktisk er i bruk. Deretter fjerner vi plugins ingen trenger og flytter den egne koden over i WPFluent. Innholdet og designet blir med over. Før noe publiseres, tester vi grundig, og overgangen skjer uten nedetid. For de besøkende ser nettsiden ut som før.
Hva koster enterprise WordPress-utvikling?
Enterprise WordPress med integrasjoner mot CRM eller ERP koster fra 150 000 kr, og enterprise WooCommerce med eget søk og lastbalansering fra 200 000 kr. Trenger du bare en vanlig bedriftsnettside, starter prisen på 50 000 kr. Hvor prosjektet ditt havner, avhenger av antall integrasjoner og hvor mye egen logikk som trengs. Etter en første samtale får du et konkret estimat. I prisoversikten finner du prisene for de andre WordPress-tjenestene.
Hva er forskjellen mellom temautvikling og pluginutvikling?
Temaet bestemmer hvordan nettstedet ser ut. Plugins bestemmer hva det kan gjøre, som innloggede sider, koblinger mot andre systemer og egne innholdstyper. Vi bygger begge deler, men holder dem adskilt, fordi funksjonene hører hjemme i plugins. Ligger logikken i temaet, forsvinner den når designet byttes, og den må bygges på nytt. Med to adskilte lag kan du bytte utseende uten å røre funksjonene.
Kan dere integrere WordPress mot Tripletex eller HubSpot?
Ja. Vi kobler WordPress mot Tripletex, Power Office, HubSpot og bookingsystemer med egne koblinger bygget på WPFluent. Ferdige koblingsplugins fra markedsplassen unngår vi, fordi de ofte slutter å virke etter en oppdatering og kan føre til at data mangler. En integrasjon skrevet for deg følger datamodellen din og håndterer norske organisasjonsnumre og MVA-satser riktig. Den kan synkronisere fortløpende, så du slipper å vente på en nattlig kjøring.
Trenger jeg headless WordPress?
Sannsynligvis ikke. For de fleste bedrifter gir hybrid en nesten like rask side med mye mindre kompleksitet, og redaktørene beholder verktøyene de kjenner. Headless koster mer å bygge og vedlikeholde, og gevinsten er ofte mindre enn man regner med. Vi anbefaler det bare når konkrete ytelsestall eller krav til frontend forsvarer det.
Hva er WordPress Bedrock, og bruker dere det?
Bedrock gir WordPress avhengighetshåndtering med Composer og miljøvariabler, og en ryddig prosjektstruktur å starte med. WPFluent bygger på de samme prinsippene og legger i tillegg til en fast struktur for selve koden og automatiske tester. Bedrock ordner hvordan filene er organisert, mens WPFluent bestemmer hvordan selve applikasjonen er bygget. I prosjekter der Bedrock passer, bruker vi deler av det sammen med WPFluent.
Snakk med en utvikler om WordPress-nettsiden
Skriv noen linjer om hva du vil få til, så tar vi kontakt.