Kort svar: PHP er programmeringssproget, WordPress er skrevet i. Det kører på serveren – ikke i browseren – og bygger hver dynamisk side ved at hente indhold i databasen og samle den HTML, browseren får. Besøgende ser aldrig PHP-koden, kun resultatet. Som site-ejer møder du sproget tre steder: versionen i kontrolpanelet, en håndfuld indstillinger som memory_limit, og fejlbeskeder, når et plugin går i stå. Hvilken version du skal køre, står i opslaget om PHP version.
Fagligt gennemgået: 2. oktober 2026
Hvad er PHP? Det er motoren under næsten alle WordPress-sites, men de fleste site-ejere ser den kun som et tal i kontrolpanelet eller en fejlbesked på en dårlig dag. Her får du forklaret, hvad PHP gør, hvordan en side bliver til fra klik til HTML, hvordan sproget ser ud på fem linjer, hvad der adskiller det fra HTML og JavaScript – og de indstillinger og fejl, du selv kommer til at møde.
PHP’s rolle i WordPress
Når en besøgende åbner en side, der ikke ligger i cachen, starter serveren PHP: WordPress-kernen indlæses, tema og plugins kører deres kode, databasen spørges, og den færdige HTML sendes retur. Alt, dit site gør – fra menuer til WooCommerce-checkout – er PHP-kode i arbejde.
Det forklarer to hverdagsfænomener: hvorfor flere og tungere plugins gør sitet langsommere (mere kode pr. visning), og hvorfor en „hvid skærm“ typisk er en PHP-fejl – koden gik i stå, før siden blev færdig. Det forklarer også, hvorfor sidecache gør så stor en forskel: en side fra cachen kræver slet ikke PHP.
Fra klik til færdig side: sådan arbejder PHP
En WordPress-side findes ikke som en færdig fil på serveren. Den bliver bygget, hver gang nogen beder om den, og det er PHP, der bygger. Forløbet tager typisk under et halvt sekund:

