Shortcodes med en bagkant – Er det godt eller skidt?

De fleste kender til Shortcodes, især hvis man arbejder med WordPress har man helt sikkert stødt på begrebet shortcode. Men har du nogensinde tænkt over hvilken indflydelse det har at du bruger dem? Er det godt eller skidt, og hvornår er det godt eller skidt at bruge disse shortcodes?
Synonymer: Kortkode, Shortcode, Short Code, WordPress Shortcode
shortcodes

Hvad er shortcodes

Til dem som ikke lige ved hvad shortcodes er, kommer lige en hurtig forklaring.

Det er ganske simpelt små koder du kan bruge midt i indholdet på din hjemmeside som i redigeringsøjeblikket erstatter html kode med noget der rent faktisk ligner det lidt. En shortcode er typisk bygget op sådan:

[shortcode][/shortcode]

Ikke at ordet shortcode indgår i selve koden, den kunne nemlig også se ud sådan:

[ one_half ] indhold [ /one_half ]

som faktisk er en erstatning for denne html kode:

<div class="one_half">indhold</div>

Og laver en layoutboks der fylder halvdelen af indholdsområdet.

Det kan også blive mere komplekst, såsom en shortcode for at hente seneste indlæg i en given kategori, en shortkode for at generere et galleri og mange andre ting. Det er faktisk kun fantasien der sætter grænser for hvad man kan bruge som shortcode. Men fælles er at shortkoden skal være indprogrammeret før man kan benytte sig af den og få det resultat man gerne vil have. Nogle er allerede indbygget i fx WordPress, andre findes som plugins, og yderligere findes der også temaer som har indprogrammeret flere af slagsen.

Plugins der kan bruges

Shortcodes Ultimate
https://wordpress.org/plugins/shortcodes-ultimate/

Et plugin til wordpress med rigtig mange shortcodes (30+), som er responsiv og bliver opdateret hele tiden. Et godt valg hvis man gerne lige vil udvide kollektionen af shortcodes.

WordPress Shortcodes
https://wordpress.org/plugins/synved-shortcodes/

Et plugin der ligesom Shortcodes Ultimate har mange muligheder. De fleste ligner dog dem der også er i Shortcodes Ultimate. Der er nogle få som skiller sig ud.

Temaer med indbyggede shortcodes

Avada – Responsivt tema – Det der bruges her
http://themeforest.net/item/avada-responsive-multipurpose-theme/2833226

Et stort tema til mange funktioner

Bagsiden af medaljen

Der er ganske simpelt rigtig mange ting man kan gøre med disse shortcodes, også rigtig meget godt. Men der er desværre en bagside af medaljen som de fleste ikke rigtig tænker over. Dem der kender mig, ved nok allerede hvad jeg vil skrive nu. For ja det har indflydelse på performance at bruge shortcodes.

Nogen vil nok sige, det kan da ikke være meget det har indflydelse, men jo. Og det giver faktisk også lidt sig selv, så snart man forstår hvad det reelt er der sker bag ved kulissen. Jeg vil ikke komme med nogle kolde tal her, men i stedet forklare hvorfor det har indflydelse på performance af en side benytter sig af Shortcodes.

Hvad sker der når man bruger shortcodes?

Når der er en eller flere shortcodes på en side, sker der det at WordPress først ser efter om der er en shortcode, er den der, skal den lige behandles af den funktion som er grunden til skal PHP ind over for at se om der er en shortcode, hvordan denne shortcode skal behandles samt generere det resultat som skal ud til brugeren.  Selv en simpel shortcode som fx dem der typisk bruges til at lave kolonner i et dokument skal lige ind over PHP.

Det betyder at i stedet for bare at indskrive den html der skal bruges direkte i dokumentet, hvilket uden tvivl vil være hurtigere, så skal det lige behandles af flere PHP funktioner.

Shortcode måden

  • Registrer shortcode
  • Søg efter shortcode i indholdet
  • Behandle shortcode
  • Udskriv html resultat til dokumentet

html måden

  • Html er skrevet til dokumentet

Begge gør det samme, men html måden er bare betydeligt hurtigere, og dermed har det meget lidt indflydelse på performance. Herunder Behandlingstid og Ram forbrug.

Samtidig skal man være opmærksom på at selvom du ikke bruger en shortcode som er installeret og klar til brug på din hjemmeside, så ledes der stadig efter denne i dit indhold.

