C cenaly.com
Filloni falas

Faqja ime

Një kod i vetëm në faqen tuaj: chat, pop-up, banderolë cookie, rezervim, takime, porosi, ndihmë dhe dokumente ligjore

34 min read Hapeni këtë ekran në demo
On this page 13

Sajti im: uixhetë në sajtin tuaj

Seksioni «Sajti im» — për ata që kanë tashmë një sajt. Nuk ka nevojë të kaloni te vitrina jonë dhe të transferoni diçka: ju ngjitni në sajtin ekzistues një rresht të vetëm kodi dhe më pas aktivizoni produktet e nevojshme me çelësa (toggles) në kabinet.

Hapet te: Paneli i administratorit → Marketingu → «Sajti im» (admin.cenaly.com).

Punon në çdo platformë ku mund të ngjitet <script>: WordPress, Tilda, Wix, Shopify, Webflow, Bitrix, InSales, OpenCart, sajt me kod të vetin, konstruktor landing-esh.


Adresa e sajtit dhe kodi i instalimit#

Blloku «🌐 Sajti juaj» në kokën e seksionit të udhëheq me tre hapa: adresa → kodi në sajt → kontrolli, dhe butoni kryesor propozon gjithmonë hapin e radhës të pambyllur. I pari është adresa e sajtit tuaj (për shembull, example.com): sipas saj ne e kontrollojmë instalimin dhe ndërtojmë lidhjet e sakta në widget-e.

I dyti është kodi i instalimit. Ky është një rresht i vetëm:

<script src="https://cdn.cenaly.com/site/v1.js" data-domain="DOMENI-JUAJ" async></script>

Ngjiteni një herë — në <head> ose para </body>. Te kodi i sajtit nuk keni nevojë të ktheheni më: përbërja e widget-eve caktohet me çelësat në panel, jo me tagje në faqe. E ndezët widget-in — ai shfaqet në sajt brenda pak minutash, e fikët — zhduket.

Nëse më parë keni futur me dorë tagje të veçantë widget-esh, ata do të vazhdojnë të punojnë: ngarkuesi i vetëm i sheh dhe nuk e ngre widget-in për herë të dytë.


Instalimi në platformat e njohura#

Në dritaren «Kodi i instalimit» ka një skedë për secilën platformë — me të njëjtat hapa si më poshtë.

Çdo platformë këtu ka ankorin e vet, dhe lidhjen mund t'ia dërgoni atij që e redakton sajtin, në vend që t'ia ritregoni: #html, #google-tag-manager, #wordpress, #tilda, #wix, #shopify, #webflow, #squarespace — për shembull, /ru/docs/site-widgets#tilda.

E përbashkët për të gjitha platformat, që të mos përsëritet në çdo pikë:

  • tagu vendoset një herë për të gjithë sajtin — në shabllonin e përbashkët, jo në një faqe të veçantë;
  • te ndërtuesit (Tilda, Wix, Webflow, Squarespace) ndryshimi rri në redaktues derisa sajti të publikohet sërish;
  • kontrollohet gjithmonë sajti i publikuar, jo pamja paraprake e redaktuesit;
  • nëse para sajtit qëndron një cache ose CDN, pastrojeni: edhe vizitorit, edhe kontrollit tonë mund t'i shërbehet një kopje e ruajtur e faqes pa tagun;
  • çfarë nuk e sheh kontrolli i instalimit në këtë rast — shpjegim i veçantë më poshtë.

HTML#

Çdo sajt shabllonit të të cilit i keni qasje: i shkruar vetë, landing, gjenerator statik.

  1. Kopjoni rreshtin e kodit: Marketing → «Sajti im».
  2. Ngjiteni në <head> ose para </body> të shabllonit të përbashkët të sajtit.
  3. Nuk ka shabllon të përbashkët (faqet janë skedarë të veçantë) — ngjiteni në çdo faqe.
  4. Ngarkoni ndryshimet në server, hapni sajtin dhe shtypni «Kontrollo instalimin».

Google Tag Manager#

I përshtatshëm kur nuk keni qasje te shablloni, ndërsa GTM është tashmë i vendosur në sajt.

  1. Tags → Krijo → lloji «HTML i personalizuar».
  2. Ngjitni rreshtin e kodit, shkasi — «Të gjitha faqet», ruajeni.
  3. Shtypni «Publiko»: derisa versioni i kontejnerit të mos jetë publikuar, në sajtin e publikuar tagu nuk ekziston.

⚠️ Tagun e ngritur nga GTM «Kontrolli i instalimit» ynë nuk do ta shohë kurrë — dhe kjo nuk është gabim, por pasojë e metodës: «Çfarë nuk e sheh kontrolli i instalimit». Hapeni sajtin dhe shikojeni me sy.

WordPress#

  1. Konsola e WordPress (sajti-juaj/wp-admin), duhen të drejta administratori.
  2. Rruga e sigurt: Shtojcat → Shto → çdo shtojcë për futjen e kodit në header/footer → në cilësimet e saj ngjitni rreshtin në fushën Header → ruajeni.
  3. Rruga pa shtojcë: Pamja → Redaktuesi i skedarëve të temës → header.php (para </head> mbyllës) ose footer.php (para </body>) → «Përditëso skedarin».
  4. Hapni sajtin dhe shtypni «Kontrollo instalimin».

⚠️ Ndryshimi i skedarëve të temës prind humbet kur ajo përditësohet — për këtë paralajmëron edhe dokumentacioni i WordPress. Shtojca e futjes së kodit ose një temë bijë e mbijetojnë përditësimin. Keni një shtojcë cache (W3 Total Cache, WP Rocket e të ngjashme) — pastrojeni cache-n, përndryshe kontrolli do të shohë kopjen e vjetër të faqes.

💡 Nuk ju duhet shtojcë e veçantë për widget-et: ato i lidh një tag i vetëm. Shtojca Cenaly Consent është për diçka tjetër, ajo vendos në vendin tuaj vetëm tagun e banerit të cookies (shih Cookies dhe pëlqimi).

Tilda#

  1. Në listën e projekteve — «Cilësimet e sajtit» të sajtit përkatës (cilësimet e projektit, jo të faqes).
  2. Seksioni «Më shumë» (në disa llogari quhet «Futja e kodit») → fusha «Kod HTML për futje brenda head».
  3. Ngjitni rreshtin dhe ruajeni.
  4. Ripublikoni të gjitha faqet e projektit — pa këtë kodi mbetet vetëm në redaktues.
  5. Hapni sajtin e publikuar dhe shtypni «Kontrollo instalimin».

