Custom Photo Pet Face Christmas Trees - Personalized Combo Circle Acrylic Ornament

$17.95

Produced in the US,the UK,and AU

Fast turnaround

Material : Acrylic
Pack (Can Be Different Designs) : 1 PC
Global delivery
Free Shipping Over $49!
Sustainably made
Quantity
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);
Description

Custom Photo Pet Face Christmas Tree – Personalized Combo Circle Acrylic Ornament 🎄🐾

This Christmas, make your tree even more special with a Custom Photo Pet Face Christmas Tree Ornament! 🎅✨ Perfect for pet lovers, this unique personalized ornament lets you showcase your pet’s adorable face along with their name, creating a lasting memory that will brighten up your holiday season for years to come! 🌟

✨ Key Features:

  • Personalized Pet Photo: Upload a photo of your pet’s face, and we’ll custom-print it onto the ornament, turning your furry friend into a festive decoration! 🐶🐱
  • Pet’s Name Customization: Add your pet’s name beneath their photo for a completely personalized touch. 🖋️
  • Combo Circle Design: The ornament features a combination of a charming Christmas tree design along with your pet’s face, creating a fun and festive look for your tree. 🎄
  • Durable Acrylic Material: Made from high-quality acrylic, this ornament is lightweight, durable, and perfect for hanging on your Christmas tree. 🌟
  • Perfect Gift for Pet Lovers: This ornament makes a thoughtful, one-of-a-kind gift for pet owners, bringing a personal touch to their holiday celebrations. 🎁
  • Unique Holiday Keepsake: Create a timeless keepsake that will become a cherished part of your Christmas tree tradition year after year. 💖

🎄 Why You’ll Love It:

  • Custom Photo Design: Your pet’s photo becomes the center of attention, making this ornament extra special.
  • Pet Name Personalization: Add a sweet, personal touch with your pet’s name displayed below their photo.
  • Festive and Fun: The Christmas tree theme paired with your pet’s face brings extra charm and joy to your holiday décor.
  • Perfect for Any Pet: Dogs, cats, or even small pets – this ornament works beautifully for all pet lovers!
  • Durable & Lightweight: Made from clear acrylic, it’s sturdy and light enough to hang anywhere on your tree without worry.

💬 How to Order:

  1. Upload a Photo of Your Pet: Choose a clear, high-quality photo of your pet's face.
  2. Add Your Pet’s Name: Personalize the ornament with your pet's name.
  3. We will customize and print the ornament with your pet's face and name, then send it to you ready to hang on your Christmas tree!

🎅 Celebrate the holidays with your furry friend – this Custom Photo Pet Face Christmas Tree Ornament is a beautiful way to include your pet in the holiday festivities. Whether as a gift for yourself or a fellow pet lover, this ornament will bring a smile to anyone’s face! 🐾💖

