{"id":2,"date":"2026-04-29T08:21:35","date_gmt":"2026-04-29T08:21:35","guid":{"rendered":"http:\/\/127.0.0.1\/?page_id=2"},"modified":"2026-04-29T08:36:10","modified_gmt":"2026-04-29T08:36:10","slug":"sample-page","status":"publish","type":"page","link":"http:\/\/34.204.159.36\/?page_id=2","title":{"rendered":"Prova buy button Metarecod"},"content":{"rendered":"<style>\n.shop-widget {\n\t--sw-bg: #ffffff;\n\t--sw-border: #eeeeee;\n\t--sw-btn-bg: #F5A623;\n\t--sw-btn-color: #ffffff;\n\t--sw-btn-hover: #e09410;\n\t--sw-shadow: 0 1px 4px rgba(0,0,0,0.08);\n}\n.shop-widget__card {\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 16px;\n\tbackground: var(--sw-bg);\n\tborder: 1px solid var(--sw-border);\n\tborder-radius: 10px;\n\tpadding: 16px;\n\tmargin-bottom: 10px;\n\tbox-shadow: var(--sw-shadow);\n}\n.shop-widget__logo-wrap {\n\twidth: 60px;\n\theight: 60px;\n\tborder-radius: 50%;\n\tborder: 1px solid var(--sw-border);\n\toverflow: hidden;\n\tflex-shrink: 0;\n\tbackground: #fff;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n.shop-widget__logo-wrap img {\n\twidth: 100%;\n\theight: 100%;\n\tobject-fit: contain;\n\tdisplay: block;\n}\n.shop-widget__name {\n\tflex: 1;\n\tfont-weight: 600;\n\tfont-size: 16px;\n\tline-height: 1.3;\n}\n.shop-widget__btn {\n\tbackground: var(--sw-btn-bg);\n\tcolor: var(--sw-btn-color);\n\tborder-radius: 24px;\n\tpadding: 10px 22px;\n\tborder: 0;\n\tcursor: pointer;\n\ttext-decoration: none;\n\ttransition: background 0.2s;\n\tdisplay: inline-block;\n\tfont-weight: 600;\n\twhite-space: nowrap;\n}\n.shop-widget__btn:hover,\n.shop-widget__btn:focus {\n\tbackground: var(--sw-btn-hover);\n\tcolor: var(--sw-btn-color);\n\ttext-decoration: none;\n}\n@media (max-width: 560px) {\n\t.shop-widget__card {\n\t\tflex-wrap: wrap;\n\t\tgap: 10px 12px;\n\t}\n\t.shop-widget__name {\n\t\tmin-width: 0;\n\t}\n\t.shop-widget__btn {\n\t\tflex: 0 0 100%;\n\t\ttext-align: center;\n\t\tbox-sizing: border-box;\n\t}\n}\n\n\/* Tabs *\/\n.shop-widget-wrap { margin: 0 0 20px; }\n.sw-tabs {\n\tdisplay: flex;\n\tborder-bottom: 1px solid #e5e5e5;\n\tmargin-bottom: 20px;\n}\n.sw-tab {\n\tflex: 1;\n\tpadding: 16px 12px;\n\tfont-weight: 700;\n\tletter-spacing: .5px;\n\ttext-transform: uppercase;\n\tcursor: pointer;\n\tbackground: transparent;\n\tborder: 0;\n\tborder-bottom: 3px solid transparent;\n\tcolor: #999;\n\tfont-size: 14px;\n\ttransition: color .2s, border-color .2s;\n}\n.sw-tab:hover { color: #666; }\n.sw-tab--active { color: #222; border-bottom-color: #F5A623; }\n.sw-panel { display: none; }\n.sw-panel--active { display: block; }\n\n\/* Trova farmacia *\/\n.sw-find-search { margin-bottom: 20px; position: relative; }\n.sw-places-input {\n\twidth: 100%;\n\tpadding: 14px 18px;\n\tborder-radius: 30px;\n\tborder: 1px solid #e5e5e5;\n\tbox-shadow: 0 1px 4px rgba(0,0,0,.05);\n\tfont-size: 15px;\n\tbox-sizing: border-box;\n\tbackground: #fff;\n}\n.sw-places-input:focus { outline: 2px solid #F5A623; border-color: #F5A623; }\n.sw-find-layout {\n\tdisplay: grid;\n\tgrid-template-columns: minmax(320px, 1fr) 2fr;\n\tgap: 20px;\n}\n.sw-find-list {\n\tmax-height: 600px;\n\toverflow-y: auto;\n\tdisplay: flex;\n\tflex-direction: column;\n\tgap: 10px;\n\tpadding-right: 4px;\n}\n.sw-find-card {\n\tbackground: #fff;\n\tborder: 1px solid #eee;\n\tborder-radius: 10px;\n\tpadding: 14px 16px;\n\tbox-shadow: 0 1px 4px rgba(0,0,0,.08);\n\tdisplay: flex;\n\tgap: 12px;\n\talign-items: flex-start;\n\tcursor: pointer;\n\ttransition: border-color .2s, box-shadow .2s;\n}\n.sw-find-card:hover { border-color: #cfe3d4; box-shadow: 0 2px 8px rgba(0,0,0,.12); }\n.sw-find-card__dist {\n\tflex: 0 0 56px;\n\tfont-size: 13px;\n\tcolor: #666;\n\tborder-right: 1px solid #eee;\n\tpadding-right: 10px;\n\tmin-height: 36px;\n\tdisplay: flex;\n\talign-items: center;\n}\n.sw-find-card__body { flex: 1; min-width: 0; }\n.sw-find-card__name { font-weight: 700; text-transform: uppercase; font-size: 14px; color: #222; }\n.sw-find-card__addr { font-size: 13px; color: #666; margin-top: 4px; }\n.sw-find-card__details { font-size: 13px; color: #444; margin-top: 8px; display: none; }\n.sw-find-card__details a { color: #F5A623; text-decoration: none; }\n.sw-find-card__details a:hover { text-decoration: underline; }\n.sw-find-card--open .sw-find-card__details { display: block; }\n.sw-find-card__copy, .sw-find-card__expand {\n\tbackground: transparent;\n\tborder: 0;\n\tcursor: pointer;\n\tcolor: #999;\n\tpadding: 4px;\n\tfont-size: 16px;\n\tline-height: 1;\n\ttransition: color .2s;\n}\n.sw-find-card__copy:hover, .sw-find-card__expand:hover { color: #F5A623; }\n.sw-find-card--open .sw-find-card__expand { transform: rotate(180deg); }\n.sw-find-map {\n\tmin-height: 520px;\n\tborder-radius: 10px;\n\toverflow: hidden;\n\tbackground: #f5f5f5;\n}\n.sw-find-empty, .sw-empty, .sw-error {\n\tpadding: 24px;\n\ttext-align: center;\n\tcolor: #999;\n\tfont-size: 14px;\n}\n.sw-error { color: #b32d2e; }\n\n@media (max-width: 768px) {\n\t.sw-find-layout { grid-template-columns: 1fr; }\n\t.sw-find-map { min-height: 320px; order: -1; }\n\t.sw-find-list { max-height: 400px; }\n\t.sw-tab { padding: 14px 8px; font-size: 13px; }\n}\n<\/style><script>(function(){\n  if (window.bbawWidgetLoaded) return;\n  window.bbawWidgetLoaded = true;\n\n  \/\/ Pin SVG data-URI (goccia verde scuro tenue). Sostituibile con altre varianti.\n  var BBAW_MARKER_SVG = 'data:image\/svg+xml;charset=UTF-8,' + encodeURIComponent(\n    '<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"32\" height=\"40\" viewBox=\"0 0 32 40\">' +\n      '<path d=\"M16 0C7.2 0 0 7.2 0 16c0 10.5 14.3 22.9 15 23.5.6.6 1.4.6 2 0 .7-.6 15-13 15-23.5C32 7.2 24.8 0 16 0z\" fill=\"#4a7c59\" stroke=\"#2d4d37\" stroke-width=\"1.5\"\/>' +\n      '<circle cx=\"16\" cy=\"16\" r=\"6\" fill=\"#ffffff\"\/>' +\n    '<\/svg>'\n  );\n\n  window.bbawInitMaps = function(){\n    window.bbawMapsReady = true;\n    document.dispatchEvent(new Event('bbaw-maps-ready'));\n  };\n\n  function onReady(fn){\n    if (document.readyState !== 'loading') { fn(); }\n    else { document.addEventListener('DOMContentLoaded', fn); }\n  }\n\n  function escapeHtml(s){\n    return String(s == null ? '' : s).replace(\/[&<>\"']\/g, function(c){\n      return {'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#39;'}[c];\n    });\n  }\n\n  function haversine(lat1, lng1, lat2, lng2){\n    var R = 6371;\n    var toRad = function(d){ return d * Math.PI \/ 180; };\n    var dLat = toRad(lat2 - lat1), dLng = toRad(lng2 - lng1);\n    var a = Math.sin(dLat\/2) * Math.sin(dLat\/2)\n          + Math.cos(toRad(lat1)) * Math.cos(toRad(lat2))\n          * Math.sin(dLng\/2) * Math.sin(dLng\/2);\n    return R * 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));\n  }\n\n  function initWidget(wrap){\n    if (wrap._bbawInit) return;\n    wrap._bbawInit = true;\n\n    var tabs   = wrap.querySelectorAll('.sw-tab');\n    var panels = wrap.querySelectorAll('.sw-panel');\n\n    tabs.forEach(function(t){\n      t.addEventListener('click', function(){\n        var target = t.dataset.panel;\n        tabs.forEach(function(x){\n          var active = (x === t);\n          x.classList.toggle('sw-tab--active', active);\n          x.setAttribute('aria-selected', active ? 'true' : 'false');\n        });\n        panels.forEach(function(p){\n          p.classList.toggle('sw-panel--active', p.dataset.panel === target);\n        });\n        if (target === 'find' && !wrap._findInit) {\n          wrap._findInit = true;\n          initFind(wrap);\n        }\n      });\n    });\n  }\n\n  function initFind(wrap){\n    if (!window.google || !window.google.maps) {\n      \/\/ Caso normale: Google Maps non ancora caricato. Attendi l'evento di ready.\n      \/\/ Caso edge: flag bbawMapsReady true ma google.maps non ancora esposto (race): retry breve.\n      if (window.bbawMapsReady) {\n        setTimeout(function(){ initFind(wrap); }, 100);\n      } else {\n        document.addEventListener('bbaw-maps-ready', function(){ initFind(wrap); }, { once: true });\n      }\n      return;\n    }\n\n    var panel   = wrap.querySelector('.sw-panel[data-panel=\"find\"]');\n    var input   = panel.querySelector('.sw-places-input');\n    var listEl  = panel.querySelector('.sw-find-list');\n    var mapEl   = panel.querySelector('.sw-find-map');\n    var emptyEl = panel.querySelector('.sw-find-empty');\n\n    var map = new google.maps.Map(mapEl, {\n      center: { lat: 41.9, lng: 12.5 }, zoom: 6,\n      mapTypeControl: false, streetViewControl: false, fullscreenControl: false\n    });\n\n    var autocomplete = new google.maps.places.Autocomplete(input, {\n      componentRestrictions: { country: 'it' },\n      types: ['geocode']\n    });\n\n    var markers = [];\n    var infoWin = new google.maps.InfoWindow();\n    function clearMarkers(){\n      markers.forEach(function(m){ m.setMap(null); });\n      markers = [];\n    }\n\n    autocomplete.addListener('place_changed', function(){\n      var place = autocomplete.getPlace();\n      if (!place || !place.geometry || !place.geometry.location) return;\n      var origin = { lat: place.geometry.location.lat(), lng: place.geometry.location.lng() };\n      fetchPharmacies(origin);\n    });\n\n    function fetchPharmacies(origin){\n      listEl.innerHTML = '<div class=\"sw-empty\">Ricerca in corso\u2026<\/div>';\n      if (emptyEl) emptyEl.style.display = 'none';\n\n      var body = new FormData();\n      body.append('action', 'bbaw_find_pharmacies');\n      body.append('nonce',  wrap.dataset.nonce);\n      body.append('lat',    origin.lat);\n      body.append('lng',    origin.lng);\n\n      fetch(wrap.dataset.ajaxurl, { method: 'POST', credentials: 'same-origin', body: body })\n        .then(function(r){ return r.json(); })\n        .then(function(res){\n          if (!res || !res.success) {\n            var msg = (res && res.data && res.data.message) ? res.data.message : 'Errore servizio.';\n            listEl.innerHTML = '<div class=\"sw-error\">' + escapeHtml(msg) + '<\/div>';\n            return;\n          }\n          renderResults(res.data || [], origin);\n        })\n        .catch(function(){\n          listEl.innerHTML = '<div class=\"sw-error\">Errore di rete.<\/div>';\n        });\n    }\n\n    function renderResults(pharmacies, origin){\n      clearMarkers();\n      listEl.innerHTML = '';\n\n      if (!pharmacies.length) {\n        listEl.innerHTML = '<div class=\"sw-empty\">Nessuna farmacia trovata nella zona.<\/div>';\n        return;\n      }\n\n      pharmacies.forEach(function(p){\n        p._dist = haversine(origin.lat, origin.lng, p.lat, p.lng);\n      });\n      pharmacies.sort(function(a, b){ return a._dist - b._dist; });\n\n      var bounds = new google.maps.LatLngBounds();\n      bounds.extend({ lat: origin.lat, lng: origin.lng });\n\n      pharmacies.forEach(function(p){\n        var pos = { lat: p.lat, lng: p.lng };\n        var marker = new google.maps.Marker({\n          position: pos,\n          map: map,\n          title: p.name,\n          icon: {\n            url: BBAW_MARKER_SVG,\n            scaledSize: new google.maps.Size(32, 40),\n            anchor: new google.maps.Point(16, 40)\n          }\n        });\n        marker.addListener('click', function(){\n          infoWin.setContent(\n            '<div style=\"font-weight:700;text-transform:uppercase;\">' + escapeHtml(p.name) + '<\/div>' +\n            '<div style=\"font-size:13px;color:#666;margin-top:4px;\">' + escapeHtml(p.address) + '<\/div>'\n          );\n          infoWin.open({ anchor: marker, map: map });\n        });\n        markers.push(marker);\n        bounds.extend(pos);\n\n        var details = '';\n        if (p.phone || p.email) {\n          details = '<div class=\"sw-find-card__details\">' +\n            (p.phone ? '<div>Tel: <a href=\"tel:' + escapeHtml(p.phone) + '\">' + escapeHtml(p.phone) + '<\/a><\/div>' : '') +\n            (p.email ? '<div>Email: <a href=\"mailto:' + escapeHtml(p.email) + '\">' + escapeHtml(p.email) + '<\/a><\/div>' : '') +\n          '<\/div>';\n        }\n\n        var card = document.createElement('div');\n        card.className = 'sw-find-card';\n        card.setAttribute('role', 'listitem');\n        card.innerHTML =\n          '<div class=\"sw-find-card__dist\">' + p._dist.toFixed(1) + ' km<\/div>' +\n          '<div class=\"sw-find-card__body\">' +\n            '<div class=\"sw-find-card__name\">' + escapeHtml(p.name) + '<\/div>' +\n            '<div class=\"sw-find-card__addr\">' + escapeHtml(p.address) + '<\/div>' +\n            details +\n          '<\/div>' +\n          '<button type=\"button\" class=\"sw-find-card__copy\" title=\"Copia indirizzo\" aria-label=\"Copia indirizzo\">\u29c9<\/button>' +\n          (details ? '<button type=\"button\" class=\"sw-find-card__expand\" title=\"Espandi\" aria-expanded=\"false\">\u25be<\/button>' : '');\n\n        card.querySelector('.sw-find-card__copy').addEventListener('click', function(e){\n          e.stopPropagation();\n          if (navigator.clipboard && navigator.clipboard.writeText) {\n            navigator.clipboard.writeText(p.address);\n          }\n        });\n        var expBtn = card.querySelector('.sw-find-card__expand');\n        if (expBtn) {\n          expBtn.addEventListener('click', function(e){\n            e.stopPropagation();\n            var open = card.classList.toggle('sw-find-card--open');\n            expBtn.setAttribute('aria-expanded', open ? 'true' : 'false');\n          });\n        }\n        card.addEventListener('click', function(){\n          map.setCenter(pos);\n          map.setZoom(15);\n          google.maps.event.trigger(marker, 'click');\n        });\n\n        listEl.appendChild(card);\n      });\n\n      map.fitBounds(bounds, 60);\n    }\n  }\n\n  onReady(function(){\n    document.querySelectorAll('.shop-widget-wrap').forEach(initWidget);\n  });\n})();<\/script><script async defer src=\"https:\/\/maps.googleapis.com\/maps\/api\/js?key=AIzaSyDOMDqXci39AElEUH3MUwFxTofYKwAUATA&libraries=places&loading=async&callback=bbawInitMaps\"><\/script><div class=\"shop-widget-wrap\" data-nonce=\"e1ed5f5d9b\" data-ajaxurl=\"http:\/\/34.204.159.36\/wp-admin\/admin-ajax.php\"><div class=\"sw-tabs\" role=\"tablist\"><button type=\"button\" class=\"sw-tab sw-tab--active\" data-panel=\"order\" role=\"tab\" aria-selected=\"true\">ORDINA ONLINE<\/button><button type=\"button\" class=\"sw-tab\" data-panel=\"find\" role=\"tab\" aria-selected=\"false\">TROVA FARMACIA<\/button><\/div><div class=\"sw-panel sw-panel--active\" data-panel=\"order\" role=\"tabpanel\"><div class=\"shop-widget\"><div class=\"shop-widget__card\"><div class=\"shop-widget__logo-wrap\"><img decoding=\"async\" width=\"60\" height=\"60\" src=\"http:\/\/34.204.159.36\/wp-content\/uploads\/2026\/04\/efarma_1logo-150x150.png\" class=\"shop-widget__logo wp-post-image\" alt=\"E Farma shop\" srcset=\"http:\/\/34.204.159.36\/wp-content\/uploads\/2026\/04\/efarma_1logo-150x150.png 150w, http:\/\/34.204.159.36\/wp-content\/uploads\/2026\/04\/efarma_1logo.png 202w\" sizes=\"(max-width: 60px) 100vw, 60px\" \/><\/div><div class=\"shop-widget__name\">E Farma shop<\/div><a class=\"shop-widget__btn\" href=\"https:\/\/www.efarma.com\/aboca-metarecod-40-bustine-granulato.html?queryID=41a17f462a78c6bed28a1af2cded1859&#038;objectID=151684&#038;indexName=pro_efarma_it_products\" target=\"_blank\" rel=\"noopener noreferrer\">Ordina ora<\/a><\/div><\/div><\/div><div class=\"sw-panel\" data-panel=\"find\" role=\"tabpanel\"><div class=\"sw-find-search\"><input class=\"sw-places-input\" type=\"text\" placeholder=\"Inserisci CAP, citt&agrave; o indirizzo\" autocomplete=\"off\"><\/div><div class=\"sw-find-layout\"><div class=\"sw-find-list\" role=\"list\"><\/div><div class=\"sw-find-map\"><\/div><\/div><div class=\"sw-find-empty\">Inserisci un indirizzo per visualizzare le farmacie vicine.<\/div><\/div><\/div>\n\n\n\n<p>This is an example page. It&#8217;s different from a blog post because it will stay in one place and will show up in your site navigation (in most themes). Most people start with an About page that introduces them to potential site visitors. It might say something like this:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>Hi there! I&#8217;m a bike messenger by day, aspiring actor by night, and this is my website. I live in Los Angeles, have a great dog named Jack, and I like pi\u00f1a coladas. (And gettin&#8217; caught in the rain.)<\/p>\n<\/blockquote>\n\n\n\n<p>&#8230;or something like this:<\/p>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p>The XYZ Doohickey Company was founded in 1971, and has been providing quality doohickeys to the public ever since. Located in Gotham City, XYZ employs over 2,000 people and does all kinds of awesome things for the Gotham community.<\/p>\n<\/blockquote>\n\n\n\n<p>As a new WordPress user, you should go to <a href=\"http:\/\/127.0.0.1\/wp-admin\/\">your dashboard<\/a> to delete this page and create new pages for your content. Have fun!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This is an example page. It&#8217;s different from a blog post because it will stay in one place and will show up in your site navigation (in most themes). Most people start with an About page that introduces them to potential site visitors. It might say something like this: Hi there! I&#8217;m a bike messenger [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"open","template":"","meta":{"footnotes":""},"class_list":["post-2","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/34.204.159.36\/index.php?rest_route=\/wp\/v2\/pages\/2","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/34.204.159.36\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/34.204.159.36\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/34.204.159.36\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/34.204.159.36\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2"}],"version-history":[{"count":5,"href":"http:\/\/34.204.159.36\/index.php?rest_route=\/wp\/v2\/pages\/2\/revisions"}],"predecessor-version":[{"id":15,"href":"http:\/\/34.204.159.36\/index.php?rest_route=\/wp\/v2\/pages\/2\/revisions\/15"}],"wp:attachment":[{"href":"http:\/\/34.204.159.36\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}