💡 Ju duhet tagu vetëm në një faqe — e njëjta fushë gjendet te «Cilësimet e faqes» → «Shtesë»; atëherë duhet ripublikuar kjo faqe.

Wix#

  1. Sajti duhet të jetë i publikuar, ndërsa domeni — i lidhur: ky është kusht i vetë Wix për kodin e vet.
  2. Settings (Cilësimet) → Development & integrations (Zhvillimi dhe integrimet) → Custom Code.
  3. «+ Add Custom Code» → ngjitni rreshtin, jepini fragmentit një emër të kuptueshëm.
  4. Zbatojeni në të gjitha faqet (All pages), të ngarkohet një herë, vendi i futjes — Head. Ruajeni.
  5. Shtypni Publish, hapni sajtin e publikuar dhe shtypni «Kontrollo instalimin».

⚠️ Fragmentet e kodit në Wix janë të lidhura me domenin: i caktuat sajtit një domen tjetër — fragmentet fshihen, tagu duhet futur nga e para.

Shopify#

  1. Paneli i Shopify → Dyqani online (Online Store) → Temat.
  2. Te tema përkatëse «…» → Duplicate: kopja e temës është rruga juaj e kthimit.
  3. Po aty «…» → Ndrysho kodin (Edit code).
  4. Majtas dosja Layout → skedari theme.liquid → ngjitni rreshtin para </head> mbyllës (ose para </body>) → Save.
  5. Hapni vitrinën e dyqanit dhe shtypni «Kontrollo instalimin».

⚠️ Ndryshimi i përket temës, jo dyqanit: ndërruat ose rikrijuat temën — futni tagun në të renë, përndryshe widget-et zhduken bashkë me të vjetrën. Faqet e finalizimit të porosisë në Shopify janë të mbyllura për skripte të lira të temës — widget-et janë menduar për vitrinën.

Webflow#

  1. Site settings i projektit përkatës → skeda Custom code.
  2. Fusha Head code → ngjitni rreshtin dhe ruajeni. Në këtë fushë shkruhet vetëm vetë skripti: tagjet html, head, body nuk duhen shtuar.
  3. Shtypni Publish — në redaktues dhe në pamjen paraprake kodi juaj nuk punon.
  4. Hapni sajtin e publikuar dhe shtypni «Kontrollo instalimin».

⚠️ Fushat e kodit tuaj në cilësimet e sajtit Webflow hapen në një Site plan me pagesë. Ju duhet widget-i vetëm në një faqe — faqja ka fushat e veta të kodit në cilësimet e saj.

Squarespace#

  1. Paneli i sajtit → Website → Website Tools → Code Injection.
  2. Fusha Header (shkon në <head> të çdo faqeje) → ngjitni rreshtin → Save.
  3. Hapni sajtin e publikuar dhe shtypni «Kontrollo instalimin».

⚠️ Paneli Code Injection është i disponueshëm në planet Core, Plus, Advanced dhe në një pjesë të planeve legacy të Squarespace. Blloku i kodit në faqe (Code Block) nuk e zëvendëson: ai e vendos kodin brenda një faqeje, ndërsa widget-et duhen në të gjithë sajtin.

Hapat janë verifikuar me ndihmën zyrtare të platformave. Platforma e ka riemërtuar zërin e menusë — besojini ndihmës së saj, jo neve, dhe na shkruani: do ta ndreqim.


Dymbëdhjetë widget-e#

Çdo widget është një kartelë më vete me çelës ndezjeje dhe ingranazh cilësimesh. Të dhënat që mbledhin widget-et shkojnë në seksionet e zakonshme të panelit — nuk është nevoja të hapet një «inbox i veçantë për sajtin».

Widget Çfarë sheh vizitori Ku shkojnë të dhënat Dokumentacioni
🍪 Cookies dhe pëlqimi Baneri i pëlqimit me kategori dhe ekrani i cilësimeve Regjistri i pëlqimeve, deklarata e cookies Cookies dhe pëlqimi
💬 Chat: asistenti IA dhe operatorët Flluska e chat-it në faqe Seksioni «Mysafirët» te «Chat-i i punës» — bashkë me WhatsApp, Telegram, email, Messenger/Instagram Chat me mysafirët
💡 Pop-up dhe formularë Promocione, oferta në dalje, mbledhje email-esh, kronometra Fushatat dhe statistikat e tyre Pop-up në sajtin tuaj
📅 Rezervim tavoline Butoni «Rezervo tavolinë» Seksioni «Tavolinat» — rezervimet dhe skema e sallës Rezervimet e tavolinave
🗓️ Termine online Butoni «Rezervo termin»: shërbimi → specialisti → ora Seksioni «Terminet» Regjistri i termineve
🛒 Porosi online Butoni «Porosit», shporta dhe finalizimi mbi sajtin tuaj Seksioni «Porositë» Porosi online në sajtin tuaj
📚 Qendra e mbështetjes Butoni «?» me artikujt e publikuar të ndihmës Artikujt — te «Artikuj dhe faqe» (grupi «Ndihma»), analitika e ndihmës — te «Baza e njohurive» Qendra e mbështetjes
⚖️ Dokumente juridike Lidhje ose teksti i politikës së privatësisë, i kushteve e me radhë Faqe në hosting-un tonë, ribotimi e përditëson sajtin vetë; konfigurohet drejtpërdrejt në panelin e widget-it, pa asistent Dokumente juridike
📞 Thirrje nga sajti Butoni «Telefono» — bisedë drejtpërdrejt nga shfletuesi, pa formuar numrin Seksioni «Thirrjet»: regjistrimi dhe analiza si te një thirrje e zakonshme Thirrje nga sajti
☎️ Thirrje kthyese Formulari «Më telefononi» me zgjedhjen e orës së përshtatshme Radha e thirrjeve kthyese: sistemi vetë e thërret menaxherin dhe mysafirin; kërkesat — te «Kërkesat» dhe te skeda «Thirrjet kthyese» e seksionit «Klientët» Thirrje kthyese
➕ Multibutoni Një buton i vetëm pluskues, pas të cilit gjenden njëherësh të gjitha kanalet e komunikimit Atje ku të çon kanali i zgjedhur; në panel — statistikat e klikimeve sipas kanaleve Multibutoni
📈 Vitrina e gjallë Pllakëza me numrin e porosive, rezervimeve dhe termineve për një periudhë, si dhe me vlerësimin mesatar Shfaq agregate anonime të ngjarjeve dhe vlerësimeve tuaja Vitrina e gjallë

