{"id":3819,"date":"2026-10-01T09:35:35","date_gmt":"2026-10-01T09:35:35","guid":{"rendered":"https:\/\/www.valepisao.com\/?page_id=3819"},"modified":"2026-10-07T14:45:40","modified_gmt":"2026-10-07T14:45:40","slug":"iframe-test","status":"publish","type":"page","link":"https:\/\/www.valepisao.com\/en\/iframe-test\/","title":{"rendered":"iFrame Test"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"3819\" class=\"elementor elementor-3819\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d026b41 e-flex e-con-boxed e-con e-parent\" data-id=\"d026b41\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-ea3400f e-con-full e-flex e-con e-child\" data-id=\"ea3400f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2c935e2 elementor-widget elementor-widget-heading\" data-id=\"2c935e2\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Formul\u00e1rio de contacto - homepage<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8eb90c9 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"8eb90c9\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>.elementor-element-8eb90c9{display:none !important}<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4c5af83 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"4c5af83\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"vale-pisao-form\">\r\n    <iframe\r\n        src=\"https:\/\/mch9fcgtf4trpjntqh8v9zrcmbmm.pub.sfmc-content.com\/5dzyk2iqbeb?source=valePisaoHomepage\"\r\n        title=\"Formul\u00e1rio Vale Pis\u00e3o EN\"\r\n        scrolling=\"no\">\r\n    <\/iframe>\r\n<\/div>\r\n\r\n<style>\r\n.vale-pisao-form {\r\n    width: 100% !important;\r\n    max-width: none !important;\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n    overflow: hidden !important;\r\n}\r\n\r\n.vale-pisao-form iframe {\r\n    display: block !important;\r\n    width: 100% !important;\r\n    max-width: none !important;\r\n\r\n    height: 762px;\r\n\r\n    border: 0 !important;\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n\r\n    overflow: hidden !important;\r\n}\r\n\r\n\/* For\u00e7ar widget Elementor a ocupar 100% *\/\r\n.elementor-widget-html:has(.vale-pisao-form),\r\n.elementor-widget-html:has(.vale-pisao-form) .elementor-widget-container {\r\n    width: 100% !important;\r\n    max-width: none !important;\r\n}\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b190785 elementor-widget elementor-widget-html\" data-id=\"b190785\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script>(function (root, factory) {\r\n  \"use strict\";\r\n\r\n  var api = factory();\r\n\r\n  if (typeof module === \"object\" && module.exports) {\r\n    module.exports = api;\r\n  }\r\n\r\n  if (root && root.document) {\r\n    api.start(root);\r\n  }\r\n})(typeof window !== \"undefined\" ? window : null, function () {\r\n  \"use strict\";\r\n\r\n  var TRACKED_PARAMETERS = [\r\n    \"utm_source\",\r\n    \"utm_medium\",\r\n    \"utm_campaign\",\r\n    \"utm_term\",\r\n    \"utm_content\",\r\n    \"gclid\",\r\n    \"gbraid\",\r\n    \"wbraid\"\r\n  ];\r\n\r\n  var INSTANCE_KEY = typeof Symbol === \"function\"\r\n    ? Symbol.for(\"from.iframeUtmPropagation\")\r\n    : \"__fromIframeUtmPropagation__\";\r\n\r\n  function isAllowedHostname(hostname) {\r\n    var normalizedHostname = String(hostname || \"\").toLowerCase();\r\n\r\n    return normalizedHostname.endsWith(\".pub.sfmc-content.com\") ||\r\n      normalizedHostname === \"cloud.from.pt\" ||\r\n      normalizedHostname.endsWith(\".cloud.from.pt\");\r\n  }\r\n\r\n  function getParametersToCopy(pageUrl) {\r\n    var parameters = new URL(pageUrl).searchParams;\r\n\r\n    return TRACKED_PARAMETERS.reduce(function (result, parameterName) {\r\n      var value = parameters.get(parameterName);\r\n\r\n      if (value !== null && value !== \"\") {\r\n        result.push([parameterName, value]);\r\n      }\r\n\r\n      return result;\r\n    }, []);\r\n  }\r\n\r\n  function createUpdatedUrl(iframeSrc, pageUrl) {\r\n    var iframeUrl;\r\n    var parametersToCopy;\r\n\r\n    try {\r\n      iframeUrl = new URL(iframeSrc, pageUrl);\r\n      parametersToCopy = getParametersToCopy(pageUrl);\r\n    } catch (error) {\r\n      return null;\r\n    }\r\n\r\n    if (!isAllowedHostname(iframeUrl.hostname) || parametersToCopy.length === 0) {\r\n      return null;\r\n    }\r\n\r\n    parametersToCopy.forEach(function (entry) {\r\n      iframeUrl.searchParams.set(entry[0], entry[1]);\r\n    });\r\n\r\n    var currentUrl;\r\n\r\n    try {\r\n      currentUrl = new URL(iframeSrc, pageUrl).href;\r\n    } catch (error) {\r\n      return null;\r\n    }\r\n\r\n    return iframeUrl.href === currentUrl ? null : iframeUrl.href;\r\n  }\r\n\r\n  function updateIframe(iframe, pageUrl) {\r\n    var iframeSrc = iframe.getAttribute(\"src\");\r\n\r\n    if (!iframeSrc) {\r\n      return false;\r\n    }\r\n\r\n    var updatedUrl = createUpdatedUrl(iframeSrc, pageUrl);\r\n\r\n    if (!updatedUrl) {\r\n      return false;\r\n    }\r\n\r\n    iframe.setAttribute(\"src\", updatedUrl);\r\n    return true;\r\n  }\r\n\r\n  function updateIframesWithin(rootNode, pageUrl) {\r\n    if (!rootNode) {\r\n      return;\r\n    }\r\n\r\n    if (typeof rootNode.matches === \"function\" && rootNode.matches(\"iframe[src]\")) {\r\n      updateIframe(rootNode, pageUrl);\r\n    }\r\n\r\n    if (typeof rootNode.querySelectorAll === \"function\") {\r\n      rootNode.querySelectorAll(\"iframe[src]\").forEach(function (iframe) {\r\n        updateIframe(iframe, pageUrl);\r\n      });\r\n    }\r\n  }\r\n\r\n  function initialize(environment) {\r\n    var pageUrl = environment.location.href;\r\n    var document = environment.document;\r\n\r\n    updateIframesWithin(document, pageUrl);\r\n\r\n    if (typeof environment.MutationObserver !== \"function\") {\r\n      return { stop: function () {} };\r\n    }\r\n\r\n    var observer = new environment.MutationObserver(function (mutations) {\r\n      mutations.forEach(function (mutation) {\r\n        mutation.addedNodes.forEach(function (node) {\r\n          updateIframesWithin(node, pageUrl);\r\n        });\r\n      });\r\n    });\r\n\r\n    observer.observe(document.documentElement, {\r\n      childList: true,\r\n      subtree: true\r\n    });\r\n\r\n    return {\r\n      stop: function () {\r\n        observer.disconnect();\r\n      }\r\n    };\r\n  }\r\n\r\n  function start(environment) {\r\n    if (!environment || !environment.document || !environment.location) {\r\n      return null;\r\n    }\r\n\r\n    if (environment[INSTANCE_KEY]) {\r\n      return environment[INSTANCE_KEY];\r\n    }\r\n\r\n    var controller = { stop: function () {} };\r\n    environment[INSTANCE_KEY] = controller;\r\n\r\n    function run() {\r\n      var activeController = initialize(environment);\r\n      controller.stop = function () {\r\n        activeController.stop();\r\n        delete environment[INSTANCE_KEY];\r\n      };\r\n    }\r\n\r\n    if (environment.document.readyState === \"loading\") {\r\n      environment.document.addEventListener(\"DOMContentLoaded\", run, { once: true });\r\n    } else {\r\n      run();\r\n    }\r\n\r\n    return controller;\r\n  }\r\n\r\n  return {\r\n    createUpdatedUrl: createUpdatedUrl,\r\n    isAllowedHostname: isAllowedHostname,\r\n    start: start,\r\n    updateIframe: updateIframe\r\n  };\r\n});\r\n\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d582bde e-flex e-con-boxed e-con e-parent\" data-id=\"d582bde\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-88e2a13 e-con-full e-flex e-con e-child\" data-id=\"88e2a13\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a045c9d elementor-widget elementor-widget-heading\" data-id=\"a045c9d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Formul\u00e1rio de contacto - REAL ESTATE<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7db3e14 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"7db3e14\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>.elementor-element-7db3e14{display:none !important}<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f81980a elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"f81980a\" data-element_type=\"widget\" data-e-type=\"widget\" data-no-translation=\"\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"vale-pisao-form\">\r\n    <iframe\r\n        src=\"https:\/\/mch9fcgtf4trpjntqh8v9zrcmbmm.pub.sfmc-content.com\/5dzyk2iqbeb?source=valepisaorealestate\"\r\n        title=\"Formul\u00e1rio Vale Pis\u00e3o EN\"\r\n        scrolling=\"no\">\r\n    <\/iframe>\r\n<\/div>\r\n\r\n<style>\r\n.vale-pisao-form {\r\n    width: 100% !important;\r\n    max-width: none !important;\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n    overflow: hidden !important;\r\n}\r\n\r\n.vale-pisao-form iframe {\r\n    display: block !important;\r\n    width: 100% !important;\r\n    max-width: none !important;\r\n\r\n    height: 762px;\r\n\r\n    border: 0 !important;\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n\r\n    overflow: hidden !important;\r\n}\r\n\r\n\/* For\u00e7ar widget Elementor a ocupar 100% *\/\r\n.elementor-widget-html:has(.vale-pisao-form),\r\n.elementor-widget-html:has(.vale-pisao-form) .elementor-widget-container {\r\n    width: 100% !important;\r\n    max-width: none !important;\r\n}\r\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d777832 elementor-widget elementor-widget-html\" data-id=\"d777832\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<script>(function (root, factory) {\r\n  \"use strict\";\r\n\r\n  var api = factory();\r\n\r\n  if (typeof module === \"object\" && module.exports) {\r\n    module.exports = api;\r\n  }\r\n\r\n  if (root && root.document) {\r\n    api.start(root);\r\n  }\r\n})(typeof window !== \"undefined\" ? window : null, function () {\r\n  \"use strict\";\r\n\r\n  var TRACKED_PARAMETERS = [\r\n    \"utm_source\",\r\n    \"utm_medium\",\r\n    \"utm_campaign\",\r\n    \"utm_term\",\r\n    \"utm_content\",\r\n    \"gclid\",\r\n    \"gbraid\",\r\n    \"wbraid\"\r\n  ];\r\n\r\n  var INSTANCE_KEY = typeof Symbol === \"function\"\r\n    ? Symbol.for(\"from.iframeUtmPropagation\")\r\n    : \"__fromIframeUtmPropagation__\";\r\n\r\n  function isAllowedHostname(hostname) {\r\n    var normalizedHostname = String(hostname || \"\").toLowerCase();\r\n\r\n    return normalizedHostname.endsWith(\".pub.sfmc-content.com\") ||\r\n      normalizedHostname === \"cloud.from.pt\" ||\r\n      normalizedHostname.endsWith(\".cloud.from.pt\");\r\n  }\r\n\r\n  function getParametersToCopy(pageUrl) {\r\n    var parameters = new URL(pageUrl).searchParams;\r\n\r\n    return TRACKED_PARAMETERS.reduce(function (result, parameterName) {\r\n      var value = parameters.get(parameterName);\r\n\r\n      if (value !== null && value !== \"\") {\r\n        result.push([parameterName, value]);\r\n      }\r\n\r\n      return result;\r\n    }, []);\r\n  }\r\n\r\n  function createUpdatedUrl(iframeSrc, pageUrl) {\r\n    var iframeUrl;\r\n    var parametersToCopy;\r\n\r\n    try {\r\n      iframeUrl = new URL(iframeSrc, pageUrl);\r\n      parametersToCopy = getParametersToCopy(pageUrl);\r\n    } catch (error) {\r\n      return null;\r\n    }\r\n\r\n    if (!isAllowedHostname(iframeUrl.hostname) || parametersToCopy.length === 0) {\r\n      return null;\r\n    }\r\n\r\n    parametersToCopy.forEach(function (entry) {\r\n      iframeUrl.searchParams.set(entry[0], entry[1]);\r\n    });\r\n\r\n    var currentUrl;\r\n\r\n    try {\r\n      currentUrl = new URL(iframeSrc, pageUrl).href;\r\n    } catch (error) {\r\n      return null;\r\n    }\r\n\r\n    return iframeUrl.href === currentUrl ? null : iframeUrl.href;\r\n  }\r\n\r\n  function updateIframe(iframe, pageUrl) {\r\n    var iframeSrc = iframe.getAttribute(\"src\");\r\n\r\n    if (!iframeSrc) {\r\n      return false;\r\n    }\r\n\r\n    var updatedUrl = createUpdatedUrl(iframeSrc, pageUrl);\r\n\r\n    if (!updatedUrl) {\r\n      return false;\r\n    }\r\n\r\n    iframe.setAttribute(\"src\", updatedUrl);\r\n    return true;\r\n  }\r\n\r\n  function updateIframesWithin(rootNode, pageUrl) {\r\n    if (!rootNode) {\r\n      return;\r\n    }\r\n\r\n    if (typeof rootNode.matches === \"function\" && rootNode.matches(\"iframe[src]\")) {\r\n      updateIframe(rootNode, pageUrl);\r\n    }\r\n\r\n    if (typeof rootNode.querySelectorAll === \"function\") {\r\n      rootNode.querySelectorAll(\"iframe[src]\").forEach(function (iframe) {\r\n        updateIframe(iframe, pageUrl);\r\n      });\r\n    }\r\n  }\r\n\r\n  function initialize(environment) {\r\n    var pageUrl = environment.location.href;\r\n    var document = environment.document;\r\n\r\n    updateIframesWithin(document, pageUrl);\r\n\r\n    if (typeof environment.MutationObserver !== \"function\") {\r\n      return { stop: function () {} };\r\n    }\r\n\r\n    var observer = new environment.MutationObserver(function (mutations) {\r\n      mutations.forEach(function (mutation) {\r\n        mutation.addedNodes.forEach(function (node) {\r\n          updateIframesWithin(node, pageUrl);\r\n        });\r\n      });\r\n    });\r\n\r\n    observer.observe(document.documentElement, {\r\n      childList: true,\r\n      subtree: true\r\n    });\r\n\r\n    return {\r\n      stop: function () {\r\n        observer.disconnect();\r\n      }\r\n    };\r\n  }\r\n\r\n  function start(environment) {\r\n    if (!environment || !environment.document || !environment.location) {\r\n      return null;\r\n    }\r\n\r\n    if (environment[INSTANCE_KEY]) {\r\n      return environment[INSTANCE_KEY];\r\n    }\r\n\r\n    var controller = { stop: function () {} };\r\n    environment[INSTANCE_KEY] = controller;\r\n\r\n    function run() {\r\n      var activeController = initialize(environment);\r\n      controller.stop = function () {\r\n        activeController.stop();\r\n        delete environment[INSTANCE_KEY];\r\n      };\r\n    }\r\n\r\n    if (environment.document.readyState === \"loading\") {\r\n      environment.document.addEventListener(\"DOMContentLoaded\", run, { once: true });\r\n    } else {\r\n      run();\r\n    }\r\n\r\n    return controller;\r\n  }\r\n\r\n  return {\r\n    createUpdatedUrl: createUpdatedUrl,\r\n    isAllowedHostname: isAllowedHostname,\r\n    start: start,\r\n    updateIframe: updateIframe\r\n  };\r\n});\r\n\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Formul\u00e1rio de contacto &#8211; homepage Formul\u00e1rio de contacto &#8211; REAL ESTATE<\/p>","protected":false},"author":4,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-3819","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.valepisao.com\/en\/wp-json\/wp\/v2\/pages\/3819","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.valepisao.com\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.valepisao.com\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.valepisao.com\/en\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/www.valepisao.com\/en\/wp-json\/wp\/v2\/comments?post=3819"}],"version-history":[{"count":55,"href":"https:\/\/www.valepisao.com\/en\/wp-json\/wp\/v2\/pages\/3819\/revisions"}],"predecessor-version":[{"id":3889,"href":"https:\/\/www.valepisao.com\/en\/wp-json\/wp\/v2\/pages\/3819\/revisions\/3889"}],"wp:attachment":[{"href":"https:\/\/www.valepisao.com\/en\/wp-json\/wp\/v2\/media?parent=3819"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}