{"id":8849,"date":"2026-04-14T02:02:04","date_gmt":"2026-04-14T00:02:04","guid":{"rendered":"https:\/\/webiphi.be\/?page_id=8849"},"modified":"2026-04-17T00:12:20","modified_gmt":"2026-04-16T22:12:20","slug":"agence-web-bruxelles","status":"publish","type":"page","link":"https:\/\/webiphi.be\/nl\/landing\/","title":{"rendered":"Web agentschap brussel"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"8849\" class=\"elementor elementor-8849\" data-elementor-post-type=\"page\">\n\t\t\t\t<div data-particle_enable=\"false\" data-particle-mobile-disabled=\"false\" class=\"elementor-element elementor-element-6f72cc2 e-con-full e-flex wpr-particle-no wpr-jarallax-no wpr-parallax-no wpr-sticky-section-no wpr-equal-height-no e-con e-parent\" data-id=\"6f72cc2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5c5f7c0 elementor-widget elementor-widget-html\" data-id=\"5c5f7c0\" 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<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n     WIDGET ELEMENTOR \u2014 IFRAME LOADER v2\r\n     \r\n     INSTRUCTIONS :\r\n     1. Upload \"webiphi-landing-fr.html\" via FTP dans ton WordPress\r\n     2. Modifie le src=\"\" ci-dessous avec le bon chemin\r\n     3. Colle ce code dans UN SEUL widget HTML Elementor\r\n        (section full-width, 0 padding, 0 margin)\r\n     \r\n     Cette version utilise postMessage pour la communication\r\n     \u2192 fonctionne m\u00eame en cross-origin\r\n     \u2192 hauteur auto-adapt\u00e9e \u00e0 100%\r\n     \u2192 scroll smooth qui traverse l'iframe\r\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\r\n\r\n<style>\r\n  \/* Cacher le header\/footer Elementor si page d\u00e9di\u00e9e landing *\/\r\n  \/* D\u00e9commente ces lignes si n\u00e9cessaire : *\/\r\n  \/*\r\n  header.site-header,\r\n  footer.site-footer,\r\n  .elementor-location-header,\r\n  .elementor-location-footer { display: none !important; }\r\n  *\/\r\n\r\n  .wph-iframe-wrapper {\r\n    width: 100% !important;\r\n    max-width: 100% !important;\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n    overflow: hidden !important;\r\n    position: relative !important;\r\n    min-height: 100vh;\r\n  }\r\n  .wph-iframe-wrapper iframe {\r\n    width: 100% !important;\r\n    min-height: 100vh;\r\n    height: 100vh; \/* fallback initial *\/\r\n    border: none !important;\r\n    display: block !important;\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n  }\r\n  \r\n  \/* Kill Elementor wrapper spacing *\/\r\n  .elementor-widget-container:has(.wph-iframe-wrapper) {\r\n    margin: 0 !important;\r\n    padding: 0 !important;\r\n  }\r\n<\/style>\r\n\r\n<div class=\"wph-iframe-wrapper\">\r\n  <iframe \r\n    id=\"wph-landing-frame\"\r\n    src=\"https:\/\/webiphi.be\/wp-content\/uploads\/agence-web-bruxelles.html\"\r\n    scrolling=\"no\"\r\n    title=\"Webiphi landingspagina\"\r\n    loading=\"eager\"\r\n    allow=\"autoplay\"\r\n  ><\/iframe>\r\n<\/div>\r\n\r\n<script>\r\n(function() {\r\n  var iframe = document.getElementById('wph-landing-frame');\r\n  var currentHeight = 6000;\r\n\r\n  \/\/ Listen for messages from iframe\r\n  window.addEventListener('message', function(event) {\r\n    if (!event.data || !event.data.type) return;\r\n\r\n    \/\/ Height resize\r\n    if (event.data.type === 'wph-resize') {\r\n      var newHeight = event.data.height;\r\n      if (newHeight && newHeight > 100 && newHeight !== currentHeight) {\r\n        currentHeight = newHeight;\r\n        iframe.style.height = newHeight + 'px';\r\n      }\r\n    }\r\n\r\n    \/\/ Scroll to anchor inside iframe\r\n    if (event.data.type === 'wph-scroll') {\r\n      var iframeTop = iframe.getBoundingClientRect().top + window.pageYOffset;\r\n      var scrollTarget = iframeTop + event.data.offset - 70;\r\n      window.scrollTo({ top: scrollTarget, behavior: 'smooth' });\r\n    }\r\n\r\n    \/\/ Navigate (tel:, mailto:)\r\n    if (event.data.type === 'wph-navigate') {\r\n      window.location.href = event.data.url;\r\n    }\r\n  });\r\n\r\n  \/\/ Fallback: try direct access if same-origin\r\n  iframe.addEventListener('load', function() {\r\n    try {\r\n      var doc = iframe.contentDocument || iframe.contentWindow.document;\r\n      var h = doc.documentElement.scrollHeight;\r\n      if (h > 100) {\r\n        iframe.style.height = h + 'px';\r\n        currentHeight = h;\r\n      }\r\n      \/\/ Re-check after animations\r\n      setTimeout(function(){\r\n        var h2 = doc.documentElement.scrollHeight;\r\n        if (h2 > currentHeight) { iframe.style.height = h2 + 'px'; currentHeight = h2; }\r\n      }, 2000);\r\n      setTimeout(function(){\r\n        var h3 = doc.documentElement.scrollHeight;\r\n        if (h3 > currentHeight) { iframe.style.height = h3 + 'px'; currentHeight = h3; }\r\n      }, 5000);\r\n    } catch(e) {\r\n      \/\/ Cross-origin \u2014 postMessage handles it\r\n    }\r\n  });\r\n\r\n  \/\/ Resize on window resize\r\n  window.addEventListener('resize', function() {\r\n    \/\/ Reset to large then let postMessage correct it\r\n    iframe.style.height = Math.max(currentHeight, 4000) + 'px';\r\n  });\r\n})();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8cf0dc3 elementor-widget elementor-widget-html\" data-id=\"8cf0dc3\" 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<style>\r\n.wph-mobile-bar {\r\n  display: none;\r\n  position: fixed;\r\n  bottom: 0; left: 0; right: 0;\r\n  background: #0a0a0a !important;\r\n  padding: 10px 14px;\r\n  gap: 10px;\r\n  z-index: 99999;\r\n  box-shadow: 0 -4px 20px rgba(0,0,0,0.3);\r\n  border-top: 1px solid rgba(255,255,255,0.06);\r\n}\r\n@media(max-width:767px) {\r\n  .wph-mobile-bar { display: flex !important; }\r\n}\r\n.wph-mobile-bar a,\r\n.wph-mobile-bar button {\r\n  flex: 1 !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 8px !important;\r\n  padding: 13px 14px !important;\r\n  border-radius: 60px !important;\r\n  font-family: sans-serif !important;\r\n  font-weight: 600 !important;\r\n  font-size: 0.88rem !important;\r\n  text-decoration: none !important;\r\n  border: none !important;\r\n  cursor: pointer !important;\r\n  box-shadow: none !important;\r\n  text-shadow: none !important;\r\n}\r\n.wph-btn-call {\r\n  background: rgba(255,255,255,0.08) !important;\r\n  color: #ffffff !important;\r\n  border: 1px solid rgba(255,255,255,0.3) !important;\r\n}\r\n.wph-btn-audit {\r\n  background: #6a0719 !important;\r\n  color: #ffffff !important;\r\n  box-shadow: 0 4px 20px rgba(106,7,25,0.4) !important;\r\n}\r\n<\/style>\r\n\r\n<div class=\"wph-mobile-bar\">\r\n  <a href=\"tel:+32451011341\" class=\"wph-btn-call\">Oproep<\/a>\r\n  <button class=\"wph-btn-audit\" onclick=\"scrollToContact()\">Vrije audit \u2192<\/button>\r\n<\/div>\r\n\r\n<script>\r\nfunction scrollToContact() {\r\n  var iframe = document.getElementById('wph-landing-frame');\r\n  if (!iframe) return;\r\n  \/\/ Demande \u00e0 l'iframe de nous donner la position de #contact\r\n  iframe.contentWindow.postMessage({ type: 'wph-get-anchor', anchor: '#contact' }, '*');\r\n}\r\n\r\nwindow.addEventListener('message', function(e) {\r\n  if (!e.data) return;\r\n  \/\/ Re\u00e7oit la position de #contact depuis l'iframe et scrolle la page parente\r\n  if (e.data.type === 'wph-anchor-pos') {\r\n    var iframeTop = document.getElementById('wph-landing-frame').getBoundingClientRect().top + window.pageYOffset;\r\n    var target = iframeTop + e.data.offset - 70;\r\n    window.scrollTo({ top: target, behavior: 'smooth' });\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<\/div>","protected":false},"excerpt":{"rendered":"<p>Bel gratis \u2192.<\/p>","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"_acf_changed":false,"_angie_page":false,"footnotes":""},"class_list":["post-8849","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/webiphi.be\/nl\/wp-json\/wp\/v2\/pages\/8849","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webiphi.be\/nl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/webiphi.be\/nl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/webiphi.be\/nl\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/webiphi.be\/nl\/wp-json\/wp\/v2\/comments?post=8849"}],"version-history":[{"count":110,"href":"https:\/\/webiphi.be\/nl\/wp-json\/wp\/v2\/pages\/8849\/revisions"}],"predecessor-version":[{"id":8984,"href":"https:\/\/webiphi.be\/nl\/wp-json\/wp\/v2\/pages\/8849\/revisions\/8984"}],"wp:attachment":[{"href":"https:\/\/webiphi.be\/nl\/wp-json\/wp\/v2\/media?parent=8849"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}