Radha e ngarkimit nuk është e rastësishme: baneri i cookies ngarkohet i pari ndër widget-et tona. Ngarkuesi i vetëm asinkron fillimisht lexon cilësimet dhe nuk mund t'ia kalojë analitikës që sajti e ka nisur tashmë. Nëse ju duhet bllokimi para nisjes së gjurmuesve, vendosni tag-un e veçantë consent/v1.js të parin te <head>, pa async dhe defer, siç përshkruhet në artikullin për pëlqimin. Multibutoni vjen pas widget-eve që grumbullohen, ndërsa «Vitrina e gjallë» — e fundit: pllakëzat e saj marrin parasysh butonat në të njëjtin cep.

Baneri i cookies në cenaly.ru ka kufizime: regjistri i pëlqimeve dhe CSV-ja ende nuk mblidhen, skaneri i cookies nuk është i disponueshëm, deklarata mbahet manualisht. Kur konfigurimi nuk arrihet, versioni aktual e heq bllokimin e gjurmuesve; pas instalimit kontrolloni banerin dhe kërkesat faktike të faqes. Kushtet e plota — te Cookies dhe pëlqimi.

Qendra e mbështetjes shfaq artikujt e publikuar, të cilët duhen përgatitur në seksionin «Artikuj dhe faqe» ose duhen publikuar nga baza e njohurive. Butoni nuk i krijon vetë artikujt. Në analitikën e ndihmës, ngjarjet e faqes brenda këtij paneli i përkasin burimit «sajt»; burimi «widget» shënon skedën e ndihmës në chat.

Dokumentet juridike së pari duhen publikuar në hosting-un tonë. Widget-i i shfaq versionet e publikuara si lidhje, në një dritare ose si tekst në faqe; ribotimi në panel i përditëson ato. Ky nuk është ndjekje automatike e ndryshimeve të legjislacionit.

Multibutoni nuk është thjesht një listë lidhjesh: ai ka një flluskë ftese («Keni ndonjë pyetje?»), kushte shfaqjeje (në cilat faqe, pas sa sekondash, vetëm në telefon apo kudo), një mesazh të parë të gatshëm për aplikacionet e mesazheve dhe statistikat e veta të klikimeve sipas kanaleve.

«Vitrina e gjallë» shfaq prova sociale mbi të dhënat tuaja — porositë, rezervimet dhe terminet — dhe e bën këtë ndershëm: në pllakëz nuk ka emra e numra telefoni, ngjarjet janë të agreguara, ndërsa ato të vjetruara pushojnë së shfaquri sipas kalendarit të lokalit (një lokal i mbyllur dje nuk «shet» porositë e djeshme).

Te kartela «Pop-up dhe formularë», pranë çelësit dhe ingranazhit, qëndron butoni «✨ Krijo nga një shabllon»: ai hap po atë dritare cilësimesh të widget-it, por menjëherë si galeri skenarësh të gatshëm — dhe nuk ruan asgjë derisa të shtypni «Gati».

Paneli «Dokumente juridike» nuk të dërgon më te një asistent me pesë hapa: shteti, grupi i dokumenteve, pyetjet për veprimtarinë tuaj, të dhënat e biznesit dhe gjuha ndodhen në një ekran të vetëm, vetëplotësimi dhe pamja paraprake janë të palosura, poshtë — numëruesi «Dokumente për publikim: N». Opsioni që bie ndesh me përgjigjet e dhëna tashmë është i bllokuar, me shpjegim përse pikërisht.

Dritaret e hapura të hub-it jetojnë në adresën e faqes: ingranazhi i widget-it shkruan ?widget=<widget>, dritarja e kodit të instalimit — ?panel=install. Kjo do të thotë se lidhjen për cilësimet e një widget-i konkret mund t'ia dërgoni një kolegu, dhe ajo i mbijeton F5-ës dhe butonit «prapa».

Disa widget-eve u duhet më shumë se çelësi — u duhet edhe përmbajtje:

  • Terminet online do të shfaqen në sajt kur në menu të ketë të paktën një artikull me llojin «Shërbim» dhe të jetë i aktivizuar rezervimi (i njëjti çelës si te rezervimi i tavolinës);
  • Qendra e mbështetjes ndizet menjëherë me çelës, por pa artikuj të publikuar do të hapë një faqe ndihme bosh — te cilësimet e widget-it duket sa artikuj janë publikuar.

Kufizimet e rezervimit. Aktualisht widget-i i rezervimit të tavolinës e konverton datën dhe orën e zgjedhur në zonën kohore të shfletuesit të mysafirit. Për një vizitor nga një zonë tjetër, ora në regjistër mund të ndryshojë nga ora e pritur e lokalit — kontrollojeni gjatë konfirmimit. Edhe mesazhi për dërgimin e kërkesës nuk do të thotë gjithmonë se serveri e ka konfirmuar tashmë rezervimin. Nëse terminet online njoftojnë për vonesë në konfirmim, së pari kontrolloni regjistrin e termineve: një përpjekje e re mund të krijojë dublikat.

Kontrolli i çaktivizimit. Pasi ta fikni widget-in, kontrolloni sajtin dhe rihapni cilësimet pas përditësimit të të dhënave. Në versionin aktual çelësi mund të fiket lokalisht, ndërsa ndezja e mëparshme të mbetet e ruajtur në server. Nëse duhet ndalur urgjentisht një widget i veçantë, hiqni tag-un e tij individual ose drejtojuni mbështetjes; heqja e tag-ut të përbashkët ndal njëherësh të gjithë grupin që ai ngarkonte.

Mbi butonat e çdo kartele ndodhet mini-statistika e 7 ditëve: shfaqjet, hapjet dhe një numër i tretë sipas kuptimit të widget-it (kërkesa, porosi, rezervime, termine, biseda, dialogë, klikime). «—» do të thotë se të dhëna ende nuk ka fare, «0» — telemetria ekziston, por ngjarje nuk pati; «Më shumë →» të çon te paneli «Widget-et e sajtit».

