
🪟 Modaalaknad WordPressis: kuidas lisada oma saidile hüpiksisu aastal 2026
💡 Kuidas lisada WordPressi hüpikakent
- Vali oma lähenemine: Popup Maker plugin kiireks alustuseks või kohandatud kood täielikuks kontrolliks
- Paigalda Popup Maker jaotise „Plugins → Add New" kaudu ja aktiveeri see
- Loo uus hüpikaken, määra postituse või lehe sisu ja seadista päästik (klikk, taimer või kerimine)
- Kohandatud lahenduse puhul lisa modaalakna CSS-stiilid oma teemafaili või kohandajasse
- Lisa JavaScripti fail
wp_enqueue_script()abil, sõltuvusega jquery'st, kontrollides laadimisjärjekorda - Ava leht ja testi hüpikakent oma brauseris, jälgides samal ajal konsooli vigade suhtes
Mis on modaalaknad ja miks su WordPressi sait neid vajab
Modaalaken on hüpiksisuplokk, mis avaneb lehe peal, samal ajal tausta hämardades. Kasutaja ei lahku kunagi praeguselt URL-ilt, kuid näeb lisateavet: postituse teksti, vormi, videot või galeriid.
WordPressi saidi puhul lahendavad modaalaknad kolm konkreetset probleemi. Esiteks, kasutaja töölaud: eraldi profiililehe asemel kuvad seadeid, tellimusi või sõnumeid hüpikplokis. Teiseks, kiire sisueelvaade: külastaja klõpsab tootekaardil või artikli teaser'il ja näeb täielikku sisu ilma lehe uuesti laadimiseta. Kolmandaks, müügivihjete kogumise vormid: tellimis-, registreerimis- ja kontaktvormid ilmuvad täpselt siis, kui külastaja on valmis tegutsema.
Modaalakna peamine eelis eraldi lehe ees on kiirus. Ei ole vaja oodata täielikku lehe laadimist koos selle päise, külgriba ja jaluseosaga. Sa laadid ainult the_content(), puhta sisu. See säästab nii kasutaja aega kui ka serveri ressursse.
WP Post Popup: miks veteranplugin lavalt lahkus