- Browseren beder om en adresse, fx /kontakt/.
- Webserveren ser, at adressen hører til WordPress, og starter PHP med filen index.php.
- WordPress indlæser sin kerne, det aktive tema og alle aktive plugins – hver eneste gang.
- Koden spørger databasen: hvilken side er /kontakt/, hvad står der i den, hvilke menuer og widgets hører til?
- PHP samler svarene til ét HTML-dokument med tekst, links og henvisninger til billeder og stylesheets.
- Webserveren sender HTML’en til browseren, som tegner siden. PHP er færdig og glemmer alt – næste besøgende starter forfra.
Det sidste punkt forklarer, hvorfor caching er så effektivt: en sidecache gemmer resultatet af trin 5, så de næste besøgende får den færdige HTML uden at starte PHP overhovedet. Kun sider, der er forskellige fra besøgende til besøgende – kurv, checkout, wp-admin – skal igennem alle seks trin hver gang.
Sådan ser PHP ud – et eksempel på fem linjer
Du behøver ikke kunne læse PHP for at drive et WordPress-site, men det hjælper at have set det én gang. Her er et stykke kode, som et tema kunne bruge til at vise sitets navn og antallet af udgivne indlæg:
<?php
$navn = get_bloginfo( 'name' );
$antal = wp_count_posts()->publish;
echo '<h1>' . esc_html( $navn ) . '</h1>';
echo '<p>Vi har udgivet ' . $antal . ' indlæg.</p>';
Tre ting er værd at lægge mærke til. Alt mellem <?php og slutningen af filen er kode, som serveren udfører. Ordene get_bloginfo og wp_count_posts er funktioner, WordPress stiller til rådighed – det er dem, temaer og plugins er bygget af. Og echo skriver HTML ud: det eneste, browseren nogensinde får, er resultatet <h1>Hostious</h1> og en sætning med et tal. Selve PHP-koden forlader aldrig serveren.
Det er også derfor, en fejl i én linje PHP kan vælte hele sitet: går koden i stå i linje tre, bliver der aldrig skrevet noget HTML ud, og besøgende ser en tom side. Hvordan du finder den linje, står længere nede.
PHP, HTML, JavaScript og MySQL: hvem gør hvad
De fire ord blandes tit sammen, men de har hver sin opgave på et WordPress-site:
| Sprog | Kører hvor | Opgave | Ser du det? |
|---|---|---|---|
| PHP | På serveren | Bygger siden: henter indhold, kører tema og plugins, skriver HTML | Nej – kun resultatet |
| HTML | I browseren | Beskriver indholdet: overskrifter, afsnit, links, billeder | Ja – via “Vis kilde” |
| CSS | I browseren | Bestemmer udseendet: farver, skrifter, kolonner | Ja – som stylesheets |
| JavaScript | I browseren (og i enkelte tilfælde på serveren) | Interaktion efter indlæsning: menuer, slidere, kurv der opdaterer uden genindlæsning | Ja – som scriptfiler |
| MySQL/MariaDB | På serveren | Gemmer indhold, brugere, ordrer og indstillinger – det, PHP spørger efter | Nej |
Husk reglen: PHP og databasen arbejder, før siden sendes; HTML, CSS og JavaScript arbejder, efter den er modtaget. Når en side er langsom, er det første spørgsmål derfor, om tiden går før eller efter – på serveren (PHP, database) eller i browseren (billeder, scripts). Det afgør, om løsningen er bedre hosting og cache eller lettere sider. Hvordan databasen hænger sammen med resten, står i opslaget om hvad en MySQL-database er.
Hvor PHP kommer fra – og hvorfor WordPress bruger det
PHP blev skabt i 1994 af Rasmus Lerdorf som en samling små værktøjer til hans egen hjemmeside – navnet stod oprindeligt for “Personal Home Page”. Sproget voksede, blev open source og hedder i dag “PHP: Hypertext Preprocessor”. Det blev populært af én grund: det var nemt at blande kode og HTML i samme fil og få et resultat på skærmen med det samme.
Da WordPress blev udgivet i 2003, var PHP og MySQL det, der fandtes på stort set alle webhoteller. Valget var praktisk, ikke ideologisk – og det er grunden til, at WordPress stadig kan køre på næsten enhver server i verden. Hele WordPress-kernen, temaer og de titusindvis af plugins er skrevet i PHP, så et skift af sprog er ikke realistisk. Til gengæld har PHP 8-generationen gjort sproget markant hurtigere og strengere, så moderne PHP og gammel PHP er to forskellige oplevelser. Hvad WordPress selv er, og hvad det kan bruges til, står i opslaget om hvad WordPress er.
Versioner: fart og sikkerhed