Në dritaren e cilësimeve të porosisë online ka edhe një buton tjetër për sajtin e jashtëm — «🔔 Njofto kur të rikthehet në stok»: ju zgjidhni produktin dhe variantin nga katalogu juaj, shënoni butonin në faqen e produktit të shitur, ndërsa mysafiri lë email-in, e konfirmon atë me një lidhje dhe merr një letër të vetme kur produkti kthehet në gjendje. Katalogun e huaj nuk e lexojmë dhe stokun nga faqja e huaj nuk e marrim — produkti lidhet manualisht. Më shumë — në artikullin Porosi online në sajtin tuaj.


Formularët që i keni tashmë në sajtin tuaj#

Blloku «📝 Formularët që i keni tashmë në sajtin tuaj» nën rrjetën e kartelave është për rastin «formulari i kërkesës në sajt tashmë ekziston dhe askush nuk do ta ndryshojë». Ne nuk e zëvendësojmë dhe nuk e vonojmë: formulari dërgohet te backend-i juaj si më parë, ndërsa një kopje e kërkesës bie në panel.

Rregulli është një selektor CSS i formularit, adresat e fushave «emri / telefoni / email-i» (si vlerë mund të jetë edhe thjesht emri i fushës, për shembull phone, edhe selektori input[name="tel"]), maska faqesh jo të detyrueshme dhe një çelës. Rregulla për lokacion — deri në 10, nga një rregull për çdo formular. Një rregull pa selektor formulari ose pa telefon a email nuk mund të ndizet — nuk ka çfarë të mbledhë. Çdo rresht ka butonin «Kontrollo»: serveri lexon faqen dhe përgjigjet nëse u gjet formulari, cilat fusha të rregullit ndodhen në të dhe cilët janë në përgjithësi emrat e fushave të tij.

Çfarë saktësisht niset. Saktësisht tri fusha — emri, telefoni, email-i — plus adresa e faqes pa parametra dhe pa spirancë. Ajo që shkruhet para shtypjes së «Dërgo» nuk lexohet, kontrolle dhe vonesa tonat nuk shtojmë, ndërsa një formular që nuk e kalon kontrollin e vet të shfletuesit nuk krijon kërkesë. Serveri e shtyp përsëritjen e të njëjtit formular me të njëjtin kontakt brenda 10 minutash; në dërgime të njëkohshme ose në dështim të shkrimit të shënuesit është i mundur një dublikat. Formularët e widget-eve tona nuk dëgjohen.

Interceptimi e dërgon kopjen e kërkesës pa pritur përgjigjen e serverit. Në rast ndërprerjeje të rrjetit ose bllokimi të kërkesës nga shfletuesi, kopja mund të mos mbërrijë: radhë dorëzimi pas rikthimit të lidhjes tani nuk ka. Përsëritja me të njëjtin kontakt në të njëjtën faqe shtypet gjithashtu derisa ajo të rifreskohet. Shënimi për dërgimin do të thotë përpjekje interceptimi, ndërsa mbërritjen kontrollojeni te inbox-i.

Ku t'i kërkoni. Seksioni «Kërkesat» dhe skeda «Kërkesat» e qendrës së kontakteve — si grup «Formularët në sajt: ». Çdo kërkesë e tillë ka një shënim të ndershëm: ne shohim shtypjen e «Dërgo», jo fatin e të dhënave në backend-in tuaj.

⚠️ Butoni «Kontrollo» e analizon HTML-in pa shfletues: një formular që e vizaton JavaScript-i ai nuk do ta shohë — ndërsa interceptimi në shfletuesin e mysafirit do ta shohë. Paneli e thotë këtë hapur.


Lidhje dhe QR për veprime#

Blloku «🔗 Lidhje dhe QR për veprime» nën rrjetën e kartelave krijon një lidhje që hap në sajtin tuaj një veprim konkret: https://sajti-juaj/#cenaly=book — formularin e rezervimit, #cenaly=appointment:<shërbimi> — terminin drejt e për një shërbim, #cenaly=order:<produkti> — kartelën e produktit, e po ashtu chat-in, thirrjen kthyese, ndihmën, një dokument (legal:<lloji>) dhe erashkën e multibutonit. Një lidhje e tillë zakonisht printohet si kod QR: në tavolinë, në faturë, në paketim, në reklamën offline.

Si ta ndërtoni: zgjidhni veprimin, nëse doni — edhe objektin konkret (një shërbim ose artikull nga menuja e publikuar, një dokument i publikuar) dhe «ku po e vendosni» — nga kjo varen etiketat UTM për analitikën tuaj (utm_source=qr&utm_medium=<vendi>&utm_campaign=<veprimi>; ne nuk i lexojmë). Në dalje — një lidhje me butonin «Kopjo» dhe një kod QR, që shkarkohet në PNG dhe SVG. Baza e lidhjes është adresa e sajtit tuaj, ndërsa nëse ajo nuk është dhënë — vitrina jonë. Te kartela e çdo widget-i ndodhet butoni i shkurtër «🔗 Lidhje» me veprimin tashmë të zgjedhur.

Përse spirancë # dhe jo parametër ?: CMS-të e huaja, plugin-et e cache-it dhe CDN-të i presin parametrat e panjohur dhe e ndryshojnë adresën kanonike, ndërsa spirancën shfletuesi nuk ia dërgon serverit — ajo mbërrin e garantuar te kodi ynë. Atë e ekzekuton tag-u i vetëm: ai e lexon spirancën një herë gjatë ngarkimit, e heq nga adresa dhe hap widget-in e duhur sapo ai të jetë ngritur. Tag-et individualë të widget-eve nuk e lexojnë spirancën.

Blloku paralajmëron para se të printohet tirazhi: widget-i i veprimit është i fikur, kodi i instalimit në sajt nuk u gjet gjatë kontrollit të fundit. Lidhja nuk e ndez atë që është e fikur dhe nuk e zëvendëson një dokument që mungon — në një rast të tillë ajo thjesht nuk bën asgjë: në një sajt të huaj kjo është më mirë se një gabim. E njëjta lidhje punon edhe në vitrinën tonë të lokalit, përfshirë ndihmën, dokumentet dhe multibutonin — ngjitësja printohet një herë, ndërsa sajti mund të ndryshojë.