Kuni 2023. aastani oli üks populaarsemaid modaalakende lahendusi WordPressis WP Post Popup (wp-post-modal) plugin. See suutis muuta mis tahes postituse, lehe või kohandatud postitüübi hüpikaknaks; tuli vaid määrata URL koos parameetriga. Plugin töötas lühikoodide, Contact Form 7 ja BuddyPressiga; see suutis laadida väliseid lehti ja isegi valikuliselt kuvada kindlat div elementi teiselt saidilt.
- aasta oktoobris plugin suleti. Põhjuseks oli turvanõrkus. WordPress.org lehel on nüüd staatus „See plugin on suletud… Põhjus: turvaprobleem." Sellest ajast alates pole see allalaadimiseks saadaval ja aktiivsed installatsioonid on langenud nulli.
Kuid WP Post Popupi taga olevad ideed pole kuhugi kadunud. Sisu kuvamine hüpikaknas ilma lehe uuesti laadimiseta on ka täna lahendatav ja seda kahel viisil: kaasaegsed pluginad ja puhas kood.
3 Kaasaegset viisi modaalakna lisamiseks WordPressis
Siin on praegused võimalused 2026. aastaks, alates valmispluginatest kuni täielikult kohandatud lahenduseni.
Meetod | Keerukus | Paindlikkus | Hind |
|---|---|---|---|
Popup Maker | Madal | Keskmine | Tasuta (põhiversioon) |
Bootstrap 5 modaalaken | Keskmine | Kõrge | Tasuta |
Puhas CSS + JavaScript (DIY) | Kõrge | Maksimaalne | Tasuta |
Popup Maker on kõige populaarsem tasuta plugin hüpikakende jaoks: 700 000+ aktiivset installatsiooni ja hinne 4,9 WordPress.org-is. See loob mis tahes tüüpi hüpikakna, alates sisuga modaalakendest kuni sisselibisevate paneelide ja bänneriteni. Päästikute hulka kuuluvad klikk, taimer, kerimine või lahkumiskavatsus. Kui vajad kiiret koodivaba lahendust, on see parim lähtepunkt.
Bootstrap 5 on sisse ehitatud paljudesse kaasaegsetesse teemadesse. Selle loomulik Modal komponent töötab koheselt: responsiivsus, animatsioon, sulgumine Escape-klahviga ja aknast väljapoole klõpsates. Lihtsalt lisa Bootstrap oma teemasse ja kasuta valmis märgendust koos data-atribuutidega.
Puhas kood on tee neile, kes vajavad täielikku kontrolli akna iga piksli ja käitumise üle. Ei mingeid lisaskripte, sõltuvusi ega konflikte teiste pluginatega. See on meetod, mille me samm-sammult läbi käime.
Ülaltoodud video on praktiline õpetus kohandatud modaalakna loomiseks WordPressis nullist: 12 minutit puhast koodi, mille lõpus on valmis tulemus.
Samm-sammuline juhend: modaalakna ehitamine nullist
See meetod töötab igal WordPressi saidil, sõltumata teemast. Kirjutame CSS-raamistiku hüpikploki stiilimiseks, parandame tüüpilise JavaScripti vea ja lisame nutika eellaaduri, et sisu ilmuks sujuvalt, ilma vilkumiseta.
1. Samm: CSS-raamistik modaalaknale
Põhiline stiilimine saavutab kolm asja: see tsentreerib akna ekraanil, hämardab tausta ja kohandab tabeleid modaalploki sees. Siin on töötav kood sinu teema style.css faili või kohandaja vahekaardile „Additional CSS":
1 /* Modal window — basic styles */ 2 .modal.show { 3 max-width: 650px; 4 } 5 6 .modal.show .kk-star-ratings.bottom-right.rgt { 7 display: none; 8 } 9 10 /* Tables inside the modal window */ 11 .modal.show table { 12 border-collapse: separate; 13 max-width: 100%; 14 overflow: auto; 15 table-layout: fixed; 16 border: none; 17 width: auto; 18 } 19 20 .modal.show table th { 21 background: #F8F0F8; 22 padding: 17px 10px; 23 vertical-align: middle; 24 color: #7F617E; 25 font-size: 12px; 26 text-align: left; 27 } 28 29 .modal.show table th:first-child { 30 border-radius: 5px 0 0 5px; 31 } 32 33 .modal.show table th:last-child { 34 border-radius: 0 5px 5px 0; 35 } 36 37 .modal.show table th.th-border { 38 border-left: 1px solid #ECE1EC; 39 } 40 41 .modal.show table td { 42 color: #424242; 43 font-size: 13px; 44 border-bottom: 1px dashed #E5E5E5; 45 padding: 10px 5px 5px 4px; 46 text-align: left; 47 } 48 49 .modal.show table tr:last-child td { 50 border-bottom: none; 51 padding-bottom: 20px; 52 } 53 54 .modal.show table td { 55 border-right: 1px solid #F7F7F7; 56 } 57 58 .modal.show table td:last-child { 59 border-right: none; 60 } 61 62 .modal.show table tr:first-child td { 63 padding-top: 20px; 64 }
Võtmepunkt: .modal.show selektor tagab, et stiile rakendatakse ainult siis, kui modaalaken on aktiivne. Kokkupandud olekus ei mõjuta plokk lehe paigutust. Tabelid modaalploki sees saavad eraldi kohtlemise: ümarad nurgad päistel, kriipsutatud reajagajad ja responsiivne kerimine.
2. Samm: JavaScripti vead ja kuidas neid parandada

Kõige levinum probleem modaalakendega töötamisel WordPressis on Uncaught ReferenceError: wp is not defined viga. See ilmneb siis, kui plugin või kohandatud skript üritab kasutada wp objekti (WordPressi JavaScript API) enne, kui tuum on selle laadinud.
WP Post Popupi puhul oli probleem funktsioonis modalCustomizer(), mis tõmbas adminipoolelt seadeid wp.customize kaudu. Siin on, kuidas see plugina koodis välja nägi:
1 // Window load 2 $(window).on('load', function () { 3 modalCustomizer(); 4 });
Parandus on lihtne: kommenteeri välja kutse, kui stiilid akna enda CSS-i kaudu:
1 // Window load 2 $(window).on('load', function () { 3 // modalCustomizer(); 4 });
Üldreegel mis tahes modaalskriptide jaoks WordPressis: kontrolli alati sõltuvuste laadimisjärjekorda. Lisa oma skriptid wp_enqueue_script() abil, selgete sõltuvustega jquery ja wp-util suhtes. Ja ära kunagi lisa <script> otse postituse kehasse; see on kindel tee vigadeni nagu $ is not defined ja wp is not defined.
3. Samm: nutikas eellaadur jQuery'ga

Eellaaduri ülesanne on näidata laadimisindikaatorit, samal ajal kui postituse sisu laaditakse AJAX-i kaudu. Kui andmed on saabunud, hajub eellaadur sujuvalt. DOM-i muutuste jälgimiseks kasutame mikroteeki jquery-watch (25 koodirida, mis jälgivad elemendi atribuutide ja omaduste muutusi).
CSS eellaaduri jaoks: taustal olev gif-indikaator, tsentreeritud modaalplokis:
1 /* Modal window preloader */ 2 .modal-wrapper.styled .modal { 3 min-height: 385px; 4 background-color: white; 5 background-size: inherit; 6 } 7 8 div#modal-content { 9 background-color: white; 10 } 11 12 .modal-wrapper.styled .modal { 13 background: white url(/wp-content/uploads/2018/02/dollar-glass.gif) center center no-repeat scroll; 14 } 15 16 #single-post-meta-manager { 17 opacity: 0; 18 } 19 20 div.modal-content-post-wrapped.load { 21 opacity: 1; 22 }
Kuidas see töötab: algselt on sisu peidetud (opacity: 0) ja taustal olev eellaadur on nähtav. Kui andmed on laaditud, lisab jQuery .load klassi, sisu hajub sisse ja eellaadur kaob. Siin on JS kood:
1 jQuery(document).ready(function($) { 2 3 // Smooth appearance of content in the modal window 4 $("div#single-post-meta-manager").animate({ 'opacity': '1' }).fadeIn('slow'); 5 6 // Add class-informer "content loaded" 7 $("div.modal-content-post-wrapped").addClass("load"); 8 9 // Track modal window changes via jquery-watch 10 $(".modal-wrapper").watch({ 11 properties: "top,left,opacity,display,attr_class", 12 watchChildren: true, 13 callback: function (data, i) { 14 // Set preloader as background image 15 $('.modal-wrapper.styled .modal').css( 16 'background', 17 'white url(/wp-content/uploads/2018/02/dollar-glass.gif) center center no-repeat scroll' 18 ); 19 // If content is loaded — remove preloader 20 if ($('.modal-content-post-wrapped').is('.load')) { 21 $('.modal.show').css('background', 'white'); 22 } 23 } 24 }); 25 26 });
Oluline hoiatus. Ülaltoodud kood kasutab jQuery't ja jquery-watch pluginat. Enne selle lisamist veendu, et jQuery on järjekorda pandud ja laadib enne sinu skripti. Kaasaegsetel WordPressi saitidel tuleb jQuery tuumaga kaasa, seega pole täiendavaid kaasamisi vaja. Lisa skript wp_enqueue_script() kaudu failis functions.php, mitte otse postituse kehasse.
Mida teha, kui modaalaken ei lae
Üle 6 aasta WordPressi modaalidega töötades olen koostanud nimekirja tüüpilistest põhjustest, alates ilmsetest kuni varjatuteni. Siin on diagnostiline kontrollnimekiri:
- jQuery ei ole laaditud või on konfliktis. Kontrolli brauseri konsooli (F12 → Console). Viga
$ is not definedtähendab, et jQuery pole kas järjekorda pandud või sinu skript käivitus liiga vara. Lahendus:wp_enqueue_script('my-modal', ..., array('jquery')). - Lehe mall ei väljasta
the_content(). Mõned kohandatud mallid nagupage-modal.phpkasutavadthe_content()asemelget_the_content(). Viimane ei rakenda filtreid, mistõttu lühikoodid ja vormindus katkevad. - Konflikt vahemälupluginatega. Kui laadid AJAX-sisu ja sait kasutab WP Rocketit või LiteSpeed Cache'i, keela vahemälu URL-ide jaoks, mida modaalaken hangib.
- CORS-i viga välise lehe laadimisel. Brauser blokeerib päringud teisele domeenile. See lahendatakse puhverdamisega läbi WordPressi REST API või CORS-i päiste seadistamisega sihtserveris.
- Murdepunkt. Mobiilseadmetes asendatakse modaalaken sageli otseviidaga, nii et kasutaja lihtsalt navigeerib lehele. Kontrolli
@mediareegleid oma CSS-is: alla 768px ei pruugi aken tahtlikult ilmuda.
⁉️🤔 Korduma kippuvad küsimused
Plugin või puhas kood: mida peaksin modaalakna jaoks valima?
Kui vajad valmislahendust 5 minutiga, paigalda Popup Maker. See katab enamiku tüüpilisi stsenaariume: tellimisvormid, kiired eelvaated, teavitused. Kui sul on ebastandardne disain, keeruline AJAX-loogika või jõudlusnõuded (mitte ühtegi lisakilobaiti), kirjuta see ise. Puhas kood annab täieliku kontrolli mitmetunnise arendustöö hinnaga. Popup Maker lisab lehele umbes 40-60 KB skripte ja stiile. Kohandatud lahendus mahub 2-5 KB sisse, erinevus on 10-30 korda. Suure külastatavusega saidi puhul on see märgatav.
Kas ma saan avada välist lehte hüpikaknas?
Jah, kuid piirangutega. WordPress ei puhverda vaikimisi kolmanda osapoole sisu. Kui sihtsait ei saada CORS-i päist
Access-Control-Allow-Origin: *, blokeerib brauser AJAX-päringu. Lahenduseks on kirjutada oma serveripoolne puhver, kasutadeswp_remote_get()või seadistada REST API lõpp-punkt, mis hangib sisu ja toimetab selle sinu esiotsa. Avalike API-de ja usaldusväärsete allikate puhul on CORS tavaliselt juba seadistatud. GitHubi API ja WordPress.org API on avatud lugemiseks mis tahes domeenilt.
Kuidas mõjutab modaalakende kasutamine SEO-d?
AJAX-i kaudu laaditud modaalakna sisu on otsingumootoritele vähem nähtav kui staatiline HTML spetsiaalsel lehel. Reegel on lihtne: kui sisu on oluline pingerea jaoks, peaks sellel olema oma kanooniline leht otsese URL-iga. Kasuta modaalakent täiendava sisenemispunktina, mitte lehe asendusena. Googlebot on JavaScripti käivitanud alates 2019. aastast, kuid dünaamiliselt laaditud sisu indekseerimine on endiselt ebastabiilne. Parem on olla ettevaatlik ja omada staatilist versiooni.
Miks WP Post Popup suleti ja mis võiks seda asendada?
wp-post-modalplugin suleti 2023. aasta oktoobris lahendamata turvanõrkuse tõttu. Kui see on endiselt sinu saidile installitud, eemalda see viivitamatult. Asendustena kaalu Popup Makerit (tasuta, universaalne) või selles artiklis kirjeldatud kohandatud lahendust. Mõlemad variandid on turvalised ja toetatud 2026. aastal.
Kas jQuery on WordPressi modaalakna jaoks vajalik?
Ei, see pole vajalik. Kaasaegne loomulik JavaScript (ES6+) katab kõik vajalikud toimingud:
fetch()AJAX-i jaoks,classListCSS-klasside vahetamiseks jaaddEventListenerklikkide käsitlemiseks. Kuid jQuery on endiselt sügavalt integreeritud WordPressi tuuma ja enamikku teemadesse, seega on lihtsam kasutada seda, mis on juba laaditud, kui lisada veel üks raamistik.
Modaalaknad 2026. aastal: mida paigaldada ja kuidas ehitada
Kui oled selle jaotiseni jõudnud, on sul kolm valmis teed. Popup Maker on neile, kes vajavad „seadista ja unusta" lahendust. 700 tuhat aktiivset installatsiooni ei valeta: plugin on stabiilne, paindlik ja oma põhiversioonis tasuta. Bootstrap 5 Modal: kui sinu teema juba töötab Bootstrapil, kasuta loomulikku komponenti ja ära tekita lisasõltuvusi. Puhas kood on perfektsionistidele ja kõigile, kes soovivad kontrollida iga rida.
Isiklikult valin 2026. aastal teise või kolmanda tee. Modaalakende pluginad lahendavad probleemi siin ja praegu, kuid kohandatud kood lahendab selle igaveseks, ilma uuenduste, turvanõrkuste ja konfliktideta. Ja 2-5 KB 40-60 KB asemel lehe kohta on argument, mida on raske ignoreerida.
Proovi mõlemat lähenemist testi alamdomeenil ja võrdle. WordPress on püsinud 20 aastat just seetõttu, et pakub valikuvabadust, alates nullist koodist kuni valmispluginani minutiga.



