Skip to content

Kõik WordPressist, veebiarendusest — ja mitte ainult

🚀 Kuidas lisada lehe pealkiri dünaamiliselt Contact Form 7 e-kirja teemareale

🚀 Kuidas lisada lehe pealkiri dünaamiliselt Contact Form 7 e-kirja teemareale

Sinu saidil on kümmekond lehekülge kontaktivormiga ja iga kiri saabub sama teemareaga „Message from site". Millisest jaotisest külastaja kirjutas? Milliselt teenuste lehelt? Lõpuks hakkad sõnumi teksti järgi oletama.

Contact Form 7 on WordPressi vormide standard, millel on üle 10 miljoni aktiivse paigalduse. Kuid vaikimisi ei suuda see tuvastada, milliselt lehelt vorm saadeti. Kirja teema ja sisu tuleb seadistada staatiliselt, nii et mitmel lehel kasutatav sama vorm toodab identseid sõnumeid.

Dynamic Text Extension (DTX) plugin lahendab selle viie minutiga, ilma ühegi PHP reata. Lisad vormile peidetud välja ja see püüab automaatselt lehe pealkirja, URL-i või nimeosa. Seejärel väljastad selle muutuja kirja teemareal või sisus malli kaudu. Allpool on samm-sammuline seadistusjuhend nullist.

💡 Kiire ülevaade:

  • Paigalda DTX WordPressi.org kataloogist ja aktiveeri see koos Contact Form 7-ga
  • Lisa oma vormile peidetud [dynamichidden] silt koos CF7_get_post_var lühikoodiga
  • Lisa muutuja kirja teemareale või sisusse vahekaardi „Mail" kaudu
  • Testi, saates vormi kahelt erinevalt lehelt; kirjad saabuvad erinevate teemadega
  • Vajadusel lisa lehe URL või GET parameetrid sama mehhanismi abil

Samm 1: Dynamic Text Extensioni paigaldamine

Contact Form 7 Dynamic Text Extension pistikprogrammi leht WordPress.org kataloogis

Esiteks plugin ise. See on tasuta ja saadaval WordPress.org kataloogis nime all Contact Form 7, Dynamic Text Extension.

Paigaldamine on standardne: Plugins → Add New → otsi „Dynamic Text Extension" → Install → Activate. Contact Form 7 peaks sul juba aktiivne olema, kuna DTX laiendab just seda; ilma CF7ta pole sellel mingit otstarvet.

Pane tähele, et pluginat hooldatakse aktiivselt. 2026. aasta juuni seisuga on sellel 100 000+ aktiivset paigaldust, WordPress.org-is hinnang 4,5 ja ühilduvus uusima WordPressi versiooniga. Autor Chris Mav arendab ka UberMenu'd. See ei ole üks neist pluginatest, mis pärast esimest väljalaset unarusse jäetakse.

Samm 2: Peidetud välja lisamine vormile

Nüüd seadistamine Contact Form 7 sees. Ava vorm, mida soovid muuta: Contact → Contact Forms → klõpsa vormi nimel. Oled vahekaardil Form.

Kopeeri see kood ja kleebi see vormi sisusse pärast oma põhivälju, kuid enne saatmisnuppu:

1[dynamichidden page-title "CF7_get_post_var key='title'"]

Siin on selgitus, mis toimub. dynamichidden on DTX väljatüüp: külastajale nähtamatu, kuid kaasatud saatmisse. page-title on sisemine muutuja nimi (suvaline, kuid tähenduslik). Jutumärkide sees olev lühikood CF7_get_post_var key='title' tõmbab globaalse $post objekti kaudu jooksva WordPressi lehe pealkirja.

Kui vajad lehe pealkirja asemel URL-i, asenda sisemine lühikood väärtusega CF7_URL:

1[dynamichidden page-url "CF7_URL"]

Nimeosa jaoks kasuta CF7_get_post_var key='slug':

1[dynamichidden page-slug "CF7_get_post_var key='slug'"]

Võid lisada kõik kolm välja korraga ja siis näed kirjas pealkirja, URL-i ja nimeosa. Klõpsa vormiredaktori all nuppu Save.

Samm 3: Muutuja väljastamine kirja mallis

Viimane samm on Contact Form 7-le ütlemine, kuhu kogutud andmed lisada. Mine vormi sees vahekaardile Mail.

Väljale Subject lisa muutuja nimi nurksulgudes:

1[page-title]

Täielik teemarida võiks välja näha nii: Message: [page-title]. Või kui lisasid URL-i: Inquiry from page: [page-url].

Sama lähenemine töötab ka väljal Message Body. Võid lisada muutuja [page-title] malli ükskõik kuhu, enne või pärast põhisõnumi teksti:

1Submission page: [page-title]
2URL: [page-url]
3
4Message:
5[your-message]

Muutujad page-title, page-url ja page-slug on täpselt need nimed, mille määrasid eelmises sammus [dynamichidden] siltides. Need peavad täpselt ühtima.

Salvesta vorm ja testi: ava oma saidil suvalised kaks lehte, mis seda vormi sisaldavad, ja saada mõlemalt testsõnum. Kirjad saabuvad erinevate teemadega, sõltuvalt selle lehe pealkirjast, kus külastaja viibis.

GET parameetrite kasutamine

