{"id":14370,"date":"2019-07-09T11:06:03","date_gmt":"2019-07-09T09:06:03","guid":{"rendered":"https:\/\/www.dase-analytics.com\/blog\/?p=14370"},"modified":"2021-10-26T13:14:20","modified_gmt":"2021-10-26T11:14:20","slug":"gtm-tipy-02-formatovanie-hodnot-premennych","status":"publish","type":"post","link":"https:\/\/www.dase-analytics.com\/blog\/sk\/gtm-tipy-02-formatovanie-hodnot-premennych\/","title":{"rendered":"GTM Tipy #02: Form\u00e1tovanie hodn\u00f4t premenn\u00fdch"},"content":{"rendered":"<p><strong>Koncom minul\u00e9ho roka bola do Google Tag Manager (GTM) pridan\u00e1 u\u017eito\u010dn\u00e1 funkcia. Form\u00e1tovanie hodn\u00f4t premenn\u00fdch. Odosielanie v\u0161etk\u00fdch hodn\u00f4t v konzistentnom form\u00e1te je ve\u013emi d\u00f4le\u017eit\u00e9.<\/strong><\/p>\n<p><span style=\"font-weight: 400;\">Ak ste chceli zmeni\u0165 form\u00e1t premennej predt\u00fdm, boli ste n\u00faten\u00ed logiku form\u00e1tovania priamo zadefinova\u0165 v JavaScript-ovej premennej. Napr\u00edklad t\u00e1to JS premenn\u00e1\u00a0zmen\u00ed hodnotu dataLayer premennej <b>DL &#8211; eventAction<\/b> tak, aby obsahovala iba mal\u00e9 p\u00edsmen\u00e1.<\/span><\/p>\n<table style=\"width: 969px; height: 100px;\">\n<tbody>\n<tr>\n<td style=\"width: 960px;\"><code><span style=\"font-weight: 400;\">function<\/span><span style=\"font-weight: 400;\">(){<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\"> \u00a0 <\/span><span style=\"font-weight: 400;\">return<\/span><span style=\"font-weight: 400;\"> {{DL - eventAction}}.toLowerCase();<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">}<\/span><\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\">\u010eal\u0161\u00ed pr\u00edklad m\u00f4\u017ee by\u0165 t\u00e1to JS premenn\u00e1, ktor\u00e1 v pr\u00edpade, \u017ee dataLayer premenn\u00e1 DL &#8211; eventAction nie je definovan\u00e1 (premenn\u00e1 m\u00e1 hodnotu undefined alebo null), vr\u00e1ti re\u0165azec &#8218;not available&#8216;. V ostatn\u00fdch pr\u00edpadoch vr\u00e1ti p\u00f4vodn\u00fa hodnotu mal\u00fdmi p\u00edsmenami.<\/span><\/p>\n<table style=\"height: 178px;\" width=\"978\">\n<tbody>\n<tr>\n<td style=\"width: 968.8px;\"><code><span style=\"font-weight: 400;\">function<\/span><span style=\"font-weight: 400;\">(){<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 <\/span><span style=\"font-weight: 400;\">if<\/span><span style=\"font-weight: 400;\">({{DL - eventAction}} == <\/span><span style=\"font-weight: 400;\">undefined<\/span><span style=\"font-weight: 400;\"> || {{DL - eventAction}} == <\/span><span style=\"font-weight: 400;\">null<\/span><span style=\"font-weight: 400;\">){<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\"> \u00a0 \u00a0 <\/span><span style=\"font-weight: 400;\">return<\/span> <span style=\"font-weight: 400;\">'not available'<\/span><span style=\"font-weight: 400;\">;<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 <\/span><span style=\"font-weight: 400;\">else<\/span><span style=\"font-weight: 400;\">{<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 \u00a0 <\/span><span style=\"font-weight: 400;\">return<\/span><span style=\"font-weight: 400;\"> {{DL - eventAction}}.toLowerCase();<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">\u00a0 }<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">}<\/span><\/code><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p><span style=\"font-weight: 400;\"><strong>Ve\u013ekou nev\u00fdhodou tak\u00fdchto JS premenn\u00fdch je, \u017ee cel\u00fd GTM kontainer je kv\u00f4li nim nepreh\u013eadn\u00fd.<\/strong> Ka\u017ed\u00fa dataLayer premenn\u00fa, alebo aj premenn\u00fa in\u00e9ho typu, toti\u017e mus\u00edte \u201cprep\u00edsa\u0165\u201d ako JS premenn\u00fa a a\u017e n\u00e1sledne upravi\u0165 jej form\u00e1t do po\u017eadovan\u00e9ho tvaru. Samozrejme, form\u00e1tovanie dataLayer premenn\u00fdch je najlep\u0161ie rie\u0161i\u0165 priamo po\u010das f\u00e1zy implement\u00e1cie,\u00a0 no ur\u010dite neu\u0161kod\u00ed rie\u0161i\u0165 ho aj priamo v GTM. Form\u00e1tovanie premenn\u00fdch aj v GTM v\u00e1m zabezpe\u010d\u00ed, \u017ee v\u0161etky hodnoty premenn\u00fdch (aj tie, ktor\u00e9 bud\u00fa pridan\u00e9 v bud\u00facnosti), bud\u00fa ma\u0165 vami \u0161pecifikovan\u00fd form\u00e1t a bud\u00fa tak konzistentn\u00e9 s predo\u0161l\u00fdmi hodnotami.\u00a0<\/span><\/p>\n<h2><strong>Ak\u00e9 m\u00e1te mo\u017enosti?<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Form\u00e1tovanie premennej n\u00e1jdete v dolnej \u010dasti pri definovan\u00ed premennej ak\u00e9hoko\u013evek typu. Moment\u00e1lne je na v\u00fdber 5 r\u00f4znych mo\u017enost\u00ed:<\/span><\/p>\n<ul>\n<li><b><span style=\"font-weight: 400;\">Zmena hodnoty premennej, aby obsahovala<\/span> iba mal\u00e9\/ve\u013ek\u00e9 p\u00edsmen\u00e1.\u00a0<span style=\"font-weight: 400;\">Ak vyberiete mo\u017enosti <\/span>Lowercase<span style=\"font-weight: 400;\">, hodnota premennej \u2018Button ClicK\u2019 sa zmen\u00ed na hodnotu \u2018button click\u2019.<\/span><\/b><\/li>\n<li><span style=\"font-weight: 400;\">Zmena hodnoty <\/span><b>null <\/b><span style=\"font-weight: 400;\">na in\u00fa hodnotu.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Zmena hodnoty <\/span><b>undefined <\/b><span style=\"font-weight: 400;\">na in\u00fa hodnotu.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Zmena hodnoty <\/span><b>true <\/b><span style=\"font-weight: 400;\">na in\u00fa hodnotu.<\/span><\/li>\n<li><span style=\"font-weight: 400;\">Zmena hodnoty <\/span><b>false <\/b><span style=\"font-weight: 400;\">na in\u00fa hodnotu.<\/span><\/li>\n<\/ul>\n<p><span style=\"font-weight: 400;\">Pri mo\u017enostiach, ktor\u00e9 menia hodnotu premennej (z null, undefined, true alebo false) m\u00f4\u017eete do pola nap\u00edsa\u0165 statick\u00fa hodnotu (text) alebo odk\u00e1za\u0165 na in\u00fa premenn\u00fa.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Napr\u00edklad, ak hodnotu dataLayer premennej <\/span><b>DL &#8211; formType<\/b><span style=\"font-weight: 400;\"> naform\u00e1tujete nasledovne:<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><\/p>\n<p><a href=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image1-18.png\" data-rel=\"lightbox-image-0\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-14371 size-full\" src=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image1-18.png\" alt=\"\" width=\"360\" height=\"270\" srcset=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image1-18.png 360w, https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image1-18-300x225.png 300w\" sizes=\"(max-width: 360px) 100vw, 360px\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Ak m\u00e1 premenn\u00e1 <\/span><b>DL &#8211; formType<\/b><span style=\"font-weight: 400;\"> hodnotu <\/span><i><span style=\"font-weight: 400;\">undefined<\/span><\/i><span style=\"font-weight: 400;\">, t\u00e1to hodnota sa prep\u00ed\u0161e aktu\u00e1lnou hodnotou, ktor\u00e1 je ulo\u017een\u00e1 v premennej <\/span><b>JS &#8211; eventAction<\/b><span style=\"font-weight: 400;\">. Ak je hodnota premennej <\/span><b>DL &#8211; formType<\/b><span style=\"font-weight: 400;\"> in\u00e1 ako <\/span><i><span style=\"font-weight: 400;\">undefined<\/span><\/i><span style=\"font-weight: 400;\">, hodnota premenej <\/span><b>DL &#8211; formType<\/b><span style=\"font-weight: 400;\"> sa nezmen\u00ed.<\/span><\/p>\n<p><a href=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image2-18.png\" data-rel=\"lightbox-image-1\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-14372 size-full\" src=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image2-18.png\" alt=\"\" width=\"714\" height=\"690\" srcset=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image2-18.png 714w, https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image2-18-300x290.png 300w\" sizes=\"(max-width: 714px) 100vw, 714px\" \/><\/a><\/p>\n<p><span style=\"font-weight: 400;\">Ak by ste teda chceli pr\u00edklad uveden\u00fd vy\u0161\u0161ie upravi\u0165 tak, aby ste vyu\u017eili form\u00e1tovanie priamo v defin\u00edcii premennej, vyzeralo by to nasledovne:<\/span><\/p>\n<p><a href=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image3-16.png\" data-rel=\"lightbox-image-2\" data-rl_title=\"\" data-rl_caption=\"\" title=\"\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-14373 size-full\" src=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image3-16.png\" alt=\"\" width=\"712\" height=\"883\" srcset=\"https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image3-16.png 712w, https:\/\/www.dase-analytics.com\/blog\/wp-content\/uploads\/image3-16-242x300.png 242w\" sizes=\"(max-width: 712px) 100vw, 712px\" \/><\/a><\/p>\n<p><strong>U\u017eito\u010dn\u00e9, v\u0161ak? Nie je potrebn\u00fd \u017eiadny vlastn\u00fd k\u00f3d, ani vytvorenie \u017eiadnej \u010fal\u0161ej premennej.<\/strong><\/p>\n<h2><strong>Z\u00e1ver<\/strong><\/h2>\n<p><span style=\"font-weight: 400;\">Form\u00e1tovanie hodn\u00f4t premenn\u00fdch je ve\u013emi efekt\u00edvny sp\u00f4sob, ako zmeni\u0165 form\u00e1t premenn\u00fdch a to aj bez znalosti JavaScript-u. Mo\u017enosti, z ktor\u00fdch si aktu\u00e1lne m\u00f4\u017eete vybera\u0165, s\u00fa zatia\u013e pomerne obmedzen\u00e9. Ver\u00edm v\u0161ak, \u017ee \u010dasom pribudn\u00fa nov\u00e9, zauj\u00edmav\u00e9 sp\u00f4soby, s ktor\u00fdmi budeme ma\u0165 e\u0161te v\u00e4\u010d\u0161iu kontrolu nad form\u00e1tom odosielan\u00fdch d\u00e1t.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Koncom minul\u00e9ho roka bola do Google Tag Manager (GTM) pridan\u00e1 u\u017eito\u010dn\u00e1 funkcia. Form\u00e1tovanie hodn\u00f4t premenn\u00fdch. Odosielanie v\u0161etk\u00fdch hodn\u00f4t&#8230;<\/p>\n","protected":false},"author":62,"featured_media":14378,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[809,639],"tags":[],"_links":{"self":[{"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/posts\/14370"}],"collection":[{"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/users\/62"}],"replies":[{"embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/comments?post=14370"}],"version-history":[{"count":7,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/posts\/14370\/revisions"}],"predecessor-version":[{"id":17900,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/posts\/14370\/revisions\/17900"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/media\/14378"}],"wp:attachment":[{"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/media?parent=14370"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/categories?post=14370"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.dase-analytics.com\/blog\/sk\/wp-json\/wp\/v2\/tags?post=14370"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}