Hver PHP-version lever i tre stadier: to års aktiv support (fejl og sikkerhed rettes), to års security-only (kun kritiske sikkerhedsrettelser) – og derefter end-of-life, hvor nye sårbarheder forbliver åbne. Samtidig er 8.x-generationen hurtigere end de 7.x-versioner, som en del ældre sites stadig kører på. Det gør versionsvalget til den sjældne optimering, der giver både fart og sikkerhed for prisen af en kontrolleret opgradering.
Status for de understøttede versioner ifølge php.net, pr. oktober 2026:
| Version | Aktiv support til | Sikkerhedsrettelser til | Status |
|---|---|---|---|
| PHP 7.4 og ældre | Udløbet | Udløbet | End-of-life – opgradér |
| PHP 8.0 og 8.1 | Udløbet | Udløbet | End-of-life – opgradér |
| PHP 8.2 | Udløbet | 31. december 2026 | Kun sikkerhed – planlæg opgradering nu |
| PHP 8.3 | Udløbet | 31. december 2027 | Kun sikkerhed – fornuftigt valg |
| PHP 8.4 | 31. december 2026 | 31. december 2028 | Aktiv support – fornuftigt valg |
| PHP 8.5 | 31. december 2027 | 31. december 2029 | Nyeste – tjek plugin-kompatibilitet først |
Den nyeste version er ikke automatisk det rigtige valg, fordi ældre plugins og temaer halter efter. Hvilken PHP version WordPress kræver og anbefaler, hvad hver version fra 7.4 til 8.5 gav, og hvornår på året du bør skifte, står i det selvstændige opslag om emnet – her nøjes vi med livscyklussen og tabellen.
Sådan finder du din PHP-version
Den nemmeste vej er i WordPress: Værktøjer → Webstedets helbred → Info → Server. Her står den version, PHP faktisk kører med for dit site. Har du SSH-adgang, kan du også tjekke fra terminalen:
php -v
wp --info
Vær opmærksom på, at kommandolinjens PHP kan være en anden version end den, webserveren bruger til sitet. Er der tvivl, er tallet i Webstedets helbred det, der gælder.
Sådan opgraderer du PHP sikkert
Du skifter typisk PHP-version i hostingens kontrolpanel med få klik, men rækkefølgen afgør, om det går glat: tag en backup, opdatér først WordPress, tema og plugins, test skiftet på en staging-kopi, og klik derefter sitet igennem fra forside til checkout. Hele fremgangsmåden – og rækkefølgen mellem plugins, tema, kerne og PHP – står i guiden til at opdatere WordPress.
Går noget alligevel skævt, viser guiden om fejl efter PHP-opgradering vejen fra fejlbesked til løsning. Kører du flere sites, er det en fordel, hvis versionen kan vælges pr. site, så ét gammelt site ikke holder de andre tilbage – spørg din udbyder, om det er muligt.
De fem PHP-indstillinger, du kommer til at møde

