Pressed Flower Photo Frame

$19.99
people are viewing this right now
Free worldwide shipping
Free returns
Sustainably made
Secure payments
Description

Bring the beauty of nature to your home, your desktop, your office… with a unique dried flowers frame. You can custom the frame with your photo, your quote. Each frame is a kind of natural art + the beauty of our hand-crafted technique.
We use dried flowers that are long-lasting to make the frame.

All 12 colors can be made horizontal or vertical frames.
Photo size: S:5" M:6" L:7"
This photo frame has two bases for your choice, a wooden base, and a transparent base.
The photo can be replaced and placed by yourself. You can get the frame and put any photo you like in it. This is the perfect gift for birthdays, anniversaries, weddings, graduations, and any special occasion.

Select product
Selected 0 item(s)
1/ Horizontal-S
1/ Horizontal-M
1/ Horizontal-L
1/ Vertical-S
1/ Vertical-M
1/ Vertical-L
2/ Horizontal-S
2/ Horizontal-M
2/ Horizontal-L
2/ Vertical-S
2/ Vertical-M
2/ Vertical-L
3/ Horizontal-S
3/ Horizontal-M
3/ Horizontal-L
3/ Vertical-S
3/ Vertical-M
3/ Vertical-L
4/ Horizontal-S
4/ Horizontal-M
4/ Horizontal-L
4/ Vertical-S
4/ Vertical-M
4/ Vertical-L
5/ Horizontal-S
5/ Horizontal-M
5/ Horizontal-L
5/ Vertical-S
5/ Vertical-M
5/ Vertical-L
6/ Horizontal-S
6/ Horizontal-M
6/ Horizontal-L
6/ Vertical-S
6/ Vertical-M
6/ Vertical-L
7/ Horizontal-S
7/ Horizontal-M
7/ Horizontal-L
7/ Vertical-S
7/ Vertical-M
7/ Vertical-L
8/ Horizontal-S
8/ Horizontal-M
8/ Horizontal-L
8/ Vertical-S
8/ Vertical-M
8/ Vertical-L
9/ Horizontal-S
9/ Horizontal-M
9/ Horizontal-L
9/ Vertical-S
9/ Vertical-M
9/ Vertical-L
10/ Horizontal-S
10/ Horizontal-M
10/ Horizontal-L
10/ Vertical-S
10/ Vertical-M
10/ Vertical-L
11/ Horizontal-S
11/ Horizontal-M
11/ Horizontal-L
11/ Vertical-S
11/ Vertical-M
11/ Vertical-L
12/ Horizontal-S
12/ Horizontal-M
12/ Horizontal-L
12/ Vertical-S
12/ Vertical-M
12/ Vertical-L
function updateQueryStringParameter(uri, key, value) { if(!value) { return uri; } let re = new RegExp('([?&])' + key + '=.*?(&|$)', 'i'); let separator = uri.indexOf('?') !== -1 ? '&' : '?'; return uri.match(re) ? uri.replace(re, '$1' + key + '=' + value + '$2') : uri + separator + key + '=' + value; } function addEventListenerRedirect(data) { if (data.type === 'checkout_redirect_login') { let { pathname, search } = window.location; let order_id = data.order_id || ''; let newSearch = updateQueryStringParameter(search, 'order_id', order_id); let return_Url = `${pathname}${newSearch}`; let redirect_Url = `${data.url}?_returnUrl=${encodeURIComponent(return_Url)}`; return Promise.resolve(redirect_Url) } if (data.type === 'checkout_redirect') { return Promise.resolve(data.url); } if (data.type === 'checkout_reload') { let { pathname } = window.location; return Promise.resolve(pathname); } return Promise.reject({}); } function addEventListenerMask(data) { if (data.type === 'checkout_mask' && data.show_mask) { return Promise.resolve({}); } return Promise.reject({}); } function addEventListenerMaskClose(data) { if (data.type === 'checkout_mask' && !data.show_mask) { return Promise.resolve({}); } return Promise.reject({}); } function handleUpdateCheckout(data) { let message = { type:'theme_variant_list_update' } return Promise.resolve(message); } function addEventListeneFullFixed(data) { if (data.type === 'checkout_full_screen') { return Promise.resolve(data.is_full_screen); } return Promise.reject({}); } function addEventListenerTproduct(data) { if (data.type === 'checkout_kick_items') { return Promise.resolve(data); } return Promise.reject({}); } function handleCheckOrderIdChange(data) { if ((data.data && data.data.order_token) || data.order_id) { let new_order_token = (data.data && data.data.order_token) || data.order_id ; let checkout_iframe_template = document.getElementById('checkout_iframe_template'); let old_oder_token = checkout_iframe_template.getAttribute('data-order-id'); if (!old_oder_token) { checkout_iframe_template.setAttribute('data-order-id', new_order_token); } let isRerenderCheckout = new_order_token == old_oder_token; let obj = { order_id: new_order_token, once: isRerenderCheckout } if (!isRerenderCheckout) { checkout_iframe_template.setAttribute('data-order-id', new_order_token); } return Promise.resolve(obj); } return Promise.reject({}); } function addEventListeneScollToCheckout(data) { if (data.type === 'scroll_to_checkout') { return Promise.resolve(); } return Promise.reject({}); } function handleGetOrderInfo(data) { if (data.order_id) { let api = `/api/checkout/order/info?order_id=${data.order_id}`; return Promise.resolve(api); } return Promise.reject({}); } function handleToggleStickyCheckoutBtn(data) { if (data.type === 'checkout_submit_visible') { return Promise.resolve(!data.visible); } return Promise.reject({}); } function handleSetStickyCheckoutBtnDisabled(data) { if (data.type === 'checkout_submit_disable') { return Promise.resolve(data.disable); } return Promise.reject({}); } function stickyCheckoutBtnPostMessage(data) { let message = { type: 'theme_submit_click' } return Promise.resolve(message); } function handleShowChecktoutToast(data) { if (data.type === 'checkout_toast') { return Promise.resolve(data.message); } return Promise.reject({}); } exportFunction('handleGetOrderInfo', handleGetOrderInfo) exportFunction('handleCheckOrderIdChange', handleCheckOrderIdChange) exportFunction('addEventListenerRedirect', addEventListenerRedirect) exportFunction('addEventListenerMask', addEventListenerMask) exportFunction('addEventListenerMaskClose', addEventListenerMaskClose) exportFunction('handleUpdateCheckout', handleUpdateCheckout) exportFunction('addEventListeneFullFixed', addEventListeneFullFixed) exportFunction('addEventListenerTproduct', addEventListenerTproduct) exportFunction('addEventListeneScollToCheckout', addEventListeneScollToCheckout) exportFunction('handleToggleStickyCheckoutBtn', handleToggleStickyCheckoutBtn) exportFunction('handleSetStickyCheckoutBtnDisabled', handleSetStickyCheckoutBtnDisabled) exportFunction('stickyCheckoutBtnPostMessage', stickyCheckoutBtnPostMessage) exportFunction('handleShowChecktoutToast', handleShowChecktoutToast)
window.addEventListener('message', (e) => { const iframe = document.getElementById("checkout_iframe"); if(iframe && e.data && e.data.type === 'checkout_full_screen'){ if (e.data.is_full_screen) { iframe.setAttribute("scrolling", "auto") } else { iframe.setAttribute("scrolling", "no") }; } }); function handleSetObserver() { let iframeEle = document.getElementById('checkout_iframe'); var observer = new MutationObserver((mutations) => { let is_dom_change = false; mutations.forEach((item) => { if (item.type === 'childList') { is_dom_change = true; } }); const scrollHeight = iframeEle.contentWindow.document.body.scrollHeight; if (is_dom_change) { iframeEle.style.height = `${scrollHeight ? scrollHeight : 1400 }px`; } }); const options = { "childList" : true, "attributes" : false, "characterData" : false, "subtree" : true, "attributeOldValue" : false, "characterDataOldValue" : false }; iframeEle.contentWindow.addEventListener('DOMContentLoaded', function(e) { try { if (iframeEle.contentWindow.document.readyState === "interactive") { observer.observe(iframeEle.contentWindow.document, options); const iframe = document.getElementById("checkout_iframe"); iframe.addEventListener("load", function(e) { if (iframe.contentWindow.location.href.indexOf('thank_you') > -1) { window.location.href = iframe.contentWindow.location.href; } }); } } catch (err) {} }); } function handleAddListenerCheckoutIframe() { let checkout_iframe_render_elem = document.getElementById('checkout_iframe_render_1634493037563'); checkout_iframe_render_elem.addEventListener('spz:dom-update', (e) => { handleSetObserver(); }) } handleAddListenerCheckoutIframe();