Tech Thursday: Tekniken bakom WordPress

tekniken bakom wordpress

Jag kommer varannan torsdag framöver att ge er massa techiga tips och trix för WordPress. Därför tänkte jag börjat med att förklara hur WordPress faktiskt fungerar. Med en grundförståelse för tekniken bakom plattformen kommer det bli lättare att förstå framtida inlägg.

De här inläggen kommer handla om wordpress.org – alltså när du har en fristående wordpressinstallation på eget webbhotell. Mer om skillnaden mellan wordpress.org och wordpress.com kan du läsa här.

WordPress är en CMS

Rityta 1

CMS står för Content Management System. Det finns en rad olika sådana system på marknaden, t.ex. Drupal eller Joomla. Det innebär att man bygger en hemsida med ett inbyggt system där man enkelt kan logga in och ändra innehåll på sidan – så som text, bilder, blogginlägg – utan att behöva ändra i koden som styr hur sidan visas för besökaren.

WordPress är en väldigt populär CMS som är ”open source” vilket betyder att det är gratis att ladda ned och använda systemet. När du väl installerat det kan du också ändra och utveckla det precis som du vill.

Statisk vs dynamisk webbsida

En traditionell, statisk hemsida, är byggd så att text och bilder kodas in i ett HTML-dokument. Om man vill ha en rubrik och en brödtext skriver man då:


<H1> Detta är rubrik 1 </H1>

<p>Detta är brödtexten…</p>

För att ändra texten och innehållet måste man gå in i koden till sidan och ändra den. Det här blir både krångligt och tidskrävande för webbplatser som har massor av sidor och innehåll och som behöver uppdateras ofta – som en blogg till exempel.

Så det en CMS som WordPress då gör är att den använder kodspråket PHP för att skapa en dynamisk webbplats där olika delar av webbsidan ligger i olika dokument och sedan pusslas ihop för att skapa en sida. Det gör det också enkelt att skapa oändligt många sidor, t.ex. blogginlägg, utan att det behövs ett nytt HTML-dokument för varje sida.

I WordPress är dessa pusselbitar PHP-dokument. De förvaras på din webbserver och du kan se filerna genom admin-panelen på ditt webbhotell eller genom att använda ett FTP-program som FileZilla.

webbserver

I de flesta av de här filerna har det skrivits ut en massa kod i form av funktioner som styr hur olika typer av innehåll ska packas ihop. De här funktionerna kan sedan användas av olika teman för att pussla ihop en sida.

Pusselbitarna är filer som heter t.ex. header.php eller content.php. I dessa filer har det skrivits ut HTML-kod som skapar olika lådor skulle man kunna säga som kan fyllas med innehåll. Men de har inget innehåll, som rubrik eller brödtext, i själva PHP-filen utan refererar till en rad i en databas där innehållet ska hämtas. Så istället för det statiska exemplet ovan så ser det istället ut så här:


<H1> <?php wp_post_title ?></H1>

<p><?php wp_post_content ?></p>

(Obs! Förenklat exempel).

Hänger ni med?

Innehållet förvaras i en databas

posts

Så själva innehållet på din blogg förvaras alltså inte som filer på din webbserver tillsammans med WordPress-filerna. Med innehåll menar jag rubriker, brödtext, kategorier, taggar och liknande. Allt detta förvaras istället i en databas. Undantaget är bilder som laddas upp och förvaras på din webbserver.

Databasen, som oftast sköts genom databashanteraren MySQL, tillhandahålls av ditt webbhotell. Du kan ofta logga in och titta på din databas från admin-panelen på ditt webbhotell under rubriken phpMyAdmin. En databas är i princip som ett excel-dokument där en massa text lagras i olika tabeller med rader och kolumner.

Det kan se ut ungefär så här:

databas

Så i din databas har WordPress-installationen lagt upp en rad olika tabeller. I tabellen som förvarar alla inlägg representerar varje rad ett unikt inlägg som får ett eget ID-nummer. Sedan finns olika kolumner för t.ex. publiceringsdatum, författare, rubrik, innehåll, kategori, taggar osv. Alla dessa saker kan sedan hämtas för att visas på din blogg.

Temat bestämmer hur innehållet ska presenteras

teman

WordPress grundinstallation bygger upp själva ramverket för det här systemet med massa kod som styr hur och var innehåll ska förvaras i databasen och paketerar innehållet för att kunna hämtas enkelt i temat. Det styr även hur användargränssnittet ser ut för dig när du loggar in.

Hur innehållet på själva webbplatsen sedan ska presenteras för besökaren styrs av ditt tema. Ett tema innehåller alla de här pusselbitarna jag nämnde tidigare (header, content, comments) plus css-filer som bestämmer hur själva pusselbitarna ska se ut. Ska kategorierna stå ovanför eller under rubriken? Ska datumet visas som 12/1 eller 2016-01-12? Allt detta bestämmer temat.

Så här ser exempelvis koden ut för ett inlägg i standardtemat twentysixteen:

tema-single-post

Temat är alltså ett paket av filer som strukturerar och stylar de olika delarna av din blogg, som sedan fylls av innehåll från din databas. Det är därför det är möjligt att byta tema utan att samtidigt behöva flytta på eller byta ut innehållet.

Sammanfattat

Så, WordPress är alltså ett Content Management System som du installerar på din webbserver. I installationen sätts en databas upp där allt ditt innehåll förvaras i tabeller. WordPress genererar sedan olika pusselbitar där det finns lådor att fylla med innehåll från databasen. Hur pusselbitarna sedan arrangeras och presenteras för dina läsare styrs av ditt tema.

Elin Häggberg

Digital designer, medievetare och journalist. Bloggar om teknik och internet ur ett kreativt perspektiv på egna bloggen Teknifik. Brinner för jämställdhet inom tech och älskar att koda!

7 Comments
  1. Det här är guld värt! Jag har suttit och lärt mig stegvis under sommaren men att få det så här pedagogiskt upplagt är bara så bra! Så jäkla bra, Elin! Tack.

Leave a Reply

Your email address will not be published.

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>