Ud over versionen støder de fleste site-ejere på fem indstillinger i kontrolpanelets PHP-sektion:
- memory_limit – hvor meget hukommelse ét script må bruge. 256M er et fornuftigt niveau for WordPress med WooCommerce, og fejlen „Allowed memory size exhausted“ betyder, at grænsen er nået.
- max_execution_time – hvor længe et script må køre, før det stoppes. PHP’s standard er 30 sekunder, og „Maximum execution time exceeded“ er dens fejl.
- upload_max_filesize og post_max_size – hvor store filer der kan uploades. post_max_size skal være mindst lige så stor som upload_max_filesize.
- display_errors – bør være slået fra på et live site, så fejlbeskeder med filstier ikke vises for besøgende. Fejlene skal i loggen (
log_errors), hvor du kan læse dem.
Under Værktøjer → Webstedets helbred → Info → Server viser WordPress de værdier, PHP faktisk kører med. Det er dem, der gælder – ikke dem, der står i en gammel php.ini fra en tidligere server.
OPcache og PHP-workers: det, der gør PHP hurtigt
PHP læser og oversætter i princippet koden forfra ved hver sidevisning. OPcache gemmer den oversatte kode i hukommelsen, så det kun sker én gang, og det giver en mærkbar forskel for sider, der ikke er cachet. OPcache bør være slået til, og den forklarer også, hvorfor en ændring i en PHP-fil nogle gange først kan ses efter et øjeblik.
PHP-workers (eller processer) er antallet af sidevisninger, serveren kan bygge samtidig. Har du fire workers, og der kommer fem besøgende i samme øjeblik til sider, der ikke er i cache, venter den femte – og ved for mange ventende får de en 503 eller 504. Det er den grænse, der oftest mærkes under en kampagne. Hvor mange du har brug for, afhænger af, hvor meget trafik der rammer PHP uden om cachen – en webshop med kurv, checkout og kundekonti har langt flere ucachede visninger end en brochure-side.
Sammen med en sidecache, der holder de fleste besøg helt væk fra PHP, er det dét, hosting reelt leverer på PHP-siden: en understøttet version, OPcache slået til og nok workers til den trafik, du faktisk har. Hos Hostious kører WordPress hosting på LiteSpeed og NVMe fra WP Mini til 39 kr./md. ekskl. moms, og en webshop får med WooCommerce hosting egen database og Redis, så kurv og checkout ikke venter på PHP. Spørg altid din udbyder, hvor mange samtidige PHP-processer din plan giver, før en stor kampagne.
Når PHP fejler: fra hvid skærm til fejlbesked
En hvid skærm er en PHP-fejl, der ikke bliver vist. Slå loggen til midlertidigt i wp-config.php:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Genindlæs siden, og læs wp-content/debug.log. Linjen med „Fatal error“ nævner fil og linje, og filstien fortæller, hvilket plugin eller tema der fejlede. De hyppigste fejl efter et versionsskift er „Call to undefined function“ (en funktion, der er fjernet i den nye version) og „Uncaught TypeError“ (strengere typetjek i PHP 8). Løsningen er næsten altid en opdatering af det plugin, der nævnes – og hvis det ikke vedligeholdes længere, en erstatning. Slå debug fra igen bagefter. Se også guiden om kritisk fejl i WordPress.
Læs også
- Ordbog: Hosting-ordbogen
- Fejl efter PHP-opgradering: deprecated, fatal og hvid skærm
- Hvad er en MySQL-database?
- Hvad er LiteSpeed? Webserveren bag hurtig WordPress-hosting
- Hvad er WordPress?
- Hvad er et CMS? Content management system forklaret for begyndere
- PHP version: hvilken skal WordPress køre – og sådan vælger du den rigtige
- Hvad er HTML? Sproget, der beskriver hver webside – forklaret med eksempler
- WordPress hosting hos Hostious – LiteSpeed, NVMe og staging fra WP StartUp
Ofte stillede spørgsmål om PHP
Skal jeg kunne programmere PHP for at bruge WordPress?
Nej. Du møder kun sproget som versionsvalget i kontrolpanelet og i sjældne fejlbeskeder. Kodearbejdet er gjort af WordPress-, tema- og plugin-udviklerne.
Hvor meget hurtigere er en ny PHP-version?
Det afhænger af udgangspunktet. Springet fra 7.4 til 8.x mærkes tydeligt på ucachede sider og i wp-admin, mens spring inden for 8.x er mindre. Gevinsten er størst der, hvor cachen ikke redder dig.
Hvorfor advarer mit site om en gammel PHP-version?
WordPress viser advarslen i Webstedets helbred, når versionen er ældre end anbefalet eller har passeret end-of-life. Pr. oktober 2026 anbefaler WordPress PHP 8.3 eller nyere. Tag advarslen alvorligt, men planlæg opgraderingen: test, skift, verificér.
Hvad er PHP-workers, og hvor mange har jeg brug for?
Det er antallet af sidevisninger, serveren kan bygge samtidig uden om cachen. Behovet afhænger af, hvor meget ucachet trafik du har: en lille brochure-side klarer sig med få, mens en webshop med kampagner har brug for flere. Rammes grænsen, ser besøgende 503- eller 504-fejl under spidsbelastning.
Hvordan finder jeg ud af, hvilket plugin der giver en hvid skærm?
Slå WP_DEBUG og WP_DEBUG_LOG til i wp-config.php, genindlæs siden, og læs wp-content/debug.log. Linjen med „Fatal error“ nævner filen – og filstien indeholder pluginnets navn.
Er PHP det samme som HTML?
Nej. HTML beskriver indholdet, browseren viser; PHP er det program på serveren, der skriver HTML’en, før den sendes. Et WordPress-tema består af PHP-filer, der blander de to: faste HTML-stumper og PHP-kode, som fylder indholdet ind fra databasen.
Kan jeg se PHP-koden på en hjemmeside?
Nej. Vælger du “Vis kilde” i browseren, ser du kun den HTML, PHP har skrevet ud. Koden selv ligger i filerne på serveren – i wp-content/themes og wp-content/plugins – og kan kun læses med adgang til dem via SFTP eller kontrolpanelet.
Udgivet 31. august 2026Opdateret 30. oktober 2026Fagligt gennemgået 2. oktober 2026
