Opbygningen af et moderne Vanilla PHP-site
Kombineret med Tailwind CSS og Vue.js giver dette en yderst performant, skalerbar og vedligeholdelsesvenlig arkitektur. Ved at adskille logik, layout og data minimeres redundant kode, mens sitet gøres målrettet til både moderne browsere, søgemaskiner og AI-crawlere.
Struktur og Boxed Design
Sitet er struktureret omkring genanvendelige filer, hvor header.php og footer.php indkapsler indholdet. Designet benytter et "boxed" layout, hvor hovedcontaineren er centreret med maksimal bredde, hvid baggrund og kraftigt afrundede hjørner. Dybde skabes via store skyggeeffekter. Forsidens top integrerer en dynamisk hero-sektion, der overholder formen.
Centraliseret Menusystem
Navigationen styres udelukkende gennem tekstfilen menu.cfg med kommaseparerede værdier. I header.php indlæser PHP denne fil, parser linjerne og opbygger et hierarkisk array, som konverteres til JSON. En minimal Vue.js-applikation i footer.php overtager herefter styringen af mobilmenuens tilstand på klientens side.
SEO og AI-GEO Optimering
Kildekoden er forberedt til både klassisk SEO og Generative Engine Optimization (GEO). Hver side definerer variabler, som flettes ind i meta-tags. Til AI-crawlere udskrives et specifikt ai-content-type meta-tag samt kompleks JSON-LD Schema.org data for at styrke præsentationen i vidensgrafer.
Unik Besøgslogning (log.txt)
For at indsamle statistik uden at overfylde systemet, aflæser logger.php IP-adressen og tjekker log.txt for tidligere registreringer. Findes den ikke, hentes geografiske data som land og by via et eksternt API, hvorefter brugerens data og User Agent tilføjes sikkert i filen.
Sammenligning af Arkitekturer
Valget af den ovenstående skræddersyede Vanilla PHP-løsning står i kontrast til brugen af standardiserede Content Management Systemer (CMS). Hver arkitektur løser forskellige behov. Herunder følger en sammenligning samt fordele og ulemper ved de tre primære tilgange til moderne webudvikling.
1. Skræddersyet Vanilla PHP
I denne løsning (den nuværende arkitektur) bygges sitet fra bunden med ren PHP (eller et minimalt framework) parret med moderne frontend-værktøjer som Tailwind og Vue.js. Indhold styres via kode, filer eller simple databaser frem for et stort administrationspanel.
Fordele:
- Ultimativ Performance: Uden tusindvis af databasekald og tunge plugins indlæses siderne lynhurtigt.
- Fuld Kontrol og Fleksibilitet: Ingen bloatware. Implementering af avanceret AI-GEO er let at skræddersy.
- Høj Sikkerhed: Bruger ikke et kendt system og er dermed ikke mål for automatiserede hackerangreb.
- Lave Driftsomkostninger: Kræver minimal serverkraft og billig hosting.
Ulemper:
- • Manglende Brugervenlighed for Lægfolk: Kræver kodning at opdatere indhold.
- • Længere Udviklingstid i Starten: Alt skal kodes og testes fra bunden.
- • Skalerbarhed af Indhold: Svært at administrere hundredevis af artikler over tid.
2. Traditionelt CMS (f.eks. WordPress)
Et system, hvor frontend (det brugeren ser) og backend (administrationspanelet og databasen) er tæt forbundet i én monolitisk pakke.
Fordele:
- Høj Brugervenlighed (WYSIWYG): Redaktører kan nemt oprette og redigere indhold via et visuelt interface.
- Massivt Økosystem: Tusindvis af færdige temaer og plugins gør det let at udvide.
- Hurtig "Time-to-Market": Et fuldt funktionelt site kan sættes op på få timer.
- Indbygget Brugerstyring: Nemt at tildele forskellige roller.
Ulemper:
- • Tung Kode og Dårlig Performance: Overflødig CSS/JS og mange databasekald sløver load-tiderne.
- • Konstant Vedligeholdelse: Kernesystem og plugins skal konstant opdateres for at undgå at blive hacket.
- • Mindre Fleksibilitet for Udvikleren: Man er bundet af systemets logik. Unikke arkitekturer kræver tunge tredjeparts-plugins.
3. Headless CMS (f.eks. Strapi, Sanity)
Et moderne setup, hvor backenden udelukkende fungerer som et indholds-API. Frontenden (f.eks. bygget i Vue.js eller ren PHP) henter indholdet via dette API. Frontend og backend er fuldstændig adskilt.
Fordele:
- Omnichannel Indholdsdistribution: Indholdet skrives ét sted og kan sendes til hjemmesider, apps mv. via samme API.
- Udviklerfrihed og Performance: Frontenden kan bygges præcis, som man ønsker (ofte via Static Site Generation).
- Fremtidssikret: Frontenden kan udskiftes uden at røre ved indholdet i databasen.
- Øget Sikkerhed: Adskillelsen gør det sværere at kompromittere selve indholdssystemet.
Ulemper:
- • Høj Kompleksitet: Kræver viden om API'er. Frontenden skal bygges fuldstændigt fra bunden.
- • Dyrere og Langsommere at Opsætte: Det kræver flere ressourcer at bygge og forbinde to adskilte systemer.
- • Mindre Intuitivt for Redaktører: Mangler ofte "Live Preview", hvilket gør det svært at se slutresultatet før publicering.
Skal vi finde den rette arkitektur?
Tag kontakt for at høre mere om de forskellige løsninger og teknologivalg til dit næste projekt.