DTX oskab lugeda URL-i parameetreid, mis on kasulik, kui soovid lingi kaudu täiendavat teavet edastada. Näiteks nupp „Telli konsultatsioon" hinnakirja lehel võib linkida aadressile /contact/?plan=pro. Lühikood selle jaoks:

1[dynamichidden selected-plan "CF7_GET key='plan'"]

Kirja mallis kasuta [selected-plan]. Vorm lisab automaatselt päringustringist väärtuse pro.

Sama tehnika töötab UTM-siltide, kampaaniaidentifikaatorite ja kõigi muude parameetritega, mida URL-is edastad.

Selles videos demonstreerib plugina autor Chris Mav DTX põhiseadistust kolme minutiga, alates paigaldamisest kuni esimese dünaamilise väljani. Kui mõni ülaltoodud samm tekitab küsimusi, vaata seda: kõik tegevused on ekraanil reaalajas näidatud.

Mida teha, kui vorm kuvatakse kõigil lehtedel, kuid vajad erinevaid pealkirju

Eespool kirjeldatud põhistsenaarium katab valdava enamuse juhtumeid: üks vorm, lehe pealkiri kirja teemareal. Aga mis siis, kui sul on kümneid lehti, igaühel oma vorm ja unikaalne väljade komplekt? DTX käsitsi loomine ja seadistamine igaühe jaoks võtab aega.

Siin on kolm stsenaariumi kasvava keerukuse järjekorras:

  • Üks vorm kõigil lehtedel. Ideaalne juhtum DTX jaoks: lisa peidetud väli üks kord ja kirja teemareale ilmub [page-title]. Seadistamine võtab viis minutit.

  • Mitu erinevat vormi. Seadista DTX igas vormis eraldi, kuid kopeeri sildid vormide vahel lõikepuhvri kaudu. Peidetud väli koos CF7_get_post_var-iga töötab kõigis vormides ühtemoodi.

  • Kümneid lehti + A/B testid. Kui vajad mitte ainult lehtede eristamist, vaid ka vormikonversioonide jälgimist, kaalu Gravity Forms või WPForms kasutamist. Neil on sisseehitatud saatmisanalüütika ja tingimuslik teavituste marsruutimine. DTX ei ole siin konkurent; see lahendab konkreetse ülesande (dünaamilised väljad) ja teeb seda tasuta.

⁉️🤔 Korduma kippuvad küsimused

Kas DTX töötab uusima WordPressi versiooniga?

Jah, plugin ühildub WordPress 6.7+-ga ja saab regulaarseid uuendusi. 2026. aasta juuni seisuga annab autor uuendusi välja iga 1-2 kuu tagant, viimane neist mais 2026. Kontrolli versiooni plugina lehel, kus praegune ühilduvus on alati kirjas.

Kas ma saan lisada konkreetse lehe pealkirja, mitte jooksva lehe oma?

CF7_get_post_var tõmbab andmed globaalsest $post objektist, mis viitab lehele, kus vormi kuvatakse. Teise lehe pealkirja lisamiseks määra selle ID: CF7_get_post_var key='title' post_id='42'. Lehe ID leiad administraatoriliidesest: Pages → All Pages → liigu hiirega pealkirja kohale ja ID ilmub URL-i.

Mida teha, kui muutuja ei ilmu kirjas?

Kontrolli kolme asja. Esiteks: kas nimed ühtivad? Atribuudi väärtus [dynamichidden name ...] ja muutuja [name] mallis peavad olema identsed, kaasa arvatud tõstutundlikkus. Teiseks: kas CF7 lühikood on ümbritsetud erinevat tüüpi jutumärkidega? Topeltjutumärkide sees peavad DTX atribuudid kasutama ülakomasid ("CF7_get_post_var key='title'"). Kolmandaks: kas Contact Form 7 ise on aktiivne? Ilma selleta DTX ei tööta.

Miks kasutada peidetud välja, kui võiksin lihtsalt teemareale pealkirja trükkida?

Peidetud väli automatiseerib protsessi. Kui sul on üks vorm kümnel lehel, peaksid ilma DTX-ta looma kümme vormikoopiat erinevate teemadega või muutma iga lehe jaoks teemat käsitsi. DTX teeb selle sinu eest ära: lisa peidetud väli üks kord ja kirja teemarida vastab alati saatmise lehele.

Kas ma saan DTX-i kasutada nähtavate väljade eeltäitmiseks?

Jah, asenda dynamichidden väärtusega dynamictext või dynamicemail. Näiteks [dynamictext user-name "CF7_get_current_user key='user_nicename'"] eeltäidab välja sisselogitud kasutaja nimega. Külastaja näeb eeltäidetud väärtust ja saab seda enne saatmist muuta.

Kas plugin läheb vastuollu puhverdamisega?

Ei. DTX lisab väärtused serveri poolel lehe renderdamise ajal, nii et puhverdamise pluginad nagu WP Rocket ei mõjuta seda. Kui kasutad serveritaseme puhverdamist (Varnish, Nginx FastCGI), veendu, et vormidega lehed on puhvrist välja arvatud; vastasel juhul võib pealkiri esimese külastaja külge „kleepida".

Alusta esimesest stsenaariumist: paigalda DTX, lisa oma praegusele vormile peidetud väli ja testi kirju kahelt erinevalt lehelt. Üheksa saiti kümnest peatub siin, sest vajadust keerukama loogika järele lihtsalt ei teki.