{"id":54961,"date":"2023-08-22T17:26:07","date_gmt":"2023-08-22T17:26:07","guid":{"rendered":"https:\/\/kinsta.com\/se\/?p=54961&#038;preview=true&#038;preview_id=54961"},"modified":"2023-09-04T06:20:09","modified_gmt":"2023-09-04T06:20:09","slug":"wordpress-kortkoder","status":"publish","type":"post","link":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/","title":{"rendered":"Den ultimata guiden till WordPress-kortkoder (med exempel f\u00f6r att skapa dina egna)"},"content":{"rendered":"<p>WordPress kortkoder \u00e4r en kraftfull funktion f\u00f6r att g\u00f6ra coola saker med liten anstr\u00e4ngning. Du kan g\u00f6ra i stort sett vad som helst med dem. Om du nyttjar kortkoder \u00e4r det lika enkelt att exempelvis b\u00e4dda in interaktiva element eller skapa komplexa sidlayouter som att infoga en enda kodrad.<\/p>\n<p>Ifall du vill <a href=\"https:\/\/kinsta.com\/se\/blog\/fotogalleri-pluginen-wordpress\/\">l\u00e4gga till ett galleri<\/a> beh\u00f6ver du bara skriva in f\u00f6ljande kod:<\/p>\n<pre>[gallery ids=\"47 ,86, 92, 64, 48, 75, 89, 80\" columns=\"4\" size=\"medium\"]<\/pre>\n<p>Detta skapar d\u00e4refter ett galleri med de bild-ID: n som n\u00e4mns. Det kommer att ha 4 kolumner och deras maxstorlek kommer att vara &#8221;medium&#8221; (som har definierats av WordPress).<\/p>\n<p>Det finns inget behov av n\u00e5gon ful HTML-kod.<\/p>\n<figure id=\"attachment_63402\" aria-describedby=\"caption-attachment-63402\" style=\"width: 1133px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63402 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/Gallery-Shortcode-Output-by-WordPress.jpg\" alt=\"Exempel p\u00e5 kortkoden f\u00f6r galleri\" width=\"1133\" height=\"333\"><figcaption id=\"caption-attachment-63402\" class=\"wp-caption-text\">Exempel p\u00e5 kortkoden f\u00f6r galleri<\/figcaption><\/figure>\n<p>Kortkoder eliminerar dessutom behovet av komplicerade skript. \u00c4ven om du har sm\u00e5 eller noll programmerings-kunskaper kan du l\u00e4gga till dynamiskt inneh\u00e5ll utan problem med hj\u00e4lp av dem.<\/p>\n<p>De \u00e4r mycket popul\u00e4ra bland <a href=\"https:\/\/kinsta.com\/blog\/hire-wordpress-developer\/\">WordPress-utvecklare<\/a>, eftersom de hj\u00e4lper till att automatisera skapandet av inneh\u00e5ll och design. Kortkoder \u00e4r f\u00f6r WordPress-utvecklare vad makron \u00e4r f\u00f6r dataanalytiker, eller tangentbordsgenv\u00e4gar f\u00f6r professionella grafiska formgivare.<\/p>\n<p>I den h\u00e4r guiden kommer du att l\u00e4ra dig allt som finns att veta om kortkoder. Du kommer att f\u00e5 reda p\u00e5 hur du arbetar med Kortkod API genom att skapa dina egna kortkoder. I slutet kommer vi att diskutera framtiden f\u00f6r kortkoder och hur de passar in i <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpress-gutenberg-redigeraren\/\">WordPress nya Block-redigerare<\/a>.<\/p>\n<p>\u00c4r du exalterad? L\u00e5t oss komma ig\u00e5ng!<\/p>\n<div><\/div><kinsta-auto-toc heading=\"Table of Contents\" exclude=\"last\" list-style=\"arrow\" selector=\"h2\" count-number=\"-1\"><\/kinsta-auto-toc>\n<h3>F\u00f6redrar du att titta p\u00e5 <a href=\"https:\/\/www.youtube.com\/watch?v=sq1OZ2ZNqIw\">videoversionen<\/a>?<\/h3>\n<p class=\"p1\"><kinsta-video src=\"https:\/\/www.youtube.com\/watch?v=sq1OZ2ZNqIw\"><\/kinsta-video><\/p>\n<h2>Vad \u00e4r en kortkod?<\/h2>\n<p>Kortfattat kan man s\u00e4ga att <strong>Kortkod = Genv\u00e4g + Kod<\/strong>.<\/p>\n<p>Kortkoder anv\u00e4nder vanligtvis hakparenteser [] f\u00f6r att definiera hur de anv\u00e4nds. Varje kortkod utf\u00f6r en viss funktion p\u00e5 en webbplats. Det kan vara s\u00e5 enkelt som att formatera inneh\u00e5llet eller s\u00e5 komplext som att definiera hela webbplatsens struktur.<\/p>\n<p>Du kan exempelvis anv\u00e4nda kortkoder f\u00f6r att b\u00e4dda in <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpress-slider\/\">sliders<\/a>, <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpress-kontaktformularplugins\/\">formul\u00e4r<\/a> eller <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpressplugin-pristabeller\/\">pristabeller<\/a>. Du kan dessutom anv\u00e4nda dem f\u00f6r att skapa \u00e5teranv\u00e4ndbara mallar f\u00f6r sid-design.<\/p>\n<h3>En kort historia om kortkoder<\/h3>\n<p>Kortkoder gjordes f\u00f6rst popul\u00e4ra av en onlineforum-programvara som heter Ultimate Bulletin Board (UBB). \u00c5r 1998 introducerade de <a href=\"https:\/\/www.bbcode.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">BBCode (Bulletin Board Code)<\/a>, en samling l\u00e4ttanv\u00e4nda taggar d\u00e4r anv\u00e4ndare enkelt kunde formatera sina inl\u00e4gg.<\/p>\n<figure id=\"attachment_63405\" aria-describedby=\"caption-attachment-63405\" style=\"width: 1110px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63405 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/BBCode-Shortcode-Examples-Usage-Output.png\" alt=\"Enkel formatering med enkla BBCoder\" width=\"1110\" height=\"330\"><figcaption id=\"caption-attachment-63405\" class=\"wp-caption-text\">Enkel formatering med enkla BBCoder<\/figcaption><\/figure>\n<p>BBCode \u00e4r ett l\u00e4ttviktigt markerings-spr\u00e5k som fungerar enligt samma principer som HTML, men det \u00e4r mycket enklare.<\/p>\n<p>Att anv\u00e4nda f\u00f6rdefinierade taggar \u00e4r dessutom mycket s\u00e4krare, eftersom anv\u00e4ndare inte kan infoga HTML-kod och skapa <a href=\"https:\/\/kinsta.com\/docs\/service-information\/disclose-security-vulnerability\/\">s\u00e4kerhetsproblem<\/a>. En anv\u00e4ndare med onda avsikter kan exempelvis anv\u00e4nda taggen &lt;script&gt; f\u00f6r att exekvera JavaScript-kod och f\u00f6rst\u00f6ra webbplatsens funktionalitet.<\/p>\n<p>Strax d\u00e4refter lade andra onlineforums-program som <a href=\"https:\/\/www.phpbb.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">phpBB<\/a>, <a href=\"https:\/\/www.xmbforum2.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">XMB Forum<\/a> och <a href=\"https:\/\/www.vbulletin.com\/\" target=\"_blank\" rel=\"noopener noreferrer\">vBulletin<\/a> till BBCode-funktionalitet i sina anslagstavlor.<\/p>\n<p>Kortkoder gav administrat\u00f6rer st\u00f6rre kontroll \u00f6ver vad deras anv\u00e4ndare kunde och inte kunde g\u00f6ra. Dessutom kunde anv\u00e4ndarna formatera sitt inneh\u00e5ll med hj\u00e4lp av enkla taggar.<\/p>\n<p>Av samma s\u00e4kerhetssk\u00e4l f\u00f6rhindrar WordPress att PHP-kod k\u00f6rs inuti webbplatsens inneh\u00e5ll. F\u00f6r att \u00f6vervinna denna begr\u00e4nsning introducerade <a href=\"https:\/\/wordpress.org\/news\/2008\/03\/wordpress-25-brecker\/\" target=\"_blank\" rel=\"noopener noreferrer\">WordPress 2.5<\/a> kortkods-funktionen 2008 med lanseringen av <a href=\"https:\/\/codex.wordpress.org\/Shortcode_API\" target=\"_blank\" rel=\"noopener noreferrer\">Shortcode API<\/a>. Det har visat sig vara en av de mest anv\u00e4nda funktionerna av m\u00e5nga WordPress-plugins och temautvecklare.<\/p>\n<h3>Vad \u00e4r WordPress-kortkoder?<\/h3>\n<p>WordPress-kortkoder \u00e4r hakparentesstr\u00e4ngar (<strong>[ ]<\/strong>) som magiskt f\u00f6rvandlas till n\u00e5got fascinerande p\u00e5 frontend. De ger anv\u00e4ndarna ett enkelt s\u00e4tt att skapa och \u00e4ndra komplicerat inneh\u00e5ll utan att beh\u00f6va oroa sig f\u00f6r komplex HTML eller inb\u00e4ddnings-koder.<\/p>\n<figure id=\"attachment_63403\" aria-describedby=\"caption-attachment-63403\" style=\"width: 1110px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63403 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/How-WordPress-Shortcodes-Work.png\" alt=\"WordPress-kortkoder \u00e4r enkla och l\u00e4tta att anv\u00e4nda\" width=\"1110\" height=\"311\"><figcaption id=\"caption-attachment-63403\" class=\"wp-caption-text\">WordPress-kortkoder \u00e4r enkla och l\u00e4tta att anv\u00e4nda<\/figcaption><\/figure>\n<h3>De 2 typerna av kortkoder<\/h3>\n<p>Det finns fr\u00e4mst tv\u00e5 typer av kortkoder i WordPress.<\/p>\n<figure id=\"attachment_63428\" aria-describedby=\"caption-attachment-63428\" style=\"width: 1110px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63428 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/The-Types-of-WordPress-Shortcodes-Tags-Attribute-Value.png\" alt=\"Sj\u00e4lvst\u00e4ngande och inneslutande kortkoder kan vara giltiga med eller utan attribut.\" width=\"1110\" height=\"350\"><figcaption id=\"caption-attachment-63428\" class=\"wp-caption-text\">Sj\u00e4lvst\u00e4ngande och inneslutande kortkoder kan vara giltiga med eller utan attribut.<\/figcaption><\/figure>\n<ul>\n<li><strong>Sj\u00e4lvst\u00e4ngande kortkoder:<\/strong> Dessa beh\u00f6ver ingen avslutande tagg.<\/li>\n<\/ul>\n<p>Exempel: Kortkoden f\u00f6r <strong>galleri<\/strong> beh\u00f6ver ingen avslutande tagg. Vi l\u00e4gger till allt som den beh\u00f6ver med olika attribut.<\/p>\n<ul>\n<li><strong>Omslutande kortkoder:<\/strong> Dessa beh\u00f6ver en avslutande tagg. Omslutande kortkoder manipulerar i allm\u00e4nhet inneh\u00e5llet mellan de inledande och avslutande taggarna.<\/li>\n<\/ul>\n<p>Exempel<em>:<\/em> Kortkoden f\u00f6r <strong>bildtext<\/strong> anv\u00e4nds f\u00f6r att linda in en bildtext runt allt inneh\u00e5ll. Den anv\u00e4nds fr\u00e4mst f\u00f6r att l\u00e4gga till en bildtext till bilder, men fungerar med alla HTML-element.<\/p>\n<p>Vissa kortkoder fungerar med eller utan attribut. Det beror p\u00e5 hur de definieras.<\/p>\n<h2>Standard-kortkoderna f\u00f6r WordPress<\/h2>\n<p>WordPress levereras med 6 standard-kortkoder:<\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><a href=\"https:\/\/codex.wordpress.org\/Audio_Shortcode\" target=\"_blank\" rel=\"noopener noreferrer\">ljud<\/a>: B\u00e4dda in ljudfiler p\u00e5 din webbplats. Den inneh\u00e5ller exempelvis enkla uppspelnings-kontroller som Play &#038; Pause.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Caption_Shortcode\" target=\"_blank\" rel=\"noopener noreferrer\">bildtext<\/a><strong>: <\/strong>L\u00e4gg till bildtexter runt ditt inneh\u00e5ll. Denna kortkod anv\u00e4nds mest f\u00f6r att l\u00e4gga till bildtexter, men du kan anv\u00e4nda den f\u00f6r alla HTML-element.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Embed_Shortcode\" target=\"_blank\" rel=\"noopener noreferrer\">embed<\/a>: Ut\u00f6ka standardfunktionen oEmbed. Med den h\u00e4r kortkoden kan du st\u00e4lla in olika attribut f\u00f6r dina inb\u00e4ddningar, som att exempelvis st\u00e4lla in deras max-dimensioner.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Gallery_Shortcode\" target=\"_blank\" rel=\"noopener noreferrer\">gallery<\/a>: Infoga ett enkelt bildgalleri p\u00e5 din webbplats. Du kan anv\u00e4nda attribut f\u00f6r att definiera vilka bilder som anv\u00e4nds och d\u00e4refter anpassa hur galleriet ser ut.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Playlist_Shortcode\" target=\"_blank\" rel=\"noopener noreferrer\">spellista<\/a>: Visa en samling ljud- eller videofiler med den h\u00e4r kortkoden. Du kan ge den ett coolt &#8221;m\u00f6rkt&#8221; l\u00e4ge med dess stilattribut.<\/li>\n<li><a href=\"https:\/\/codex.wordpress.org\/Video_Shortcode\" target=\"_blank\" rel=\"noopener noreferrer\">video<\/a>: B\u00e4dda in en videofil och spela upp den med en enkel videospelare. Denna kortkod st\u00f6der inb\u00e4ddning av videor med dessa format: mp4, webm, m4v, webm, ogv, wmv, flv.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>F\u00f6r mer information om hur du kan anv\u00e4nda standard-kortkoderna och vilka attribut som de st\u00f6der, kan du h\u00e4nvisa till de l\u00e4nkade Codex-dokumenten.<\/p>\n<h3>Hur man anv\u00e4nder WordPress-kortkoder<\/h3>\n<p>Att anv\u00e4nda kortkoder i WordPress \u00e4r en enkel process. Men det beror dock p\u00e5 var du vill l\u00e4gga till dem p\u00e5 din webbplats. Se till att l\u00e4sa kortkods-dokumentationen f\u00f6r att f\u00f6rst\u00e5 hur den fungerar. L\u00e4r dig d\u00e4refter vilka attribut som den st\u00f6der, s\u00e5 att du kan f\u00e5 exakt vad du vill ha.<\/p>\n<h3>Anv\u00e4nda WordPress-kortkoder p\u00e5 sidor och i inl\u00e4gg<\/h3>\n<p>G\u00e5 f\u00f6rst till sid-redigeraren\/inl\u00e4ggs-redigeraren d\u00e4r du vill infoga kortkoden.<\/p>\n<p>Om du anv\u00e4nder Gutenberg-redigeraren kan du l\u00e4gga till kortkodstaggen i det frist\u00e5ende <em>Kortkods-blocket<\/em>. Vi hittar detta i avsnittet <em>Widgets<\/em>.<\/p>\n<figure id=\"attachment_64718\" aria-describedby=\"caption-attachment-64718\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64718 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2020\/01\/Adding-Gutenberg-Shortcode-Block.png\" alt=\"L\u00e4gga till ett kortkods-block i Gutenberg\" width=\"1100\" height=\"528\"><figcaption id=\"caption-attachment-64718\" class=\"wp-caption-text\">L\u00e4gga till ett kortkods-block i Gutenberg<\/figcaption><\/figure>\n<figure id=\"attachment_64719\" aria-describedby=\"caption-attachment-64719\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64719 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2020\/01\/Gutenberg-Shortcode-Block.png\" alt=\"Gutenbergs s\u00e4rskilda kortkods-block\" width=\"1100\" height=\"216\"><figcaption id=\"caption-attachment-64719\" class=\"wp-caption-text\">Gutenbergs s\u00e4rskilda kortkods-block<\/figcaption><\/figure>\n<p>Anv\u00e4nder du fortfarande <a href=\"https:\/\/wordpress.org\/plugins\/classic-editor\/\" target=\"_blank\" rel=\"noopener noreferrer\">den klassiska redigeraren (eller pluginet)<\/a>? Du kan d\u00e5 skriva in dina kortkods-taggar p\u00e5 det klassiska s\u00e4ttet. N\u00e5gra kortkoder kan dessutom ha en knapp i redigeringssk\u00e4rmen f\u00f6r en enkel infogning.<\/p>\n<figure id=\"attachment_64720\" aria-describedby=\"caption-attachment-64720\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64720 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2020\/01\/Adding-Shortcode-Classic-Editor-WordPress.png\" alt=\"L\u00e4gga till en kortkod i den klassiska redigeraren\" width=\"1100\" height=\"224\"><figcaption id=\"caption-attachment-64720\" class=\"wp-caption-text\">L\u00e4gga till en kortkod i den klassiska redigeraren<\/figcaption><\/figure>\n<h3>Anv\u00e4nda WordPress-kortkoder i sidof\u00e4lt-widgets<\/h3>\n<p>Kortkoder kan dessutom infogas i <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpress-widgetar\/\">sidof\u00e4ltets widgets<\/a>. F\u00f6r att l\u00e4gga till dem g\u00e5r du till <strong>Utseende &#8221; Widgets<\/strong> och l\u00e4gger till en <strong>textwidget<\/strong> i det avsnitt d\u00e4r du vill l\u00e4gga till genv\u00e4gen.<\/p>\n<figure id=\"attachment_64721\" aria-describedby=\"caption-attachment-64721\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64721 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2020\/01\/Adding-Shortcode-to-Sidebar-Widget-WordPress.png\" alt=\"L\u00e4gg till kortkod i sidof\u00e4ltet med textwidgeten\" width=\"1100\" height=\"546\"><figcaption id=\"caption-attachment-64721\" class=\"wp-caption-text\">L\u00e4gg till kortkod i sidof\u00e4ltet med textwidgeten<\/figcaption><\/figure>\n<p>Klistra in kortkoden i <em>textwidgeten<\/em> och <em>spara<\/em> den. Du kan d\u00e4refter bes\u00f6ka webbplatsens frontend och se kortkodens resultat i sidof\u00e4ltet.<\/p>\n<figure id=\"attachment_64722\" aria-describedby=\"caption-attachment-64722\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64722 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2020\/01\/Gallery-Outputted-in-Sidebar-with-Shortcode.png\" alt=\"Kortkodens resultat (galleri) kan ses i sidof\u00e4ltet\" width=\"1100\" height=\"464\"><figcaption id=\"caption-attachment-64722\" class=\"wp-caption-text\">Kortkodens resultat (galleri) kan ses i sidof\u00e4ltet<\/figcaption><\/figure>\n<p><strong>Obs:<\/strong> WordPress 4.8 och senare versioner st\u00f6der inte kortkoder i sidof\u00e4ltwidgets. L\u00e4s <a href=\"https:\/\/make.wordpress.org\/core\/2017\/10\/24\/widget-improvements-in-wordpress-4-9\/\" target=\"_blank\" rel=\"noopener noreferrer\">Widget-f\u00f6rb\u00e4ttringar i WordPress 4.9-uppdateringen<\/a> f\u00f6r mer information.<\/p>\n<h3>Anv\u00e4nda WordPress-kortkoder i sidhuvud och sidfot<\/h3>\n<p>WordPress-kortkoder \u00e4r generellt avsedda f\u00f6r sidor, inl\u00e4gg och widgets. Men det finns dessutom ett enkelt s\u00e4tt att infoga kortkoder var som helst p\u00e5 din webbplats.<\/p>\n<p>S\u00e4g att du vill l\u00e4gga till en CTA-knapp i sidfoten, eller i alla dina inl\u00e4gg f\u00f6re kommentars-avsnittet. H\u00e4r kommer <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/do_shortcode\/\" target=\"_blank\" rel=\"noopener noreferrer\">callback-funktionen do_shortcode()<\/a> v\u00e4l till pass.<\/p>\n<p>Du m\u00e5ste l\u00e4gga till f\u00f6ljande kod i ditt temas <em>header.php<\/em>, <em>footer.php<\/em> eller n\u00e5gon av dess mallfiler:<\/p>\n<pre><code class=\"language-php\">&lt;?php echo do_shortcode(\"[name_of_your_shortcode]\"); ?&gt;<\/code><\/pre>\n<p>Detta kommer d\u00e4refter att mata ut kortkoden p\u00e5 den plats d\u00e4r du infogade koden.<\/p>\n<p>Se dock till att inkludera hakparenteserna mellan citattecknen f\u00f6r att &#8221;echo&#8221; kortkoden. Att bara inkludera dess namn fungerar inte.<\/p>\n<p>P\u00e5 samma s\u00e4tt kan du anv\u00e4nda callback-funktionen <em>do_shortcode()<\/em> f\u00f6r att aktivera kortkoder var som helst i WordPress, exempelvis i kommentarsavsnittet.<\/p>\n<h3>En snabb introduktion till Shortcode API<\/h3>\n<p><a href=\"https:\/\/codex.wordpress.org\/Shortcode_API\" target=\"_blank\" rel=\"noopener noreferrer\">WordPress Shortcode API<\/a> definierar hur du kan anv\u00e4nda kortkoder f\u00f6r att anpassa och ut\u00f6ka webbplatsens funktionalitet. Det g\u00f6r det exempelvis m\u00f6jligt f\u00f6r utvecklare att skapa unikt inneh\u00e5ll (t.ex. formul\u00e4r, karuseller, sliders, osv.) som anv\u00e4ndare d\u00e4refter kan l\u00e4gga till p\u00e5 sina webbplatser genom att klistra in den relevanta kortkoden.<\/p>\n<p>Med hj\u00e4lp av kortkoder kan du l\u00e4gga till n\u00e4stan alla funktioner du kan f\u00f6rest\u00e4lla dig p\u00e5 din webbplats.<\/p>\n<p>API: et st\u00f6der b\u00e5de sj\u00e4lvst\u00e4ngande och inneslutande kortkoder. Det hanterar all knepig tolkning och inneh\u00e5ller hj\u00e4lpfunktioner f\u00f6r att st\u00e4lla in och h\u00e4mta standardattribut.<\/p>\n<p>Tack vare API: et kan du dyka rakt in i att utveckla och anpassa kortkoder, snarare \u00e4n att sl\u00f6sa dyrbar tid p\u00e5 att definiera regulj\u00e4ra uttryck f\u00f6r varje kortkod som du skapar.<\/p>\n<h3>F\u00f6rst\u00e5 grunderna i Shortcode API<\/h3>\n<p>Varje g\u00e5ng du \u00f6ppnar en sida eller ett inl\u00e4gg i WordPress letar den efter registrerade kortkoder medan den bearbetar webbplatsens inneh\u00e5ll.<\/p>\n<p>Om en registrerad kortkod hittas tar Shortcode API \u00f6ver och returnerar utdata fr\u00e5n kortkoden\/kortkoderna. Den returnerade utdatastr\u00e4ngen ers\u00e4tter d\u00e4refter kortkodstaggen p\u00e5 den plats d\u00e4r den lades till.<\/p>\n<p>Du registrerar en kortkod i WordPress med <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/add_shortcode\/\" target=\"_blank\" rel=\"noopener noreferrer\">funktionen add_shortcode()<\/a>. S\u00e5 h\u00e4r g\u00e5r det till:<\/p>\n<pre><code class=\"language-php\">add_shortcode( 'shortcode_name', 'shortcode_handler_function' );<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong>shortcode_name:<\/strong> Den tagg som WordPress kommer att leta efter n\u00e4r inl\u00e4ggsinneh\u00e5llet analyseras. Shortcode API rekommenderar att du endast anv\u00e4nder sm\u00e5 bokst\u00e4ver, siffror och understrykningar f\u00f6r att definiera dess v\u00e4rde (undvik bindestreck).<\/li>\n<li><strong>kortkod_hanterare_funktion:<\/strong> Callback-funktionen som kommer att k\u00f6ras efter att WordPress bekr\u00e4ftar n\u00e4rvaron av en registrerad kortkod.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Kortkodshanterings-funktionen<\/h3>\n<p>Kortkodshanterings-funktionen definieras som s\u00e5dan:<\/p>\n<pre><code class=\"language-php\">function shortcode_handler_function( $atts, $content, $tag ){ }<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong>$atts:<\/strong> En associativ matris med attribut (dvs. en matris med nyckel-v\u00e4rdepar). Om du inte definierar n\u00e5gra attribut kommer den som standard att vara en tom str\u00e4ng.<\/li>\n<li><strong>$inneh\u00e5ll:<\/strong> Det bifogade inneh\u00e5llet, om du definierar en bifogad kortkod. Det \u00e4r <a href=\"https:\/\/developer.wordpress.org\/plugins\/security\/securing-output\/\" target=\"_blank\" rel=\"noopener noreferrer\">hanterar-funktionens ansvar<\/a> att se till att $content-v\u00e4rdet returneras till utdata.<\/li>\n<li><strong>$tag:<\/strong> Kortkodens taggv\u00e4rde<em>(kortkod_namn<\/em> i exemplet ovan). Om tv\u00e5 eller flera kortkoder delar samma callback-funktion (vilket \u00e4r giltigt), hj\u00e4lper $tag-v\u00e4rdet dig att avg\u00f6ra vilken kortkod som utl\u00f6ste hanterar-funktionen.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>API: et analyserar kortkodens tagg, attribut och bifogade inneh\u00e5ll (om det finns n\u00e5got) och skickar v\u00e4rdena vidare till hanterar-funktionen, som bearbetar dem och returnerar en utdata-str\u00e4ng.<\/p>\n<p>Denna utdata-str\u00e4ng ers\u00e4tter d\u00e4refter kortkods-makrot p\u00e5 webbplatsens frontend. Vad du i slut\u00e4ndan ser i webbl\u00e4saren \u00e4r denna utdata.<\/p>\n<h3>Var ska du l\u00e4gga till dina anpassade kortkodskript?<\/h3>\n<p>Du kan l\u00e4gga till dina anpassade kortkods-skript i temats <em>functions.php-fil<\/em> eller inkludera dem i ett plugin.<\/p>\n<p>Om du exempelvis l\u00e4gger till det i en temafil kan du k\u00f6ra <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpress-barntema\/#how-wordpress-chooses-template-files\"><em>add_shortcode()<\/em><\/a> funktionen som den \u00e4r.<\/p>\n<p>Men om du l\u00e4gger till det i ett plugin rekommenderar vi att du initierar den f\u00f6rst efter att WordPress har laddats helt. Du kan s\u00e4kerst\u00e4lla detta genom att linda in <em>add_shortcode()<\/em> -funktionen i en annan funktion. Detta kallas en wrapper-funktion:<\/p>\n<pre><code class=\"language-php\">function shortcodes_init(){\n add_shortcode( 'shortcode_name', 'shortcode_handler_function' );\n}\nadd_action('init', 'shortcodes_init');<\/code><\/pre>\n<p>Funktionen <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpresskrokar\/#hooks-vs-actions-vs-filters\" target=\"_blank\" rel=\"noopener noreferrer\"><em>add_action()<\/em><\/a> hakar i <strong>Shortcode<em>_init<\/em> <\/strong>s\u00e5 att den aktiveras f\u00f6rst efter att WordPress har slutf\u00f6rt laddningen (det kallas <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpresskrokar\/#example-of-hooking-an-action\" target=\"_blank\" rel=\"noopener noreferrer\">&#8221;init&#8221;-kroken<\/a>).<\/p>\n<h2>S\u00e5 h\u00e4r skapar du en anpassad kortkod i WordPress (nyb\u00f6rjarniv\u00e5)<\/h2>\n<p>Nu n\u00e4r vi har g\u00e5tt igenom grunderna \u00e4r det dags att skapa en anpassad kortkod.<\/p>\n<p>F\u00f6r att f\u00f6lja stegen nedan beh\u00f6ver du vara bekant med att arbeta med PHP-kod och <a href=\"https:\/\/kinsta.com\/blog\/edit-wordpress-code\/\">redigera dina WordPress-temafiler<\/a>. N\u00e4r du \u00e4r klar med handledningen kommer din f\u00f6rsta anpassade WordPress-kortkod vara redo att anv\u00e4ndas!<\/p>\n<p>Vi b\u00f6rjar med den enklaste kortkoden och g\u00e5r d\u00e4refter vidare till mer komplexa kortkoder. Njut av dina korta milstolpar p\u00e5 din v\u00e4g till kortkods-briljans!<\/p>\n<h3>Kolla in v\u00e5r <a href=\"https:\/\/www.youtube.com\/watch?v=izIDOiQgWcU\" target=\"_blank\" rel=\"noopener noreferrer\">video<\/a> &#8211; Hur man skapar en anpassad kortkod i WordPress f\u00f6r nyb\u00f6rjare:<\/h3>\n<p class=\"p1\"><kinsta-video src=\"https:\/\/www.youtube.com\/watch?v=izIDOiQgWcU\"><\/kinsta-video><\/p>\n<h3>Exempel 1: Kortkod som anv\u00e4nder [current_year]<\/h3>\n<p>L\u00e5t oss skapa en kortkod som heter [current_year] som matar ut det aktuella \u00e5ret p\u00e5 din webbplats.<\/p>\n<p>Den h\u00e4r kortkoden \u00e4r exempelvis anv\u00e4ndbar om du l\u00e4gger till inneh\u00e5ll p\u00e5 din webbplats som beh\u00f6ver uppdateras varje \u00e5r. Det kan ju bland annat h\u00e4nda att du l\u00e4gger till ett meddelande om upphovsr\u00e4tt i sidfoten p\u00e5 din webbplats.<\/p>\n<p>Jag kommer att anv\u00e4nda ett barebones-plugin f\u00f6r att l\u00e4gga till mina kortkods-funktioner. Du kan l\u00e4gga till det i ditt temas <em>functions.php-fil<\/em> och f\u00e5 samma resultat, men jag rekommenderar inte detta. Det \u00e4r dock OK f\u00f6r testning och l\u00e4rande!<\/p>\n<aside role=\"note\" class=\"wp-block-kinsta-notice is-style-info\">\n            <h3>Info<\/h3>\n        <p>Ta en s\u00e4kerhetskopia innan du g\u00f6r n\u00e5gra \u00e4ndringar p\u00e5 din webbplats. Kinsta tillhandah\u00e5ller <a href=\"https:\/\/kinsta.com\/docs\/wordpress-hosting\/wordpress-backups\/#wordpress-backup\">automatiska s\u00e4kerhetskopior till alla sina kunder<\/a>.<\/p>\n<\/aside>\n\n<p>L\u00e5t oss komma ig\u00e5ng genom att skapa ett plugin. Skapa en ny mapp i din <strong><em>\/wp-content\/plugins\/<\/em><\/strong>-katalog.<\/p>\n<figure id=\"attachment_64723\" aria-describedby=\"caption-attachment-64723\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64723 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2020\/01\/Where-to-Add-Custom-Shortcodes-WordPress-Plugins.png\" alt=\"Notera platsen f\u00f6r plugin-katalogen\" width=\"1100\" height=\"478\"><figcaption id=\"caption-attachment-64723\" class=\"wp-caption-text\">Notera platsen f\u00f6r plugin-katalogen<\/figcaption><\/figure>\n<p>Jag kallar mitt plugin f\u00f6r &#8221;salcodes&#8221; men du kan kalla det vad du vill.<\/p>\n<p>I <strong>salcodes<\/strong> plugin-katalog skapar du en PHP-fil med samma namn (<em><strong>salcodes.php<\/strong><\/em>). N\u00e4r du \u00e4r klar l\u00e4gger du till f\u00f6ljande rubrik i din plugin-fil:<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\n\/*\nPlugin Name:  Salcodes\nVersion: 1.0\nDescription: Output the current year in your WordPress site.\nAuthor: Salman Ravoof\nAuthor URI: https:\/\/www.salmanravoof.com\/\nLicense: GPLv2 or later\nLicense URI: https:\/\/www.gnu.org\/licenses\/gpl-2.0.html\nText Domain: salcodes\n*\/<\/code><\/pre>\n<p>Detta enkla plugin-huvud \u00e4r tillr\u00e4ckligt bra f\u00f6r v\u00e5ra syften. Du kan l\u00e4sa mer om kraven f\u00f6r <a href=\"https:\/\/developer.wordpress.org\/plugins\/the-basics\/header-requirements\/\" target=\"_blank\" rel=\"noopener noreferrer\">plugin-huvuden<\/a> i WordPress Codex. Spara den h\u00e4r filen och g\u00e5 d\u00e4refter till din <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpress-admin\/\">WordPress-panel<\/a> f\u00f6r att aktivera pluginet.<\/p>\n<h3>Registrering av kortkoden<\/h3>\n<p>Nu ska vi registrera kortkoden och dess hanterar-funktion. F\u00f6r att g\u00f6ra detta, l\u00e4gg till f\u00f6ljande kod i din plugin-fil:<\/p>\n<pre><code class=\"language-php\">\/**\n * [current_year] returns the Current Year as a 4-digit string.\n * @return string Current Year\n*\/\n\nadd_shortcode( 'current_year', 'salcodes_year' );\nfunction salcodes_init(){\n function salcodes_year() {\n return getdate()['year'];\n }\n}\nadd_action('init', 'salcodes_init');\n\n\/** Always end your PHP files with this closing tag *\/\n?&gt;<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><a href=\"https:\/\/www.php.net\/manual\/en\/function.return.php\" target=\"_blank\" rel=\"noopener noreferrer\">@return-taggen<\/a> i PHP-kommentaren definierar vilken typ av utdata som returneras. Den f\u00f6ljs av en kort beskrivning av samma sak.<\/li>\n<\/ul>\n<ul>\n<li><strong>current_year<\/strong> \u00e4r kortkodstaggen eller namnet. Detta definierar den sj\u00e4lvst\u00e4ngande tagg som du beh\u00f6ver l\u00e4gga till i ditt inneh\u00e5ll, vilket i detta fall skulle vara [current_year].<\/li>\n<\/ul>\n<ul>\n<li><strong>salcodes_year<\/strong> \u00e4r namnet p\u00e5 den <em>kortkodshanterings-funktion<\/em> som returnerar utdatastr\u00e4ngen. Vi kommer att definiera denna callback-funktion p\u00e5 n\u00e4sta rad. Eftersom vi skapar en enkel sj\u00e4lvst\u00e4ngande kortkod beh\u00f6ver du inte skicka n\u00e5gra variabelv\u00e4rden som $attributes, $content eller $tag till den.<\/li>\n<\/ul>\n<ul>\n<li><strong>salcodes_init<\/strong> \u00e4r wrapper-funktionen som \u00e4r kopplad till &#8221;init&#8221; f\u00f6r att se till att kortkoden registreras och k\u00f6rs f\u00f6rst efter att WordPress har slutf\u00f6rt laddningen. WordPress inbyggda <em><strong>add_action()<\/strong><\/em>-funktion g\u00f6r detta m\u00f6jligt.<\/li>\n<\/ul>\n<ul>\n<li><strong>getdate()<\/strong> \u00e4r en PHP-funktion som returnerar en matris med datum-information f\u00f6r den aktuella tidsst\u00e4mpeln. Year-nyckeln inneh\u00e5ller det aktuella \u00e5rets v\u00e4rde (som en 4-siffrig str\u00e4ng). S\u00e5 <strong>getdate()[&#8217;year&#8217;]<\/strong> returnerar det aktuella \u00e5ret. Detta resultat \u00e4r exakt vad vi vill ha.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Spara din plugin-fil. Det \u00e4r nu dags att testa om kortkoden fungerar som avsett.<\/p>\n<p>L\u00e4gg till kortkoden var som helst p\u00e5 din webbplats (sida, inl\u00e4gg, sidof\u00e4lt-widget, osv.). Jag l\u00e4gger till den i sidof\u00e4ltets<em>Text-widget<\/em> p\u00e5 min webbplats.<\/p>\n<figure id=\"attachment_63394\" aria-describedby=\"caption-attachment-63394\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63394 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/Testing-the-Current-Year-Shortcode-Sidebar-Widget-1.png\" alt=\"Testa den anpassade kortkoden genom att l\u00e4gga till den p\u00e5 webbplatsen.\" width=\"1100\" height=\"542\"><figcaption id=\"caption-attachment-63394\" class=\"wp-caption-text\">Testa den anpassade kortkoden genom att l\u00e4gga till den p\u00e5 webbplatsen.<\/figcaption><\/figure>\n<p>Och som f\u00f6rv\u00e4ntat fungerar det helt perfekt.<\/p>\n<figure id=\"attachment_64724\" aria-describedby=\"caption-attachment-64724\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64724 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2020\/01\/The-Current-Year-Shortcode-Works-Perfectly.png\" alt=\"Utdata f\u00f6r kortkoden f\u00f6r year\" width=\"1100\" height=\"542\"><figcaption id=\"caption-attachment-64724\" class=\"wp-caption-text\">Utdata f\u00f6r kortkoden f\u00f6r year<\/figcaption><\/figure>\n<p>Grattis till att ha n\u00e5tt din f\u00f6rsta milstolpe!<\/p>\n<p>Kortkoden som du just skapade har inga <strong>$attribut<\/strong> eller <strong>$inneh\u00e5llsvariabler<\/strong> associerade med den. Du kommer att l\u00e4ra dig hur du anv\u00e4nder dem i f\u00f6ljande exempel.<\/p>\n<h3>Exempel 2: Kortkod f\u00f6r en CTA-knapp<\/h3>\n<p>L\u00e5t oss skapa en anpassningsbar kortkod f\u00f6r en <strong>CTA-knapp<\/strong>. Denna kommer dessutom att vara sj\u00e4lvst\u00e4ngande (ledsen <strong>$content<\/strong>, du m\u00e5ste h\u00e5lla ut till n\u00e4sta).<\/p>\n<p>Jag vill att anv\u00e4ndarna ska kunna anpassa CTA-knappens storlek och f\u00e4rg med kortkodens attribut.<\/p>\n<p>Eftersom slutresultatet \u00e4r ett knapp-element kan dess HTML-attribut som <strong>href<\/strong>, <strong>id<\/strong>, <strong>class<\/strong>, <strong>target<\/strong> &#038; <strong>label<\/strong> anv\u00e4ndas f\u00f6r att enkelt anpassa detta.<\/p>\n<p>Du kan anv\u00e4nda <strong>id-<\/strong> och <strong>class-attributen<\/strong> f\u00f6r att styla knappen eftersom de b\u00e5da \u00e4r vanliga CSS-v\u00e4ljare.<\/p>\n<p>Jag lindar inte in min handler-funktion h\u00e4r f\u00f6r att h\u00e5lla saker och ting lite enkelt.<\/p>\n<pre><code class=\"language-php\">\/**\n * [cta_button] returns the HTML code for a CTA Button.\n * @return string Button HTML Code\n*\/\n\nadd_shortcode( 'cta_button', 'salcodes_cta' );\n\nfunction salcodes_cta( $atts ) {\n $a = shortcode_atts( array(\n 'link' =&gt; '#',\n 'id' =&gt; 'salcodes',\n 'color' =&gt; 'blue',\n 'size' =&gt; '',\n 'label' =&gt; 'Button',\n 'target' =&gt; '_self'\n ), $atts );\n $output = '&lt;p&gt;&lt;a href=\"' . esc_url( $a['link'] ) . '\" id=\"' . esc_attr( $a['id'] ) . '\" class=\"button ' . esc_attr( $a['color'] ) . ' ' . esc_attr( $a['size'] ) . '\" target=\"' . esc_attr($a['target']) . '\"&gt;' . esc_attr( $a['label'] ) . '&lt;\/a&gt;&lt;\/p&gt;';\n return $output;\n}<\/code><\/pre>\n<p>Woah, det finns mycket att packa upp h\u00e4r. Jag kommer att f\u00f6rklara detta rad f\u00f6r rad, s\u00e5 att du d\u00e4refter kan f\u00f6rst\u00e5 hur det fungerar.<\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Vi har g\u00e5tt igenom <em><strong>add_shortcode()<\/strong><\/em> och hur den fungerar i f\u00f6reg\u00e5ende avsnitt.<\/li>\n<li><em><a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/shortcode_atts\/\" target=\"_blank\" rel=\"noopener noreferrer\">shortcode_atts()<\/a><\/em> \u00e4r en WordPress-funktion som kombinerar anv\u00e4ndarens kortkods-attribut med k\u00e4nda attribut. Den fyller i standardv\u00e4rden n\u00e4r det beh\u00f6vs (som du dessutom kan st\u00e4lla in sj\u00e4lv). Resultatet blir en matris som inneh\u00e5ller varje nyckel fr\u00e5n de k\u00e4nda attributen, sammanslagna med v\u00e4rden fr\u00e5n anv\u00e4ndardefinierade kortkods-attribut.<\/li>\n<li>Inuti kortkodshanterar-funktionen definierar vi en variabel (<strong>$a<\/strong>) och tilldelar den till matrisen som returneras av <em>shortcode_atts()<\/em>. Vi tilldelar attributen deras standardv\u00e4rden med syntaxen: <strong>&#8217;attribut&#8217; =&gt; &#8217;standardv\u00e4rde&#8217;.<\/strong> I koden ovan st\u00e4ller vi exempelvis in standardv\u00e4rdet f\u00f6r attributet label till Button med syntaxen &#8217; <strong>label&#8217; =&gt; &#8217;Button&#8217;<\/strong>.<\/li>\n<li>Vi kan extrahera v\u00e4rdena f\u00f6r varje attributnyckel med PHP-syntaxen f\u00f6r matriser: <strong>$a[&#8217;attribute&#8217;]<\/strong>.<\/li>\n<li>Variabeln <strong>$output<\/strong> lagrar HTML-koden f\u00f6r knapp-elementet (&lt;a&gt;-tagg med &#8217;button&#8217;-klass). Det \u00e4r den str\u00e4ng som slutligen returneras av funktionen.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Anv\u00e4nd WordPress-funktionen home_url()<\/h3>\n<p>Om du vill att standardl\u00e4nken ska vara webbplatsens startsida kan du dessutom anv\u00e4nda WordPress-funktionen <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/home_url\/\" target=\"_blank\" rel=\"noopener noreferrer\">home_url()<\/a>.<\/p>\n<p>L\u00e5t oss f\u00f6rs\u00f6ka anv\u00e4nda kortkoden som den \u00e4r, utan n\u00e5gra definierade attribut, och se vad som matas ut.<\/p>\n<figure id=\"attachment_63392\" aria-describedby=\"caption-attachment-63392\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63392 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/CTA-Button-First-Test.png\" alt=\"Jag l\u00e4gger till kortkoden till en textwidget i sidof\u00e4ltet f\u00f6r att testa den.\" width=\"1100\" height=\"578\"><figcaption id=\"caption-attachment-63392\" class=\"wp-caption-text\">Jag l\u00e4gger till kortkoden till en textwidget i sidof\u00e4ltet f\u00f6r att testa den.<\/figcaption><\/figure>\n<p>Om du undrar vad de dubbla hakparenteserna \u00e4r till f\u00f6r (<strong>[<\/strong>[cta_button<strong>]]<\/strong>), kallas de en <a href=\"https:\/\/codex.wordpress.org\/Shortcode#Escaping_Shortcodes\" target=\"_blank\" rel=\"noopener noreferrer\">escaping-kortkod<\/a>. De hj\u00e4lper dig att mata ut alla registrerade kortkoder p\u00e5 din webbplats som vanlig text, som i bilden nedan.<\/p>\n<figure id=\"attachment_64725\" aria-describedby=\"caption-attachment-64725\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-64725 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2020\/01\/CTA-Button-First-Test-Output.jpg\" alt=\"Utmatning av CTA Button-kortkoden som visar att den fungerar perfekt\" width=\"1100\" height=\"522\"><figcaption id=\"caption-attachment-64725\" class=\"wp-caption-text\">Utmatning av CTA Button-kortkoden som visar att den fungerar perfekt<\/figcaption><\/figure>\n<figure id=\"attachment_63390\" aria-describedby=\"caption-attachment-63390\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63390 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/CTA-Button-First-Test-HTML-Output.png\" alt=\"HTML-utdata f\u00f6r CTA-knappen utan attribut.\" width=\"1100\" height=\"432\"><figcaption id=\"caption-attachment-63390\" class=\"wp-caption-text\">HTML-utdata f\u00f6r CTA-knappen utan attribut.<\/figcaption><\/figure>\n<p>Anv\u00e4ndare kan anpassa knappens storlek och f\u00e4rg med kortkoden. Vi har redan st\u00e4llt in deras standardv\u00e4rden i hanterarfunktionen, men vi m\u00e5ste dessutom <a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/wp_enqueue_style\/\">registrera och k\u00f6a in formatmallen i listan \u00f6ver tillg\u00e4ngliga resurser<\/a>. Stilmallen ska inneh\u00e5lla alla klasser som definieras i kortkoden.<\/p>\n<p>Du kan \u00e4ven st\u00e4lla in dessa klasser i ditt temas globala formatmall. Det rekommenderas dock att du laddar dem separat. Detta s\u00e4kerst\u00e4ller att \u00e4ven om du <a href=\"https:\/\/kinsta.com\/se\/blog\/andrar-wordpresstema\/\">\u00e4ndrar<\/a> eller <a href=\"https:\/\/kinsta.com\/se\/blog\/sa-uppdaterar-du-ett-wordpress-tema\/\">uppdaterar ditt WordPress-tema<\/a>, kommer dessa klasser fortfarande att laddas tillsammans med kortkoden.<\/p>\n<pre><code class=\"language-php\">\/** Enqueuing the Stylesheet for the CTA Button *\/\n\nfunction salcodes_enqueue_scripts() {\n global $post;\n if( is_a( $post, 'WP_Post' ) && has_shortcode( $post-&gt;post_content, 'cta_button') ) {\n wp_register_style( 'salcodes-stylesheet',  plugin_dir_url( __FILE__ ) . 'css\/style.css' );\n     wp_enqueue_style( 'salcodes-stylesheet' );\n }\n}\nadd_action( 'wp_enqueue_scripts', 'salcodes_enqueue_scripts');<\/code><\/pre>\n<h3>Kortkoden salcodes_engueue_scripts()<\/h3>\n<p>Kortkoden <em><strong>salcodes_enqueue_scripts()<\/strong><\/em>-funktionen definierar den globala variabeln <strong>$post<\/strong> och bekr\u00e4ftar sedan tv\u00e5 villkor via:<\/p>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><em><strong>is_a()<\/strong><\/em>: kontrollerar om <strong>$post<\/strong> \u00e4r en instans av <strong>WP_Post<\/strong>-objektet. Det h\u00e4nvisar till alla inl\u00e4ggstyper i WordPress.<\/li>\n<li><em><strong>has_shortcode()<\/strong><\/em>: kontrollerar om inl\u00e4ggsinneh\u00e5llet inneh\u00e5ller kortkoden <strong>[cta_button]<\/strong>.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Om b\u00e5da villkoren \u00e4r sanna registrerar och k\u00f6ar funktionen stilmallen <strong>style.css <\/strong>som ing\u00e5r i <strong>CSS-mappen<\/strong>. Funktionen <em><a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/plugin_dir_url\/\" target=\"_blank\" rel=\"noopener noreferrer\">plugin_dir_url( $file )<\/a><\/em> g\u00f6r det d\u00e4refefter enkelt att f\u00e5 webbadressen till pluginets katalog.<\/p>\n<p>Jag kommer inte att visa dig CSS-koden h\u00e4r, men du kan hitta den i k\u00e4llkoden som l\u00e4nkas i slutet av detta avsnitt.<\/p>\n<p>Slutligen, l\u00e5t oss testa <strong>[cta_button]<\/strong>-kortkoden genom att l\u00e4gga till den i inl\u00e4ggs-inneh\u00e5llet:<\/p>\n<figure id=\"attachment_63389\" aria-describedby=\"caption-attachment-63389\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63389 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/Testing-the-CTA-Button-Shortcode-with-Attributes.png\" alt=\"L\u00e4gg m\u00e4rke till de anpassade l\u00e4nk-, f\u00e4rg-, storleks- och etikett-attributen.\" width=\"1100\" height=\"238\"><figcaption id=\"caption-attachment-63389\" class=\"wp-caption-text\">L\u00e4gg m\u00e4rke till de anpassade l\u00e4nk-, f\u00e4rg-, storleks- och etikett-attributen.<\/figcaption><\/figure>\n<p>Bilden nedan visar hur CTA-knappen ser ut p\u00e5 frontend:<\/p>\n<figure id=\"attachment_63388\" aria-describedby=\"caption-attachment-63388\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63388 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/CTA-Button-Second-Test-with-Attributes.png\" alt=\"CTA-knappen har nu en ny webbadress, f\u00e4rg, storlek och etikett.\" width=\"1100\" height=\"238\"><figcaption id=\"caption-attachment-63388\" class=\"wp-caption-text\">CTA-knappen har nu en ny webbadress, f\u00e4rg, storlek och etikett.<\/figcaption><\/figure>\n<p>Nu n\u00e4r du har l\u00e4rt dig hur du definierar anpassade attribut och inkluderar stilar kan du l\u00e4gga till olika andra funktioner i din kortkod f\u00f6r CTA-knappen. Du kan exempelvis ge dina anv\u00e4ndare m\u00f6jlighet att l\u00e4gga till animationer, hover-effekter och olika andra knappstilar.<\/p>\n<h3>Exempel 3: Kortkod som anv\u00e4nder $content<\/h3>\n<p>I v\u00e5rt sista exempel bygger vi en omslutande kortkod som heter <strong>[boxed]<\/strong> som matar ut allt inneh\u00e5ll mellan dess taggar i en ruta med f\u00e4rgglada titlar.<\/p>\n<p>L\u00e5t oss b\u00f6rja med att registrera kortkoden och definiera dess hanterar-funktion.<\/p>\n<pre><code class=\"language-php\">\/**\n * [boxed] returns the HTML code for a content box with colored titles.\n * @return string HTML code for boxed content\n*\/\n\nadd_shortcode( 'boxed', 'salcodes_boxed' );\n\nfunction salcodes_boxed( $atts, $content = null, $tag = '' ) {\n $a = shortcode_atts( array(\n 'title' =&gt; 'Title',\n 'title_color' =&gt; 'white',\n 'color' =&gt; 'blue',\n ), $atts );\n \n $output = '&lt;div class=\"salcodes-boxed\" style=\"border:2px solid ' . esc_attr( $a['color'] ) . ';\"&gt;'.'&lt;div class=\"salcodes-boxed-title\" style=\"background-color:' . esc_attr( $a['color'] ) . ';\"&gt;&lt;h3 style=\"color:' . esc_attr( $a['title_color'] ) . ';\"&gt;' . esc_attr( $a['title'] ) . '&lt;\/h3&gt;&lt;\/div&gt;'.'&lt;div class=\"salcodes-boxed-content\"&gt;&lt;p&gt;' . esc_attr( $content ) . '&lt;\/p&gt;&lt;\/div&gt;'.'&lt;\/div&gt;';\n \n return $output;\n}<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong>$content = null<\/strong>: detta registrerar kortkoden som en inneslutande typ. Du kan anv\u00e4nda variabeln <strong>$content<\/strong> i din hanterar-funktion f\u00f6r att \u00e4ndra utdata som du vill.<\/li>\n<li><strong>$tag = &#8221;<\/strong>: Definierar kortkodens <strong>$tag-variabel<\/strong>. Det \u00e4r inte n\u00f6dv\u00e4ndigt i det h\u00e4r exemplet, men \u00e4r en bra praxis att inkludera den.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>I det h\u00e4r exemplet \u00e4ndrar vi inneh\u00e5llet med hj\u00e4lp av inbundna <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpress-css\/\" target=\"_blank\" rel=\"noopener noreferrer\">CSS-stilar<\/a>.<\/p>\n<h3>Stilar registreras och k\u00f6as<\/h3>\n<p>Stilar f\u00f6r alla klasser som anv\u00e4nds i kortkoden registreras och k\u00f6as som vi gjorde i det tidigare kortkods-exemplet.<\/p>\n<p>Om tv\u00e5 kortkoder anv\u00e4nder samma formatmall m\u00e5ste du dock ladda den om n\u00e5gon av dem anv\u00e4nds. S\u00e5 l\u00e5t oss uppdatera <em><strong>salcodes_enqueue_scripts()<\/strong><\/em>-funktionen:<\/p>\n<pre><code class=\"language-php\">\/** Enqueuing the Stylesheet for Salcodes *\/\n\nfunction salcodes_enqueue_scripts() {\n global $post;\n $has_shortcode = has_shortcode( $post-&gt;post_content, 'cta_button' ) || has_shortcode( $post-&gt;post_content, 'boxed' );\n if( is_a( $post, 'WP_Post' ) && $has_shortcode ) {\n wp_register_style( 'salcodes-stylesheet',  plugin_dir_url( __FILE__ ) . 'css\/style.css' );\n     wp_enqueue_style( 'salcodes-stylesheet' );\n }\n}\nadd_action( 'wp_enqueue_scripts', 'salcodes_enqueue_scripts');<\/code><\/pre>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li><strong>$has_shortcode<\/strong>: en anv\u00e4ndardefinierad variabel som kontrollerar om n\u00e5gon av kortkoderna finns p\u00e5 sidan\/inl\u00e4gget. Operatorn <strong>|| <\/strong>(OR) g\u00f6r detta m\u00f6jligt.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>L\u00e5t oss nu ta v\u00e5r <strong>[boxed]<\/strong> kortkod p\u00e5 en provtur.<\/p>\n<figure id=\"attachment_63386\" aria-describedby=\"caption-attachment-63386\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63386 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/Testing-the-Boxed-Shortcode-with-Attributes.png\" alt=\"L\u00e4gg till kortkoden boxed tillsammans med attributen title, title_color och color.\" width=\"1100\" height=\"316\"><figcaption id=\"caption-attachment-63386\" class=\"wp-caption-text\">L\u00e4gg till kortkoden boxed tillsammans med attributen title, title_color och color.<\/figcaption><\/figure>\n<p>Sk\u00e4rmdumpen nedan visar resultatet som vi f\u00e5r.<\/p>\n<figure id=\"attachment_63385\" aria-describedby=\"caption-attachment-63385\" style=\"width: 1100px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-63385 size-full\" src=\"https:\/\/kinsta.com\/wp-content\/uploads\/2019\/12\/Boxed-Shortcode-and-How-it-Works.png\" alt=\"En snygg box \u00e4r trots allt inte s\u00e5 sv\u00e5rt att f\u00e5 till!\" width=\"1100\" height=\"316\"><figcaption id=\"caption-attachment-63385\" class=\"wp-caption-text\">En snygg box \u00e4r trots allt inte s\u00e5 sv\u00e5rt att f\u00e5 till!<\/figcaption><\/figure>\n<p>Nu n\u00e4r du har l\u00e4rt dig hur du skapar dina egna kortkoder kan du t\u00e4nka utanf\u00f6r <strong>[boxen]<\/strong> och ge dem din egen pr\u00e4gel. Gl\u00f6m inte att dela dina skapelser med oss!<\/p>\n<p>Om du vill kan du ladda ner k\u00e4llkoden f\u00f6r Shortcode-plugins <a href=\"https:\/\/github.com\/SalmanRavoof\/salcodes\">h\u00e4rifr\u00e5n<\/a>.<\/p>\n<h2>WordPress-kortkoder: F\u00f6rdelar vs Nackdelar<\/h2>\n<h3>F\u00f6rdelar<\/h3>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Kortkoder f\u00f6renklar till\u00e4gget av komplexa funktioner p\u00e5 WordPress-webbplatser. Du kan exempelvis l\u00e4gga till n\u00e4stan vad som helst genom att skriva en enda kodrad.<\/li>\n<li>De automatiserar arbetsfl\u00f6det f\u00f6r utveckling. Behovet av att skriva komplexa skript varje g\u00e5ng som du vill infoga en viss funktion elimineras.<\/li>\n<li>Kortkoder \u00e4r mer anv\u00e4ndarv\u00e4nliga \u00e4n att l\u00e4gga till HTML-kod eller PHP-skript.<\/li>\n<li>De kan dessutom paketeras i plugins. \u00c4ven om du uppdaterar WordPress eller \u00e4ndrar\/uppdaterar ditt tema kommer kortkoderna fortfarande att vara giltiga och forts\u00e4tta att fungera som de gjorde tidigare.<\/li>\n<li>Att paketera kortkoder i plugins g\u00f6r dem enkla att anv\u00e4nda p\u00e5 flera WordPress-webbplatser. De kan d\u00e4rf\u00f6r vara en livr\u00e4ddare, om du \u00e4r en utvecklare som hanterar m\u00e5nga webbplatser.<\/li>\n<li>Eftersom kortkoder \u00e4ven accepterar attribut kan anv\u00e4ndare \u00e4ndra hur samma kortkod beter sig genom att bara \u00e4ndra dess attribut-alternativ.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h3>Nackdelar<\/h3>\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li style=\"list-style-type: none\">\n<ul>\n<li>Kortkoder \u00e4r inte intuitiva att anv\u00e4nda f\u00f6r slutanv\u00e4ndaren, s\u00e4rskilt om m\u00e5nga av dem anv\u00e4nds p\u00e5 en sida. I s\u00e5dana fall \u00e4r de mer l\u00e4mpade f\u00f6r utvecklare.<\/li>\n<li>Det \u00e4r sv\u00e5rt att s\u00e4ga vad en kortkod g\u00f6r bara genom att titta p\u00e5 den. WordPress k\u00e4rnteam har d\u00e4rf\u00f6r d\u00f6pt dem till &#8221;<a href=\"https:\/\/developer.wordpress.org\/block-editor\/contributors\/design\/\" target=\"_blank\" rel=\"noopener noreferrer\">mystery meat embed codes<\/a>&#8221;.<\/li>\n<li>Alla kortkoder som levereras med teman kommer att sluta fungera om du \u00e4ndrar ditt tema.<\/li>\n<li>De \u00e4r tvetydiga n\u00e4r det g\u00e4ller deras syntax. Vissa av dem st\u00f6der exempelvis valfri st\u00e4ngning. Du kan d\u00e4rf\u00f6r anv\u00e4nda dem som antingen sj\u00e4lvst\u00e4ngande eller inneslutande eller till och med b\u00e5da om de \u00e4r kapslade. Detta kan verkligen bli superf\u00f6rvirrande v\u00e4ldigt fort.<\/li>\n<li>Kortkoder kan krascha HTML p\u00e5 grund av motstridiga taggar eller interoperabilitets-problem. Det \u00e4r aldrig bra om de syns p\u00e5 n\u00e5gon webbplats frontend.<\/li>\n<li>Kortkoder l\u00e4gger till en extra belastning p\u00e5 din server. N\u00e4r antalet kortkoder p\u00e5 din sida \/ inl\u00e4gg \u00f6kar, \u00f6kar dessutom denna belastning. Allt f\u00f6r m\u00e5nga kortkoder kan d\u00e4rf\u00f6r f\u00e5 din webbplats att krypa (exempelvis resultatet av de flesta <a href=\"https:\/\/kinsta.com\/se\/blog\/wordpress-sidbyggare\/\">sidbyggare<\/a>).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Kortkoder och Gutenberg-block<\/h2>\n<p>Inf\u00f6randet av Gutenberg har gjort kortkoder mindre \u00f6nskv\u00e4rda. Anv\u00e4ndare kan nu <a href=\"https:\/\/wordpress.org\/gutenberg\/\" target=\"_blank\" rel=\"noopener noreferrer\">l\u00e4gga till block direkt fr\u00e5n redigeringsgr\u00e4nssnittet<\/a>, ist\u00e4llet f\u00f6r att hantera kortkodsmarkeringar, oavsett hur enkelt det \u00e4r.<\/p>\n<p>Och om du vill l\u00e4gga till kortkoder inkluderar Gutenberg dessutom ett dedikerat block f\u00f6r att l\u00e4gga till kortkoder. <em>Block \u00e4r de nya kortkoderna.<\/em><\/p>\n<blockquote><p>&#8221;Om du kan g\u00f6ra det med en kortkod kan du g\u00f6ra det med ett block.&#8221; &#8211; <a href=\"https:\/\/wordpress.org\/support\/topic\/shortcodes-vs-blocks-2\/#post-11577526\" target=\"_blank\" rel=\"noopener noreferrer\">James Huff, Happiness Engineer p\u00e5 Automattic<\/a><\/p><\/blockquote>\n<p>Det f\u00f6rklarar varf\u00f6r alla de <a href=\"https:\/\/calderaforms.com\/2019\/01\/convert-shortcode-gutenberg-block\/\" target=\"_blank\" rel=\"noopener noreferrer\">popul\u00e4ra kortkoderna konverteras till block<\/a>. M\u00e5nga WordPress-utvecklare har d\u00e4rf\u00f6r g\u00e5tt \u00f6ver till att l\u00e5ta sina produkter och tj\u00e4nster fungera uteslutande med blockredigeraren (Gutenberg).<\/p>\n<p>Men det betyder inte att detta \u00e4r slutet f\u00f6r kortkoder. WordPress Core Team har utlovat m\u00e5nga f\u00f6rb\u00e4ttringar av blockredigeraren, som du kan se i <a href=\"https:\/\/kinsta.com\/se\/blog\/twenty-twenty-tema\/\">Twenty Twenty<\/a>. Tills dess \u00e4r dock kortkoderna h\u00e4r f\u00f6r att stanna!<\/p>\n\n<h2>Sammanfattning<\/h2>\n<p>Att l\u00e4gga till en komplex funktionalitet var som helst p\u00e5 din WordPress-webbplats \u00e4r enkelt med kortkoder. De ger exempelvis anv\u00e4ndarna enkla taggar som kan anv\u00e4ndas utan att de beh\u00f6ver h\u00e5lla p\u00e5 med komplexa koder.<\/p>\n<p>\u00c4ven om det kanske inte finns n\u00e5gra genv\u00e4gar i livet, finns det verkligen m\u00e5nga kortkoder att anv\u00e4nda i WordPress. Mina favoriter \u00e4r <a href=\"https:\/\/wordpress.org\/plugins\/shortcodes-ultimate\/\" target=\"_blank\" rel=\"noopener noreferrer\">Shortcodes Ultimate<\/a> och <a href=\"https:\/\/wordpress.org\/plugins\/wc-shortcodes\/\" target=\"_blank\" rel=\"noopener noreferrer\">Shortcodes by Angie Makes<\/a>.<\/p>\n<p>Och om du inte kan hitta den som du letar efter, kan du skapa en sj\u00e4lv.<\/p>\n<p>Du kan dessutom ta en genv\u00e4g f\u00f6r att skapa din anpassade kortkod genom att anv\u00e4nda <a href=\"https:\/\/wordpress.org\/plugins\/shortcoder\/\" target=\"_blank\" rel=\"noopener noreferrer\">Shortcode-pluginet<\/a>. Det tar hand om alla v\u00e4sentliga saker f\u00f6r dig. Och kom ih\u00e5g: livet \u00e4r kort, anv\u00e4nd kortkoder!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>WordPress kortkoder \u00e4r en kraftfull funktion f\u00f6r att g\u00f6ra coola saker med liten anstr\u00e4ngning. Du kan g\u00f6ra i stort sett vad som helst med dem. Om &#8230;<\/p>\n","protected":false},"author":117,"featured_media":54962,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kinsta_gated_content":false,"_kinsta_gated_content_redirect":"","footnotes":""},"tags":[753,139],"topic":[],"class_list":["post-54961","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-shortcodes","tag-wptips"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v24.6) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>WordPress kortkoder: Den ultimata guiden f\u00f6r skapande och anv\u00e4ndning<\/title>\n<meta name=\"description\" content=\"WordPress kortkoder g\u00f6r ditt liv enklare. L\u00e4r dig vad de \u00e4r och hur du skapar anpassade WordPress-kortkoder i denna guide (med kod-exempel)\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/\" \/>\n<meta property=\"og:locale\" content=\"sv_SE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Den ultimata guiden till WordPress-kortkoder (med exempel f\u00f6r att skapa dina egna)\" \/>\n<meta property=\"og:description\" content=\"WordPress kortkoder g\u00f6r ditt liv enklare. L\u00e4r dig vad de \u00e4r och hur du skapar anpassade WordPress-kortkoder i denna guide (med kod-exempel)\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/\" \/>\n<meta property=\"og:site_name\" content=\"Kinsta\u00ae\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/kinstasweden\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-08-22T17:26:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-09-04T06:20:09+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1460\" \/>\n\t<meta property=\"og:image:height\" content=\"730\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Salman Ravoof\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:description\" content=\"WordPress kortkoder g\u00f6r ditt liv enklare. L\u00e4r dig vad de \u00e4r och hur du skapar anpassade WordPress-kortkoder i denna guide (med kod-exempel)\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg\" \/>\n<meta name=\"twitter:creator\" content=\"@salmanravoof\" \/>\n<meta name=\"twitter:site\" content=\"@kinsta_se\" \/>\n<meta name=\"twitter:label1\" content=\"Skriven av\" \/>\n\t<meta name=\"twitter:data1\" content=\"Salman Ravoof\" \/>\n\t<meta name=\"twitter:label2\" content=\"Ber\u00e4knad l\u00e4stid\" \/>\n\t<meta name=\"twitter:data2\" content=\"22 minuter\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/\"},\"author\":{\"name\":\"Salman Ravoof\",\"@id\":\"https:\/\/kinsta.com\/se\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987\"},\"headline\":\"Den ultimata guiden till WordPress-kortkoder (med exempel f\u00f6r att skapa dina egna)\",\"datePublished\":\"2023-08-22T17:26:07+00:00\",\"dateModified\":\"2023-09-04T06:20:09+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/\"},\"wordCount\":4504,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/se\/#organization\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg\",\"keywords\":[\"shortcodes\",\"wptips\"],\"inLanguage\":\"sv-SE\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/\",\"url\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/\",\"name\":\"WordPress kortkoder: Den ultimata guiden f\u00f6r skapande och anv\u00e4ndning\",\"isPartOf\":{\"@id\":\"https:\/\/kinsta.com\/se\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg\",\"datePublished\":\"2023-08-22T17:26:07+00:00\",\"dateModified\":\"2023-09-04T06:20:09+00:00\",\"description\":\"WordPress kortkoder g\u00f6r ditt liv enklare. L\u00e4r dig vad de \u00e4r och hur du skapar anpassade WordPress-kortkoder i denna guide (med kod-exempel)\",\"breadcrumb\":{\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#breadcrumb\"},\"inLanguage\":\"sv-SE\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"sv-SE\",\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#primaryimage\",\"url\":\"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg\",\"contentUrl\":\"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg\",\"width\":1460,\"height\":730},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/kinsta.com\/se\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Den ultimata guiden till WordPress-kortkoder (med exempel f\u00f6r att skapa dina egna)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kinsta.com\/se\/#website\",\"url\":\"https:\/\/kinsta.com\/se\/\",\"name\":\"Kinsta\u00ae\",\"description\":\"Snabba, s\u00e4kra, premium hosting-l\u00f6sningar\",\"publisher\":{\"@id\":\"https:\/\/kinsta.com\/se\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kinsta.com\/se\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"sv-SE\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kinsta.com\/se\/#organization\",\"name\":\"Kinsta\",\"url\":\"https:\/\/kinsta.com\/se\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"sv-SE\",\"@id\":\"https:\/\/kinsta.com\/se\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/12\/kinsta-logo.jpeg\",\"contentUrl\":\"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/12\/kinsta-logo.jpeg\",\"width\":500,\"height\":500,\"caption\":\"Kinsta\"},\"image\":{\"@id\":\"https:\/\/kinsta.com\/se\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/kinstasweden\/\",\"https:\/\/x.com\/kinsta_se\",\"https:\/\/www.instagram.com\/kinstahosting\/\",\"https:\/\/www.linkedin.com\/company\/kinsta\/\",\"https:\/\/www.pinterest.com\/kinstahosting\/\",\"https:\/\/www.youtube.com\/c\/Kinsta\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/kinsta.com\/se\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987\",\"name\":\"Salman Ravoof\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"sv-SE\",\"@id\":\"https:\/\/kinsta.com\/se\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g\",\"caption\":\"Salman Ravoof\"},\"description\":\"Salman Ravoof is a self-taught web developer, writer, creator, and a huge admirer of Free and Open Source Software (FOSS). Besides tech, he's excited by science, philosophy, photography, arts, cats, and food. Learn more about him on his website, and connect with Salman on Twitter.\",\"sameAs\":[\"https:\/\/salmanravoof.com\",\"https:\/\/www.linkedin.com\/in\/salman-ravoof-5a749133\/\",\"https:\/\/x.com\/salmanravoof\"],\"url\":\"https:\/\/kinsta.com\/se\/blog\/author\/salmanravoof\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"WordPress kortkoder: Den ultimata guiden f\u00f6r skapande och anv\u00e4ndning","description":"WordPress kortkoder g\u00f6r ditt liv enklare. L\u00e4r dig vad de \u00e4r och hur du skapar anpassade WordPress-kortkoder i denna guide (med kod-exempel)","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/","og_locale":"sv_SE","og_type":"article","og_title":"Den ultimata guiden till WordPress-kortkoder (med exempel f\u00f6r att skapa dina egna)","og_description":"WordPress kortkoder g\u00f6r ditt liv enklare. L\u00e4r dig vad de \u00e4r och hur du skapar anpassade WordPress-kortkoder i denna guide (med kod-exempel)","og_url":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/","og_site_name":"Kinsta\u00ae","article_publisher":"https:\/\/www.facebook.com\/kinstasweden\/","article_published_time":"2023-08-22T17:26:07+00:00","article_modified_time":"2023-09-04T06:20:09+00:00","og_image":[{"width":1460,"height":730,"url":"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg","type":"image\/jpeg"}],"author":"Salman Ravoof","twitter_card":"summary_large_image","twitter_description":"WordPress kortkoder g\u00f6r ditt liv enklare. L\u00e4r dig vad de \u00e4r och hur du skapar anpassade WordPress-kortkoder i denna guide (med kod-exempel)","twitter_image":"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg","twitter_creator":"@salmanravoof","twitter_site":"@kinsta_se","twitter_misc":{"Skriven av":"Salman Ravoof","Ber\u00e4knad l\u00e4stid":"22 minuter"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#article","isPartOf":{"@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/"},"author":{"name":"Salman Ravoof","@id":"https:\/\/kinsta.com\/se\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987"},"headline":"Den ultimata guiden till WordPress-kortkoder (med exempel f\u00f6r att skapa dina egna)","datePublished":"2023-08-22T17:26:07+00:00","dateModified":"2023-09-04T06:20:09+00:00","mainEntityOfPage":{"@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/"},"wordCount":4504,"commentCount":0,"publisher":{"@id":"https:\/\/kinsta.com\/se\/#organization"},"image":{"@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg","keywords":["shortcodes","wptips"],"inLanguage":"sv-SE","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/","url":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/","name":"WordPress kortkoder: Den ultimata guiden f\u00f6r skapande och anv\u00e4ndning","isPartOf":{"@id":"https:\/\/kinsta.com\/se\/#website"},"primaryImageOfPage":{"@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#primaryimage"},"image":{"@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#primaryimage"},"thumbnailUrl":"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg","datePublished":"2023-08-22T17:26:07+00:00","dateModified":"2023-09-04T06:20:09+00:00","description":"WordPress kortkoder g\u00f6r ditt liv enklare. L\u00e4r dig vad de \u00e4r och hur du skapar anpassade WordPress-kortkoder i denna guide (med kod-exempel)","breadcrumb":{"@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#breadcrumb"},"inLanguage":"sv-SE","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/"]}]},{"@type":"ImageObject","inLanguage":"sv-SE","@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#primaryimage","url":"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg","contentUrl":"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/08\/wordpress-shortcodes.jpg","width":1460,"height":730},{"@type":"BreadcrumbList","@id":"https:\/\/kinsta.com\/se\/blog\/wordpress-kortkoder\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/kinsta.com\/se\/"},{"@type":"ListItem","position":2,"name":"Den ultimata guiden till WordPress-kortkoder (med exempel f\u00f6r att skapa dina egna)"}]},{"@type":"WebSite","@id":"https:\/\/kinsta.com\/se\/#website","url":"https:\/\/kinsta.com\/se\/","name":"Kinsta\u00ae","description":"Snabba, s\u00e4kra, premium hosting-l\u00f6sningar","publisher":{"@id":"https:\/\/kinsta.com\/se\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kinsta.com\/se\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"sv-SE"},{"@type":"Organization","@id":"https:\/\/kinsta.com\/se\/#organization","name":"Kinsta","url":"https:\/\/kinsta.com\/se\/","logo":{"@type":"ImageObject","inLanguage":"sv-SE","@id":"https:\/\/kinsta.com\/se\/#\/schema\/logo\/image\/","url":"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/12\/kinsta-logo.jpeg","contentUrl":"https:\/\/kinsta.com\/se\/wp-content\/uploads\/sites\/9\/2023\/12\/kinsta-logo.jpeg","width":500,"height":500,"caption":"Kinsta"},"image":{"@id":"https:\/\/kinsta.com\/se\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/kinstasweden\/","https:\/\/x.com\/kinsta_se","https:\/\/www.instagram.com\/kinstahosting\/","https:\/\/www.linkedin.com\/company\/kinsta\/","https:\/\/www.pinterest.com\/kinstahosting\/","https:\/\/www.youtube.com\/c\/Kinsta"]},{"@type":"Person","@id":"https:\/\/kinsta.com\/se\/#\/schema\/person\/9cafd2eedd617e640eeea4cf3a5fd987","name":"Salman Ravoof","image":{"@type":"ImageObject","inLanguage":"sv-SE","@id":"https:\/\/kinsta.com\/se\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0c5885f75cb78473fb7408e5e49ad190?s=96&d=mm&r=g","caption":"Salman Ravoof"},"description":"Salman Ravoof is a self-taught web developer, writer, creator, and a huge admirer of Free and Open Source Software (FOSS). Besides tech, he's excited by science, philosophy, photography, arts, cats, and food. Learn more about him on his website, and connect with Salman on Twitter.","sameAs":["https:\/\/salmanravoof.com","https:\/\/www.linkedin.com\/in\/salman-ravoof-5a749133\/","https:\/\/x.com\/salmanravoof"],"url":"https:\/\/kinsta.com\/se\/blog\/author\/salmanravoof\/"}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/posts\/54961","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/users\/117"}],"replies":[{"embeddable":true,"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/comments?post=54961"}],"version-history":[{"count":12,"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/posts\/54961\/revisions"}],"predecessor-version":[{"id":55023,"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/posts\/54961\/revisions\/55023"}],"alternate":[{"embeddable":true,"hreflang":"en","title":"English","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/en"},{"embeddable":true,"hreflang":"es","title":"Spanish","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/es"},{"embeddable":true,"hreflang":"pt","title":"Portuguese","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/pt"},{"embeddable":true,"hreflang":"de","title":"German","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/de"},{"embeddable":true,"hreflang":"nl","title":"Dutch","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/nl"},{"embeddable":true,"hreflang":"it","title":"Italian","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/it"},{"embeddable":true,"hreflang":"ja","title":"Japanese","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/jp"},{"embeddable":true,"hreflang":"da","title":"Danish","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/dk"},{"embeddable":true,"hreflang":"fr","title":"French","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/fr"},{"embeddable":true,"hreflang":"sv","title":"Swedish","href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/translations\/se"},{"href":"https:\/\/kinsta.com\/se\/wp-json\/kinsta\/v1\/posts\/54961\/tree"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/media\/54962"}],"wp:attachment":[{"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/media?parent=54961"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/tags?post=54961"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/kinsta.com\/se\/wp-json\/wp\/v2\/topic?post=54961"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}