Her kommer alligevel nogle kolde tal. Ja jeg kunne ikke lade være.

Men jeg har fx testet på siden her, som bruger Avada theme, det betyder at der er indbygget fusion core som har enormt mange shortcodes indbygget. Hvis jeg deaktivere dem jeg ikke bruger, så spare jeg næsten 300ms i behandlingstiden på serveren, samt mellem 3-5MB ram blev skåret væk. Så det er alligevel noget at tage med.

Hvad skal du så gøre?

Det er egentlig meget enkelt, du kan følge disse simple råd.

  • Installer ikke Shortcodes du alligevel ikke skal bruge, hvilket reelt betyder at større pakker med shortcodes og større temaer med mange shortcodes, for de fleste ikke er vejen. Men i stedet lav dine egne i eget plugin eller functions.php filen.
  • Brug kun shortcodes når det er for stort et arbejde at indskrive det direkte som html eller slet ikke kan lade sig gøre uden at der skal behandles data eller hentes data fra databasen. Det skal jo ikke forhindre dig i at lave content.
  • Hold dig fra temaer og plugins hvor der er en nem mulighed for at layoute sider, fx drag and drop,  sitebuilder værktøjer mm. eller man skal i det mindste kunne deaktivere det, da de typisk også laver shortcodes.

Gør du alligevel ovenstående, så kan det være en fordel at du i dit WP Child Theme, lige tager højde for de shortcodes som du ikke bruger på siden, eller i det hele taget kommer til at bruge.

Åben din functions.php fil, og skriv:

add_action( 'after_setup_theme', 'deaktiver_shortcodes' );
function deaktiver_shortcodes() {
remove_shortcode('shortkodens navn');
}

Ved du ikke hvilke shortcodes der køre på dit site, kan du et sted i fx footer.php skrive:

<?php
	if ( is_user_logged_in() ) {
	  global $shortcode_tags;
          print_r($shortcode_tags); 
	}
?>

Helt rolig, det er kun brugere som er logget ind der kan se det.

Hvordan laver man sine egne shortcodes?

function minshortkode_func( $atts ){
// hent data, bearbejd data, udskriv data
	return "resultat af min shortkode";
}
add_shortcode( 'minshortkode', 'minshortkode_func' );

Så er du kørende

Nu skulle du være rustet til at varetage dine shortcodes. Held og lykke, og kom endelig med kommentarer så vi kan høre hvordan og hvornår du bruger shortcdes.

Kim Tetzlaff

Jeg har arbejdet som webudvikler siden 1995 med fokus på hastighedsoptimering og teknisk SEO - især på WordPress, WooCommerce og skræddersyede løsninger. Jeg hjælper virksomheder med at gøre deres websites teknisk stærke, hurtigere, mere stabile og mere synlige i Google. Og så laver jeg også nye hjemmesider til kunder.

Opdage Mere

Udforsk relateret indhold og nyeste samtaler

WordPress SEO plugins

WordPress SEO plugins

Der er egentlig ikke den store forskel på at udføre SEO på en Wordpress løsning,…

Kim Tetzlaff
Ertugrul Gultekin

Hej Kim. Jeg er gået i gang med at seo optimere min køreskole hjemmeside. Jeg synes LS er lidt langsom hvilket jeg også kan se,…

Læs mere
Kim Tetzlaff
Kim Tetzlaff

Hej Albert, Ja, jeg har samarbejdet med Madbanditten i mere end 10 år nu, og vi samarbejder stadig den dag i dag. Dette er som…

Læs mere
Kim Tetzlaff
Alblert

Hej Kim. Spændende case at læse om. Jeg har lige et enkelt spørgsmål - der står du har samarbejdet med Madbanditten.dk i mere end 10…

Læs mere
Disse 3 Fejl Begår De Fleste Webshop Ejere Når De Skal Optimere Deres Webshop – Start-Virksomhed.dk

[…] Optimering af webshop er en kontinuerlig proces, der kræver opmærksomhed på detaljer og en forståelse for, hvad der driver kundeadfærd. Ved at undgå de…

Læs mere
Kim Tetzlaff
Kim Tetzlaff

Jeg har skam uddybet lidt mere på andre indlæg. Men man kan sige at alle tingene som google tester, reelt har indflydelse, da de alle…

Læs mere