Widget-i i regjistrimit online në detaje#

Cilësimet — kartela «Regjistrimi online» → ingranazhi: ngjyra e butonit, teksti i tij, cepi i ekranit dhe gjuha. Aty poshtë cilësimeve gjendet edhe rreshti i gatshëm i kodit vetëm për këtë widget — për rastin kur vendosni vetëm atë.

Gjuha. Si parazgjedhje — auto: widget-i flet në gjuhën e faqes ku ndodhet dhe njeh 45 gjuhë. Ngarkohet vetëm fjalori që u desh, prandaj kjo nuk ndikon në shpejtësinë e faqes. Nga lista mund të fiksoni fort një gjuhë të vetme — për shembull, nëse faqja është dygjuhëshe, ndërsa rezervimet i doni në një gjuhë.

Lidhje për një shërbim ose specialist konkret. Tag-ut të widget-it mund t'i shtoni atribute — mysafiri bie drejt e te hapi i duhur:

Atributi Çfarë bën
data-service="id i shërbimit" shërbimi është zgjedhur paraprakisht — butoni «Rezervo» pranë përshkrimit të shërbimit në faqen tuaj. Identifikuesi duket pranë artikullit në seksionin «Menu»
data-master="id i specialistit" specialisti është zgjedhur paraprakisht — për faqen e një specialisti konkret; identifikuesi i specialistit përkon me identifikuesin e punonjësit
data-open="true" paneli i rezervimit hapet vetë, pa shtypur butonin — për një faqe të veçantë «Rezervo»

Një identifikues i vjetruar (shërbimi u riemërtua, specialisti u largua) nuk e prish widget-in: ai thjesht shfaq zgjedhjen e zakonshme që nga hapi i parë.

Më pak hapa deri te rezervimi:

  • një shërbim i vetëm ose një specialist i vetëm i përshtatshëm — ekrani i tepërt nuk shfaqet;
  • çipi «⚡ Më e afërta: sot 17:30» rezervon me një prekje, ndërsa kalendari hapet vetë te dita e parë me orë të lira;
  • emri, telefoni dhe e-mail-i mbahen mend në pajisjen e mysafirit: në rezervimin e radhës fushat janë tashmë të plotësuara, ndërsa lidhja «Nuk jam unë» i fshin ato;
  • në telefon paneli hapet në të gjithë ekranin, butoni i rezervimit nuk fshihet nën tastierë;
  • widget-i mund të përdoret me tastierë dhe lexohet saktë nga programi i leximit të ekranit.

E-mail-i. Fusha e-mail është opsionale; nëse mysafiri la adresën — merr një letër me detajet e vizitës dhe lidhjen «Menaxho rezervimin», me të cilën e zhvendos ose e anulon vetë vizitën. Detajet — në seksionin Ditari i takimeve.

Çfarë dha widget-i. Në ditarin e takimeve butoni «🌐 Widget-i në faqe» tregon hinkën për 7, 30 ose 90 ditë: sa herë u pa butoni, sa mysafirë hapën panelin, arritën te kontaktet dhe u regjistruan, sa rezervime u humbën për shkak të orës së zënë. Ndërsa vetë rezervimet nga faqja kanë shenjën «Nga faqja».


Kontrolli i instalimit#

Butoni «Kontrollo instalimin» hap sajtin tuaj dhe lexon HTML-in burimor të faqes. Në përgjigje:

  • «Kodi i widget-eve u gjet në sajt» — tag-u i vetëm është në vend;
  • «U gjetën vetëm tag-e të veçanta widget-esh» — punojnë inserte të vjetra individuale, tag i vetëm nuk ka;
  • «Kodi në sajt i përket një lokacioni tjetër» — te tag-u ndodhet një data-domain i huaj (gabim i shpeshtë kur ka disa lokale);
  • «Në këtë faqe nuk ka kod widget-esh» — tag-u nuk duket.

⚠️ Kontrolli lexon HTML-in burimor të një faqeje të vetme. Nëse tag-un e fut tashmë në shfletues Google Tag Manager ose ndonjë skript tjetër, kontrolli nuk do ta shohë — kjo nuk është gabim. Çfarë tjetër mbetet jashtë kufijve të metodës është mbledhur më poshtë te «Çfarë nuk e sheh kontrolli i instalimit».

Një herë në javë i njëjti kontroll përsëritet vetë — për lokacionet që kanë të shënuar adresën e sajtit, kanë të ndezur të paktën një widget dhe te të cilat kontrolli i kaluar e gjeti tag-un. Tag-u vdes në heshtje — sajti kaloi në një temë të re, kontraktori publikoi një strukturë faqeje pa insertin, plugin-i i cache-it hodhi jashtë skriptin «e tepërt» — dhe më parë kjo vihej re vetëm nga fakti që kërkesat mbaronin. Tani kalimi «tag-u ishte → tag-u nuk është» vjen si kartelë në chat-in e punës (jo më shpesh se një herë në javë për lokacion) dhe si hap i tretë i kuq në bllokun «Sajti juaj». Një sajt që nuk u hap (timeout, gabim serveri) nuk konsiderohet defekt — do ta kontrollojmë javën tjetër; tag-un e futur përmes Google Tag Manager kontrolli nuk e sheh kurrë, prandaj as alarm i rremë për të nuk do të ketë.

I njëjti analizim është i disponueshëm publikisht, pa hyrë në panel — faqja «Kontrolli i sajtit»: shkruani adresën dhe ajo do të lexojë HTML-in e faqes e do t'ju tregojë numëruesit dhe pikselët një nga një, a ka baner pëlqimi (i yni, i huaj apo asnjë) dhe a duket tag-u ynë me widget-et e ndezur. Me të është e lehtë ta kontrolloni sajtin para lidhjes dhe t'ia jepni lidhjen zhvilluesit ose klientit.

Nën kartelat e widget-eve në seksion ka edhe dy blloqe: «Vitrinë me kodin tuaj (Headless)» — të dhënat, API dhe webhook-et për rastin kur sajtin e shkruan zhvilluesi juaj dhe widget-et tona nuk i duhen — dhe «E avancuar: një tag i veçantë për çdo widget» me tag-e individuale të gatshme. Pra, tag-un individual mund jo vetëm ta «sillni nga e kaluara», por edhe ta merrni po këtu.

