
🔧 WordPress: hvordan vise en widget med en shortcode hvor som helst på nettstedet ditt
Du trenger et abonnementsskjema, ikke i sidepanelet, men midt inne i et innlegg. Eller en WooCommerce-katalogwidget på en side som ikke har noe sidepanel i det hele tatt. Du går til administrasjonspanelet, leter etter en blokk, og WordPress sier: widgeter lever bare i registrerte temaområder. Det er alt.
Begrensningen er arkitektonisk: widget-systemet er knyttet til sidebar-1, footer-widgets og andre soner definert i temaet. Innholdsområdet i et innlegg er fremmed territorium for det. Du kan omgå dette, men det finnes ikke noe standard «sett inn widget her»-alternativ i kjernen.
En shortcode for widgeter løser problemet med én enkelt linje. Du trenger ikke opprette et eget område, ikke noe child theme, ingen malredigering. Slik fungerer det i 2026: en ferdig plugin, alle parametere og et native PHP-alternativ for utviklere.
💡 Rask oversikt:
- Installer WP Anywhere Widgets, pluginen genererer en shortcode for enhver registrert widget.
- Sett inn shortcoden i et innlegg, en side, et sidepanel eller en PHP-mal for temaet.
- Konfigurer tittel, HTML-wrapper og CSS-klasser via shortcode-parametere.
- For prosjekter uten tredjeparts-pluginer, bruk den native funksjonen
the_widget().
Hvorfor du trenger en shortcode for widgeter
WordPress lar deg ikke vise en widget inne i innholdsområdet til et innlegg ved hjelp av standardverktøy. Widget-systemet fungerer bare innenfor registrerte temaområder, og alt utenfor disse grensene eksisterer ikke for det.
I praksis oppstår behovet i tre scenarioer:
Abonnementsskjema i en lang guide. Sidepanelet har rullet opp og ut av syne, leseren ser ikke skjemaet. En shortcode holder CTA-en rett i innleggsteksten, foran øynene på dem.
WooCommerce-widget på en tilpasset side. Siden er bygget uten sidepanel, men produktfiltre eller søk (
[woocommerce_product_search]) må være akkurat der.Dynamisk «Relaterte innlegg»-blokk i single.php-malen. Temaet hadde ikke noe område før kommentarene. En shortcode kalt fra
functions.phpplasserer widgeten hvor som helst uten å røre maler.
Tidligere håndterte Widget Shortcode-pluginen denne oppgaven: et enkelt verktøy som genererte [widget id="text-1"] for enhver registrert widget. I januar 2023 ble den stengt på grunn av et uløst sikkerhetshull. Den direkte etterfølgeren er WP Anywhere Widgets.
WP Anywhere Widgets: shortcode-generator for enhver widget
WP Anywhere Widgets adopterte den samme ideen, men gikk lenger. Den gir deg ikke bare shortcoder for eksisterende widgeter, men lar deg også lage dine egne rett i administrasjonspanelet, uten å knytte dem til et sidepanel. Den støtter både den klassiske widget-editoren og Gutenberg-blokker.

Installasjonen er standard: Utvidelser → Legg til ny → søk «WP Anywhere Widgets» → Installer → Aktiver. Etter aktivering dukker et Widget Shortcodes-element opp i Utseende-menyen: en oversiktstabell over alle opprettede widgeter og deres shortcoder. En «Kopier»-knapp ved siden av hver.
Pluginen fungerer med WordPress 3.3 og nyere, testet opp til versjon 6.8.5. Per juni 2026 er det 700+ aktive installasjoner og en vurdering på 4,8 av 5 på WordPress.org. Den siste oppdateringen (v4.0) la til full Gutenberg-blokkstøtte og en egen administrasjonsside for å håndtere shortcoder.
🔗 WP Anywhere Widgets på WordPress.org
Hvordan generere en widget-shortcode
Enhver widget registrert i systemet får en unik ID: text-1, calendar-3 eller block-7. WP Anywhere Widgets viser denne ID-en i grensesnittet og gir deg umiddelbart en ferdig shortcode:

Grunnleggende syntaks:
1 [widget id="text-1"]
Sett den inn i et hvilket som helst innlegg, en side eller en tekstblokk. Pluginen vil sette inn den komplette widget-HTML-en: tittel, innhold, wrapper med temaets CSS-klasser. Ingen ytterligere konfigurasjon kreves.
Sette inn en shortcode i et innlegg og i Gutenberg-editoren
I den klassiske editoren settes shortcoden inn direkte i teksten, akkurat som [gallery] eller [contact-form-7]:

I blokk-editoren bruker du Shortcode-blokken. Legg til blokken, lim inn [widget id="text-1"], så rendrer WordPress widgeten i den visuelle editoren:

Hvis widgeten inneholder JavaScript (for eksempel et kart eller et skjema), vil den ikke kjøre i editoren. Dette er en sikkerhetsbegrensning i Gutenberg. På frontenden fungerer alt som normalt.
Shortcode-parametere: tittel, wrapper og CSS-klasser
Shortcoden godtar flere valgfrie parametere som endrer HTML-utdataene uten en eneste linje kode:

title, overstyring av tittel. Som standard viser widgeten tittelen som er angitt i innstillingene. Parameteren title erstatter den i farten:
1 [widget id="text-1" title="New title"]
For å skjule tittelen fullstendig, send title="0". Widgeten vil rendres uten en <h2> eller <h3> over innholdet.
container_tag, HTML-tag for wrapper. Som standard er widgeten pakket inn i en <div>. Erstatt den med <section>, <aside> eller en hvilken som helst annen semantisk tag:
1 [widget id="text-1" container_tag="aside"]
container_class, ekstra CSS-klasse. Klassen din legges til standard widget-klassen. Nyttig for tilpasset styling av en spesifikk forekomst:
1 [widget id="text-1" container_class="my-custom-widget"]
container_id, HTML id-attributt. Som standard genererer WordPress ID-en automatisk. Denne parameteren fastsetter verdien for ankerlenker og JavaScript-målretting:
1 [widget id="text-1" container_id="subscribe-widget"]
title_tag** og title_class, kontroll over tittel.** Endre tittel-taggen fra <h2> (standard) til <h3>, <h4>, og legg til en tilpasset klasse:
1 [widget id="text-1" title_tag="h3" title_class="widget-title-large"]
Alle parametere kan kombineres i én shortcode. Rekkefølgen spiller ingen rolle, syntaksen er standard: param="value".
PHP-metode: funksjonen the_widget() for utviklere
Når du ikke trenger en plugin, tilbyr WordPress den native funksjonen the_widget(). Den viser enhver registrert widget direkte fra PHP: i et tema, et child theme eller en Code Snippets-snutt.
Grunnleggende kall:
1 the_widget( 'WP_Widget_Text', array( 2 'title' => 'Subscription form', 3 'text' => '[mailpoet_form id="1"]', 4 'filter' => true, 5 ) );
Det første argumentet er widgetens PHP-klasse. Det andre er en array med innstillinger som samsvarer med det widgeten lagrer i wp_options. Det tredje er en array med wrapper-argumenter:
1 the_widget( 'WP_Widget_Text', 2 array( 'title' => 'Subscribe', 'text' => '[shortcode]' ), 3 array( 4 'before_widget' => '<section class="widget %2$s">', 5 'after_widget' => '</section>', 6 'before_title' => '<h3 class="widget-title">', 7 'after_title' => '</h3>', 8 ) 9 );
Denne tilnærmingen er ikke avhengig av tredjeparts-pluginer og vil ikke knekke ved WordPress-oppdateringer. Ulempen: du må kjenne til hver widgets PHP-klasse. Standard kjerneklasser:
WP_Widget_TextWP_Widget_CalendarWP_Widget_SearchWP_Widget_Categories
Finn en plugins klasse i kildekoden eller via var_dump( $wp_widget_factory->widgets ).
Koden plasseres i functions.php for det aktive temaet (helst et child theme) eller via Code Snippets-pluginen. Før du redigerer functions.php, ta en sikkerhetskopi av filen: en PHP-syntaksfeil vil ta ned hele nettstedet.
⁉️🤔 Ofte stilte spørsmål
Fungerer widget-shortcoden med caching-pluginer?
Ja, shortcoden prosesseres av serveren under sidegenerering, før HTML-en går inn i cachen. WP Rocket, W3 Total Cache og LiteSpeed Cache lagrer den allerede sammensatte siden med den ferdige widgeten. For dynamiske data (WooCommerce-handlekurv, valutakurser), bruk ESI-blokker for å ekskludere et spesifikt fragment fra cachen. Funksjonen
the_widget()kombinert medDOING_AJAXgir deg full kontroll over hva som caches og hva som ikke gjør det.
Må widgeten være i et aktivt sidepanel?
Nei, widgeten trenger ikke å være i et aktivt sidepanel. Den må bare være registrert i WordPress og lagt til i et hvilket som helst sidepanel, inkludert et inaktivt (Inaktive widgeter). WP Anywhere Widgets oppretter widgeter i sitt eget interne register, som ikke er knyttet til temaområder i det hele tatt.
Hvor mange widgeter kan du vise via shortcode på én enkelt side?
Det er ingen mengdebegrensninger. Hvert
[widget]- ellerthe_widget()-kall oppretter en uavhengig instans. Ytelsen avhenger bare av kompleksiteten til widgetene selv: ti tekstblokker eller abonnementsskjemaer vil kjøre umiddelbart, mens ti widgeter med eksterne API-forespørsler vil legge til 200-300 ms hver. For API-tunge widgeter, cache resultater via transient inne ithe_widget().
Hva skjer hvis widget-pluginen fjernes, men shortcoden dens forblir i innlegg?
En shortcode uten en aktiv behandler vises som ren tekst: besøkende vil se
[widget id="text-1"]rett på siden. Før du fjerner kilde-pluginen, sjekk alle innlegg via admin-søk: Verktøy → Better Search Replace, eller WP-CLI:wp search-replace '[widget id="text-1"]' '' --dry-run. Etter masseerstatning, rydd opp i tomme avsnitt i databasen separat.
Kan du bruke en widget-shortcode i en navigasjonsmeny?
WordPress-menyer prosesserer ikke shortcoder som standard. For å sette inn en widget i navigasjonen, bruk
wp_nav_menu_items-filteret ifunctions.phpmed etdo_shortcode('[widget id="..."]')-kall: dette legger til shortcoden før, etter eller mellom spesifikke menyelementer. Alternativ: en tilpasset Walker-klasse som analyserer en{widget}-plassholder i menyelementnavnet og erstatter den med en live widget.
Hva du bør velge: plugin eller tilpasset kode
I de fleste tilfeller håndterer WP Anywhere Widgets oppgaven fullstendig. Installer den, kopier shortcoden, lim den inn der det trengs. Parameterne er nok for wrapper-tilpasning uten en eneste linje CSS.
PHP-metoden via the_widget() er berettiget i to situasjoner: du er en utvikler som sikter mot null tredjeparts-pluginer i prosjektet, eller du trenger spesiell logikk (for eksempel forskjellige widgeter for innloggede brukere kontra gjester). Ellers, bruk pluginen og ikke overkompliser ting.
Hvis målet ditt spesifikt er å bygge inn et abonnementsskjema midt i et innlegg, vurder e-post-pluginer med native shortcode-støtte: MailPoet, Newsletter, Brevo. Hver av dem tilbyr en ferdig [form]-shortcode med posisjoneringskontroll, mens WP Anywhere Widgets fungerer som et universelt lag for alt annet.
En visuell demonstrasjon fra WebTutorials-kanalen: hele syklusen fra plugin-installasjon til en fungerende shortcode på en side, raskt og poengtert.