🎁 Order yours today and make your Christmas tree even more paws-itively perfect! 🎄

    Shipping & Return

    How It Works

    1 - Production (2 to 5 days): After we receive your order, we shift into production mode. During busy seasons, the process typically takes 1-2 days longer. Please understand.

    2 - Shipping (7-14 Days or Faster): Want to get your item faster? Select the 'Expedited VIP' option after adding your product to the cart for the fastest shipping method we can provide. There are also different shipping options available at checkout.

    Delivery

    Please note that it is the customer's responsibility to provide us with a correct and complete shipping address. If your shipping address is different from your billing address, please specify this during checkout.

    After we begin to deliver your order, we will send you a Shipping Notification email, including the information of your Order ID and Tracking Shipping Number. You can check the status of your order online by logging into the Track My Order page with your Order ID and email.

    Please Note: If you do not receive our order notification email, please check your spam box, or please contact us to provide the email address you used to place your order. If you have any other questions regarding shipping, please contact our Customer Service Representatives.

    • The above time frame is only applicable for orders to the US with standard shipping methods.

    • International orders: It may take 2-5 days longer due to the customs clearance process.

    *Due to unpredictable postal service delays, specified delivery dates are not guaranteed.

    • For more information about Shipping and Delivery, visit here.

    • Learn more about Returns and Refunds here.

    Satisfaction Guarantee

    We want you to be satisfied with the products you buy from us. 

    We have 24/7/365 ticket and email support. Please contact us at service@forlovergift.com if you need any assistance.

    Customer Reviews
    Here are what our customers say.
    Write a Review
    Customer Reviews
    Wow you reached the bottom
    Newest
    Most liked
    Highest ratings
    Lowest ratings
    ×
    class SpzCustomFileUpload extends SPZ.BaseElement { constructor(element) { super(element); this.uploadCount_ = 0; this.fileList_ = []; } buildCallback() { this.action = SPZServices.actionServiceForDoc(this.element); this.registerAction('upload', (data) => { this.handleFileUpload_(data.event?.detail?.data || []); }); this.registerAction('delete', (data) => { this.handleFileDelete_(data?.args?.data); }); this.registerAction('preview', (data) => { this.handleFilePreview_(data?.args?.data); }); this.registerAction('limit', (data) => { this.handleFileLimit_(); }); this.registerAction('sizeLimit', (data) => { this.handleFileSizeLimit_(); }); } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } setData_(count, file) { this.uploadCount_ = count; this.fileList_ = file; } handleFileUpload_(data) { data.forEach(i => { if(this.fileList_.some(j => j.url === i.url)) return; this.fileList_.push(i); }) this.uploadCount_++; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileUpload", { count: this.uploadCount_, files: this.fileList_}); if(this.fileList_.length >= 5){ document.querySelector('#review_upload').style.display = 'none'; } if(this.fileList_.length > 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '8px'; } } handleFileDelete_(index) { this.fileList_.splice(index, 1); this.uploadCount_--; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleFileDelete", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; if(this.fileList_?.length === 0){ document.querySelector('.apps-reviews-write-anonymous-box').style.marginTop = '132px'; } } handleFilePreview_(index) { const finalPreviewData = this.fileList_[index]; const filePreviewModal = document.getElementById('filePreviewModal'); const fullScreenVideo = document.getElementById('fullScreenVideo'); const fullScreenImage = document.getElementById('fullScreenImage'); const previewModalClose = document.getElementById('previewModalClose'); const previewLoading = document.getElementById('previewLoading'); filePreviewModal.style.display = 'block'; previewLoading.style.display = 'flex'; if(finalPreviewData?.type === 'video'){ const media = this.mediaParse_(this.fileList_[index]?.url); fullScreenVideo.addEventListener('canplaythrough', function() { previewLoading.style.display = 'none'; }); fullScreenImage.src = ''; fullScreenImage.style.display = 'none'; fullScreenVideo.style.display = 'block'; fullScreenVideo.src = media.mp4 || ''; } else { fullScreenImage.onload = function() { previewLoading.style.display = 'none'; }; fullScreenVideo.src = ''; fullScreenVideo.style.display = 'none'; fullScreenImage.style.display = 'block'; fullScreenImage.src = finalPreviewData.url; } previewModalClose.addEventListener('click', function() { filePreviewModal.style.display = 'none'; }); } handleFileLimit_() { alert(window.AppReviewsLocale.comment_file_limit || 'please do not upload files more than 5'); this.triggerEvent_("handleFileLimit"); } handleFileSizeLimit_() { alert(window.AppReviewsLocale.comment_file_size_limit || 'File size does not exceed 10M'); } clear(){ this.fileList_ = []; this.uploadCount_ = 0; sessionStorage.setItem('fileList', JSON.stringify(this.fileList_)); this.triggerEvent_("handleClear", { count: this.uploadCount_, files: this.fileList_}); document.querySelector('#review_upload').style.display = 'block'; } mediaParse_(url) { var result = {}; try { url.replace(/[?&]+([^=&]+)=([^&]*)/gi, function (str, key, value) { try { result[key] = decodeURIComponent(value); } catch (e) { result[key] = value; } }); result.preview_image = url.split('?')[0]; } catch (e) {}; return result; } triggerEvent_(name, data) { const event = SPZUtils.Event.create(this.win, name, data); this.action.trigger(this.element, name, event); } } SPZ.defineElement('spz-custom-file-upload', SpzCustomFileUpload);
    The review would not show in product details on storefront since it does not support to.