Çfarë nuk e sheh kontrolli i instalimit#

Metoda e kontrollit është e thjeshtë dhe e ndershme: një kërkesë e vetme për HTML-in burimor të një adrese, pa shfletues. Ne lexojmë atë që ktheu serveri dhe kërkojmë në kod <script src="…"> me shtigjet tona. Nga kjo rrjedh e gjithë lista e asaj që ai nuk di ta bëjë — dhe kjo nuk është defekt, por kufi i metodës.

Rasti Çfarë do të thotë kontrolli Si të bindeni vërtet
Tag-un e fut Google Tag Manager ose ndonjë skript tjetër tashmë në shfletues «nuk ka kod» Hapni sajtin: widget-i ose është, ose nuk është. Te mjetet e zhvilluesit, skeda Network, filtri site/v1.js
Faqe tjetër e sajtit: tag-u ndodhet në shabllonin e faqes kryesore, por jo në faqet e blogut apo të katalogut përgjigje për atë adresë që është vendosur në fushën «adresa e sajtit» Shkruani në fushë adresën e plotë të faqes së brendshme dhe shtypni sërish kontrollin
SPA (React, Vue dhe të ngjashme me render në klient): kodin e faqes e ndërton JS tashmë në shfletues «nuk ka kod», edhe kur widget-i në sajt punon Shikojeni me sy. Tag-un është më e sigurt ta vendosni në shabllonin e serverit ose te index.html, jo brenda aplikacionit
Kalimet brenda SPA-së pa rifreskim faqeje asgjë: kontrolli nuk kliko nëpër sajt dhe sheh vetëm përgjigjen e parë të serverit Kalojini seksionet vetë — widget-i jeton në faqe dhe i mbijeton kalime të tilla
Sajti përgjigjet vetëm me http://, është i mbyllur me login, me filtër IP ose me mbrojtje antibot gabim i kontrollit Kontrolli shkon vetëm me https dhe pa autorizim; një sajt të tillë shikojeni vetë
Faqe shumë e madhe lexohen 512 KB e para të kodit Tag-u në shabllon vendoset te <head> — atje ai bie në fillim të faqes
Më shumë se tre ridrejtime radhazi gabim Shkruani adresën përfundimtare
Cache-i i platformës ose CDN kthen një kopje të ruajtur pa tag «nuk ka kod» Pastroni cache-in dhe përsërisni
Tag-u është, por widget-i nuk punon (nuk është paguar, çelësi është i fikur, kanë vepruar kushtet e shfaqjes) «kodi u gjet» Kjo është çështje tjetër — shih «Zgjidhjen e problemeve» më poshtë

Çfarë e sheh mirë kontrolli: a ndodhet tag-u ynë në kodin burimor, a është i vetëm apo një grup tag-esh individualë dhe i kujt është data-domain te ai — domethënë kap gabimin më të shpeshtë «kopjova kodin nga lokacioni fqinj».

Pikërisht i njëjti kufi vlen për faqen publike «Kontrolli i sajtit»: edhe ajo lexon HTML-in burimor dhe nuk ekzekuton skripte. Cookies-at realë dhe ajo që ngarkohet tashmë në shfletues mblidhen vetëm nga skaneri CMP — shih Cookies dhe pëlqimi.


Zgjidhja e problemeve#

Listë e përbashkët për të dymbëdhjetë widget-et — nga shkaku më i shpeshtë te ata të rrallë. Veçoritë e një widget-i konkret përshkruhen në artikullin e tij.

1. «Kontrolli i instalimit» thotë se kodi nuk ekziston. Tagu nuk është futur, është futur jo në të gjitha faqet e shabllonit ose sajti pas futjes nuk është publikuar (Tilda, Wix, Webflow kërkojnë publikim të përsëritur). Kontrolloni edhe adresën e sajtit në kokën e seksionit: kontrolli shkon pikërisht te ajo — dhe vetëm te ajo, me një faqe të vetme. Para se të ndreqni diçka, krahasohuni me listën «Çfarë nuk e sheh kontrolli i instalimit»: gjysma e rasteve «kodi nuk ekziston» nuk është prishje e sajtit, por kufi i metodës.

2. Kodi në sajt i përket një lokacioni tjetër. Te tagu qëndron një data-domain i huaj — gabim i shpeshtë kur lokalet janë disa dhe kodi është kopjuar nga kartela fqinje. Merreni kodin duke pasur të zgjedhur lokacionin e duhur.

3. Kontrolli nuk e sheh tagun e futur përmes Google Tag Manager. Kjo nuk është gabim. Kontrolli lexon HTML-in burimor të faqes — atë që dërgoi serveri — ndërsa GTM e vendos tagun vetëm në shfletues. Hapeni sajtin dhe shikojeni me sy: widget-i ose është, ose nuk është. Lista e plotë e asaj që metoda e kontrollit nuk e tregon (GTM, faqja e dytë e sajtit, SPA, sajti i mbyllur) — «Çfarë nuk e sheh kontrolli i instalimit».

4. Ndryshimet nuk u shfaqën në sajt. Skedarët e widget-eve shpërndahen përmes CDN me cache prej 5 minutash. Pas ndezjes së çelësit ose redaktimit të cilësimeve prisni disa minuta dhe rifreskoni faqen duke pastruar cache-n (Ctrl+F5). Nëse shfletuesi ngulmon të tregojë të vjetrën — kontrolloni në regjimin inkognito.

5. Widget-i është i ndezur, por në faqe nuk duket. Kaloni nëpër listën:

  • widget-i është me pagesë dhe nuk është paguar — shtesa e papaguar pritet nga të dhënat e sajtit në server, prandaj ajo nuk arrin te faqja edhe me çelësin e ndezur;
  • widget-i ka kushte shfaqjeje (multibutoni, telefonata e kthimit, «Vitrina e gjallë»): maska e faqeve, vonesa, filtri i pajisjes ose orari mund ta kenë prerë pikërisht këtë faqe dhe këtë çast;
  • widget-it i mungon përmbajtja: regjistrimi online shfaqet kur në menu ka të paktën një artikull-shërbim dhe është ndezur rezervimi; qendra e mbështetjes pa artikuj të publikuar do të hapë një panel bosh; multibutoni pa asnjë kanal nuk vizatohet fare; «Vitrina e gjallë» hesht derisa numrat janë nën prag;
  • multibutoni e thithi butonin e fqinjit: nëse në erashkën e tij ka zërin «Hap chat-in» ose «Telefonatë kthimi», butonat e vet të këtyre widget-eve fiken me qëllim — ata tani janë brenda erashkës.

6. Në cepin e ekranit shtyhen disa butona. Ndizni multibutonin dhe shtoni në erashkën e tij veprimet e widget-eve të duhur — butonat e tyre të veçantë do të fiken vetë.

7. Widget-et mungojnë në sajtin e bërë me ndërtuesin tonë. Atje kodi i instalimit është i qepur në shabllon, dhe blloku me kodin në panel nuk shfaqet — kjo është normale. Kontrolloni çelësat e widget-eve: sajti i ri i gjeneruar vjen me banerin e cookies, dokumentet ligjore dhe chat-in të ndezur, pjesa tjetër ndizet me dorë. Merrni parasysh edhe dallimet e sipërfaqeve: multibutoni në vitrinën tonë shfaqet vetëm me çelësin e veçantë «Shfaqe edhe në vitrinën tonë» (ai thith butonat nativë të faqes), ndërsa «Vitrina e gjallë» punon me të njëjtin çelës si në sajtin e huaj.


Sajt me Content-Security-Policy#

Nëse serveri juaj dërgon kokën Content-Security-Policy, shfletuesi vendos vetë çfarë i lejohet të ngarkojë kodit tonë të instalimit. Vetë tagu në këtë rast punon — ju e keni lejuar — ndërsa gjithçka që ai tërheq mund të bllokohet në heshtje: nga jashtë kjo duket si «widget-et u zhdukën». Në konsolën e shfletuesit në këtë rast duken rreshta të tipit Refused to load the script.

Këputja lind saktësisht në një regjim: politika i lejon skriptet vetëm me nonce njëpërdorimsh, pa 'strict-dynamic' dhe pa hostin e CDN-së sonë në listë. Më poshtë — tri mënyra për ta mbyllur këtë, duke nisur nga më e thjeshta.

Varianti 1 — nonce te tagu ynë#

Serveri juaj gjeneron një vlerë të re të rastësishme për çdo përgjigje, e vendos atë edhe te koka, edhe te tagu:

Content-Security-Policy: script-src 'nonce-r4nd0m...'
<script nonce="r4nd0m..." src="https://cdn.<brendi juaj>/site/v1.js" data-domain="LOKACIONI-JUAJ" async></script>

Tagu i vetëm lexon nonce-in e tagut të vet dhe ia përcjell çdo bundle-i widget-i që fut — ato e kalojnë kontrollin script-src. Për kërkesat, stilet dhe faqet e ngulitura duhen gjithashtu lejimet nga tabela më poshtë. Forma e veçantë «Njoftomë kur të jetë në stok» ka një kufizim, të përshkruar më poshtë.

⚠️ Një vlerë e përhershme, e njëjtë në të gjitha përgjigjet, nuk është nonce: atë e kopjon në skriptin e vet kushdo që ia doli ta fusë kodin në faqe. Gjenerojeni për çdo përgjigje, në server.

Varianti 2 — 'strict-dynamic'#

Content-Security-Policy: script-src 'nonce-r4nd0m...' 'strict-dynamic'

Me 'strict-dynamic' besimi ndaj tagut tonë shtrihet edhe te skriptet që ai fut, përfshirë pjesët dembele të «Popap-eve të mençur». Ky është shembull i direktivës për skriptet: nëse keni kufizime default-src, connect-src, style-src ose frame-src, shtoni lejimet përkatëse nga tabela më poshtë.

Varianti 3 — lista e hosteve#

Nëse nonce-i nuk ju është i disponueshëm (kjo ndodh te ndërtuesit e sajteve), lejoni hostet tona shprehimisht:

Content-Security-Policy: script-src https://cdn.<brendi juaj>;
  connect-src https://cdn.<brendi juaj> https://api.<brendi juaj> wss://ws.<brendi juaj> https://o.<brendi juaj>;
  img-src https://cdn.<brendi juaj> https://i.<brendi juaj>;
  frame-src https://cdn.<brendi juaj> https://lokacioni-juaj.<brendi juaj>;
  style-src 'unsafe-inline'

Snippet-i i gatshëm me hostet e brendit tuaj dhe të lokacionit tuaj të vendosur gjendet në panel: Marketing → Sajti im, blloku «Sajt me Content-Security-Policy?» nën kodin e instalimit — po aty është edhe butoni «Kopjo» dhe shënimi se cilit widget i duhet secili host.

Kujt i duhet çfarë:

Direktiva Kujt i duhet
script-src Të gjitha widget-eve: bundle-t nga CDN-ja jonë
connect-src Të gjithëve: kërkesat, rezervimet, regjistrimet, porositë, telemetria; chat-it — websocket-i dhe bucket-i i sinjaleve
img-src Porosisë: fotografitë e produkteve dhe pjatave
frame-src Porosisë, qendrës së mbështetjes dhe dokumenteve ligjore: ato e hapin vitrinën tuaj në <iframe>
style-src Të gjithëve: dritaret e widget-eve futin <style> në Shadow DOM-in e vet

Çfarë nuk e mbulon kjo — ndershëm#

  • Stilet. Dizajni i dritareve është <style> inline brenda Shadow DOM, prandaj duhet style-src 'unsafe-inline'. Te script-src kjo nuk ndikon: për skriptet ne nuk kërkojmë 'unsafe-inline' dhe 'unsafe-eval'.
  • Pjesët dembele të widget-eve (popap-et e zgjeruara dhe foletë e «Popap-eve të mençur», porta e moshës e banerit të pëlqimit, shiriti mobil i multibutonit, kapja e formave) ngarkohen nga ngarkuesit e vet dhe nonce-in e marrin — ato kalojnë të njëjtin kontroll si bundle-i kryesor. Përjashtim bën forma e butonit «Njoftomë kur të jetë në stok» (stock/form-v1.js): ky është një tag i veçantë jashtë ngarkuesit të vetëm, dhe nonce-in ai ende nuk e bart — me një politikë vetëm me nonce, pa hostin e CDN-së sonë, forma e abonimit nuk do të hapet.
  • Ndërtuesit e sajteve (Tilda, Wix e të ngjashëm) e dërgojnë kokën vetë, dhe një nonce njëpërdorimsh për tagun tuaj atje nuk e shkruani dot. Mbetet varianti me listën e hosteve — nëse platforma në përgjithësi lejon të redaktohet politika.
  • Telefonata nga sajti e transmeton zërin me rrjedhë WebRTC dhe nuk ngarkon skedarë mediatikë, prandaj media-src nuk i duhet; mikrofonin e lejojnë Permissions-Policy dhe HTTPS, jo CSP.

Nxjerrja e widget-it si seksion i veçantë#

Nëse njëri nga widget-et është produkti juaj kryesor (për shembull, përdorni vetëm popup-e ose vetëm banner cookie-sh), rruga «Marketingu → Faqja ime → karta → ikona e rrotës» është shumë e gjatë. Në kartë ka një buton «Nxirre në shiritin anësor» — widget-i do të marrë pikën e vet të menusë dhe do të hapet me një klik.

Ky është një cilësim i ndërfaqes suaj: kontrollon vetëm dukshmërinë e seksionit, jo funksionimin e widget-it në faqe.


Çfarë është falas dhe çfarë është shtesë me pagesë#

Një pjesë e widget-eve hyn në abonim, një pjesë lidhet si shtesë në seksionin «Shtesat»: me pagesë janë shënuar Rezervimi, Popap-et dhe format, Qendra e mbështetjes dhe Dokumentet ligjore — në kartelë qëndron çipi «💳 Shtesë me pagesë».

Widget-i me pagesë ndizet pas blerjes. Shtypja e çelësit te një widget i papaguar nuk e ndez atë, por hap dritaren e pagesës pikërisht në seksion; pas pagesës widget-i ndizet vetë. Çipi «💳 Shtesë me pagesë» te një widget i papaguar është gjithashtu buton pagese, ndërsa te një i paguar tashmë ai të çon në katalog për të parë abonimin. Qasja varet nga blerja në fuqi. Ndryshimi i abonimit dhe përditësimi i cilësimeve të sajtit janë veprime të veçanta: nëse pas blerjes widget-i nuk u shfaq, kontrolloni çelësin dhe ruani cilësimet e lokacionit. Pesë minutat e cache-it numërohen nga publikimi i të dhënave të përditësuara; vetë ndryshimi i statusit të abonimit tani nuk e garanton një publikim të tillë.

Në sajtin e bërë me ndërtuesin tonë, «Dokumentet ligjore» dhe baneri i cookies janë falas. Në kartelat e tyre, në vend të «me pagesë», qëndron çipi «🎁 Përfshihet në sajt», dhe dritarja e pagesës nuk shfaqet fare: ky nuk është upsell, por kushti me të cilin sajti përdoret ligjërisht. Sajti i ri i gjeneruar vjen menjëherë me banerin e cookies, dokumentet ligjore dhe chat-in të ndezur. Në sajtin e huaj shtesa «Dokumentet ligjore» paguhet veçmas. Baneri i cookies në hub-in aktual nuk hyn në listën e katër widget-eve me pagesë.

Tarifat dhe pagesa — në seksionet Dyqani i aplikacioneve dhe Abonimi.


Seksione të lidhura#


Pyetje të shpeshta#

A duhet të heq dorë nga sajti im? Jo. Widget-et rrojnë përsipër sajtit tuaj, strukturën dhe hostimin nuk i ndryshoni.

Sa tagje duhen futur, nëse widget-et janë disa? Një. Përbërjen e widget-eve e caktojnë çelësat në panel.

A do ta ngadalësojë widget-i sajtin? Ngarkuesi lidhet në mënyrë asinkrone (async) dhe nuk e bllokon vizatimin e faqes; çdo widget ngarkohet me një skedar të vogël të veçantë dhe vetëm nëse është i ndezur. Widget-i i fikur nuk shkarkohet fare.

A do ta prishë widget-i strukturën e faqes? Jo. Çdo widget vizatohet në një kontejner të izoluar (Shadow DOM): stilet e sajtit tuaj nuk rrjedhin brenda widget-it, dhe stilet e widget-it — jashtë. Përjashtim me qëllim është widget-i i porosisë online: ai posaçërisht i vendos butonat «Në shportë» në strukturën tuaj, dhe kjo konfigurohet me pamje paraprake (shih Porosia online në sajtin tënd).

Në cilën gjuhë do të flasë widget-i? Ai shikon gjuhën e faqes: së pari atributin data-lang te tagu, nëse ju e keni caktuar, pastaj lang e faqes suaj HTML, pastaj gjuhën e shfletuesit të mysafirit, dhe në rastin ekstrem — anglishten. Fjalorët janë të madhësive të ndryshme: baneri i cookies, widget-i i regjistrimit online dhe dritarja e chat-it njohin 45 gjuhë (etiketat e chat-it vijnë me një pako të veçantë gjuhësore sipas gjuhës së faqes), te të tjerët janë të ngulitura anglishtja, rusishtja, gjeorgjishtja dhe turqishtja, me rënie te anglishtja. Etiketat e butonave dhe ftesat i caktoni vetë — me një rresht të veçantë për secilën gjuhë të sajtit.

Ku ruhen të dhënat që mbledhin widget-et? Në renë e brendit tuaj: te cenaly.com — AWS, te cenaly.ru — Yandex Cloud; të dhënat e lokaleve ruse mbeten në Rusi. Kërkesat, porositë, rezervimet dhe bisedat shkojnë në panelin tuaj, ndërsa në CDN-në publike nisen vetëm cilësimet e widget-eve dhe ajo që gjithsesi është publike (menuja, orari i punës, dokumentet e publikuara, numrat e anonimizuar të «Vitrinës së gjallë»).

Unë kam disa lokale — si të veproj? Widget-et konfigurohen për një lokacion: zgjidheni atë në listën lart në seksion dhe merrni kodin e tij të instalimit. Çdo sajt ka data-domain-in e vet.

A mund t'i vendos widget-et në disa sajte të ndryshme? Po, tagu i një lokacioni mund të futet në disa faqe ose sajte — të dhënat do të vijnë te një lokacion i vetëm.

Was this article helpful?