🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy
🌞Summer Sale 🔥UV Protection Canopy

🌞Summer Sale 🔥UV Protection Canopy

Price

$59.14 $44.99
Save $14.15

size

Please select a size

color

Please select a color

Quantity

Global Provision of Services
Free Shipping Over $59.99
Sustainable Manufacturing
PayPal & Credit Card Payment



 HURRY! Selling out fast! 
💖 99.3% of Reviewers Recommends This Product!
  • Love to hang outside but the summer heat is just unbearable?
  • This Patio Awning Sun Shade Sail allows you to enjoy the outdoors on your patio and garden without burning you to a crisp under the sun.
  • The sunshade provides enough shade for you without obstructing any of your view and fresh air. 
  • It also works well to provide coverage when its raining! 
  • You wouldn't want any of your barbecue pit and outdoor chairs to get wet right?🌴🌴
  • Use for: Patio, driveway, lawn, garden, pool, deck, courtyard, dooryard, park

  • Breathable fabric results in significant temperature reduction underneath the sail,  blocks up to 90% of harmful UV rays,(Effective harmful UV blocking protecting you and your loved ones)
  • Waterproof:which is durable and waterproof even under harsh weather conditions. Having a shade prevents your outdoor furniture from getting worn out by the weather conditions.

Wear-resisting, Corrosion-resisting, Fine toughness, Long lasting time.

s-l500 (10)
  • Made of 100% brand new 185gsm High-Density Polyethylene material, finished with strong stitched seam and durable stainless steel D-rings in each corner
  • Sunshade sails have curved sides to enhance pull strength and prevent drooping. (Middle-center of the sun shade will be shorter in width due to curves)

Match the sun shade sail of different sizes or colors, giving you a larger and more beautiful shading area.🌴🌴
Get the Measurement Right: Leave 0.5 to 1 foot space each corner, this is the space for hardware kits and tension adjustment.

Easy Installation: It Is very flexible with various hardware. As long as you have stable mounting points, it could be poles, trees, roofs, etc.

遮阳篷


  • Item Type: UV protection canopy
  • Size:7FT*7FT*7FT/10FT*10FT*10FT/13FT*13FT*13FT/7FT*10FT/10FT*13FT
  • Color: ,Orange, Blue,  Green, Beige, Gray
  • Use for: Patio, driveway, lawn, garden, pool, deck, courtyard, dooryard, park

  • 1 * UV protection canopy
  • 4 * 1.5M Rope(For Square version)
  • 3 * 1.5M Rope
  • 1 * Storage bag

Customer questions & answers:

  • Is this website safe?
  • Yes! Our site is SSL certified and 100% secure. We have securely processed over 150,000 orders and have an extremely high satisfaction rating. We've been in business since 2017.

  • Question: Can this shade be left up year round, even in snowy or rainy conditions?
  • Answer: Yes, when wet or snow will slightly droop temporarily. Then draw up, have tightened cords, but not frequently

  • Question: How transparent is the material?
  • Answer: It isn’t really transparent at all. Really cools the deck by like 15degrees! Love it!

  • Question: Can I attach this to trees?
  • Answer: Yes, but then you need to consider tension caused by the movement of the tree in wind. A very large tree (>18" diameter) and up 10' high attachment would not move too much to stretch fabric and tear. A smaller tree could move enough to rip it apart. Spring tensioner would help as well as breakaway clips.

  • Question: Does the wind come through or is it diverted by this sail?
  • Answer: The sail most definitely diverts the wind or catches it as a sail. We use it with our pergola and roll it up and secure it when not using it

Customer feedback

Frequently Asked Questions

Click here to track your package

How long is shipping?
You will receive an email with your tracking #

Is this website safe?
Yes! Our site is SSL certified and 100% secure. We have securely processed over 150,000 orders and have an extremely high satisfaction rating. We've been in business since 2017.

What If I am not happy with my purchase?
We offer a 100% satisfaction guarantee. We always do whatever it takes to make sure you are happy.

⚡️Stock sells fast - get yours today!

Click on "ADD TO CART" to get yours now! 



undefined

class SpzSmartBlockComponent extends SPZ.BaseElement { constructor(element) { super(element); this.templates_ = null; this.container_ = null; this.i18n_ = {}; this.config_ = {}; this.show_type_ = 3; this.product_resource_id_ = ''; this.collection_resource_id_ = ''; this.cart_items_ = []; this.customer_id_ = ''; this.order_id_ = ''; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { const template_type = window.SHOPLAZZA.meta.page.template_type; if (template_type === 1) { this.show_type_ = 3; this.product_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 2) { this.show_type_ = 4; this.collection_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 15){ this.show_type_ = 5; } else if (template_type === 13){ this.show_type_ = 6; } else if (template_type === 20){ this.show_type_ = 7; this.customer_id_ = window.SHOPLAZZA.customer.customer_id; } else if (template_type === 35){ this.show_type_ = 8; this.order_id_ = window.location.pathname.split('/').pop(); } this.templates_ = SPZServices.templatesForDoc(this.element); this.setAction_(); } mountCallback() { console.log('smart mounted'); const that = this; const themeName = window.SHOPLAZZA.theme.merchant_theme_name; const isGeek = /Geek/.test(themeName); this.fetchRules().then((res) => { if (res && res.rules && res.rules.length) { const blockEl = document.getElementById('smart_recommend_block'); SPZ.whenApiDefined(blockEl).then((api) => { api.render({data: res}, true).then(() => { if (isGeek && that.show_type_ === 6) { blockEl.querySelector('.plugin_container_wrpper').style.padding = '30px 0'; } const recommendStyle = document.createElement('style'); recommendStyle.innerHTML = ` .plugin__recommend_container,.app-recommend-card { display: none !important; } `; document.head.appendChild(recommendStyle); const fetchList = []; res.rules.forEach((rule) => { fetchList.push(this.fetchRuleProductList(rule.id)); }); const fetchAll = Promise.all(fetchList); fetchAll.then((p_res) => { res.rules.forEach((rule, index) => { rule.products = p_res[index] && p_res[index].products; const ruleEl = document.getElementById('smart_recommend_rule_' + rule.id); SPZ.whenApiDefined(ruleEl).then((api) => { api.render({data: rule}, true).then(() => { that.impressListen(`#smart_recommend_rule_ul_${rule.id}`, function(){ that.trackRuleImpress(rule); }); const btnElList = document.querySelectorAll(`#smart_recommend_rule_ul_${rule.id} button`); btnElList.forEach((btnEl) => { if (btnEl && rule.config && rule.config.quick_shop_button_bg_color && rule.config.quick_shop_button_text_color) { btnEl.style.backgroundColor = rule.config.quick_shop_button_bg_color; btnEl.style.color = rule.config.quick_shop_button_text_color; } }) }); }); }); }); }) }) } else { if (window.top !== window.self) { const template_type = window.SHOPLAZZA.meta.page.template_type; const holderEl = document.getElementById('smart_recommend_preview_no_data_placeholder'); SPZ.whenApiDefined(holderEl).then((api) => { api.render({data: { isCart: template_type === 13, isCollection: template_type === 2, isProduct: template_type === 1, isIndex: template_type === 15 }}, true); }); } } }); } setAction_() { this.registerAction('quickShop', (data) => { const that = this; const product_id = data.args.product_id; const productIndex = data.args.productIndex; const rule_id = data.args.rule_id; const ssp = data.args.ssp; const scm = data.args.scm; const cfb = data.args.cfb; const ifb = data.args.ifb; const modalRender = document.getElementById('smart_recommend_product_modal_render'); if (product_id) { this.fetchProductData(product_id).then((res) => { const product = res.products && res.products.length && res.products[0] || {}; product.cfb = cfb; product.ifb = ifb; SPZ.whenApiDefined(modalRender).then((api) => { api.render({product: product, productIndex: productIndex, rule_id: rule_id, ssp: ssp, scm: scm, show_type: that.show_type_}, true).then(() => { const modalEl = document.getElementById('smart_recommend_product_modal'); SPZ.whenApiDefined(modalEl).then((modal) => { that.impressListen('#smart_recommend_product_modal', function(){ that.trackQuickShop({ rule_id: rule_id, product_id: product_id }); }); modal.open(); }); const formEl = document.getElementById('smart_recommend_product_form'); SPZ.whenApiDefined(formEl).then((form) => { form.setProduct(product); }); const variantEl = document.getElementById('smart_recommend_product_variants'); SPZ.whenApiDefined(variantEl).then((variant) => { variant.handleRender(product); }); }); }) }); } }); this.registerAction('handleScroll', (data) => { this.directTo(data.args.rule_id, data.args.direction); }); this.registerAction('handleProductChange', (data) => { const variant = data.args.data.variant; const product = data.args.data.product; const imageRenderEl = document.getElementById('smart_recommend_product_image'); SPZ.whenApiDefined(imageRenderEl).then((api) => { api.render({ variant: variant, product: product }, true); }); }); this.registerAction('handleAtcSuccess', (detail) => { const data = detail.args; data.data.product = data.data.product || {}; data.data.variant = data.data.variant || {}; const product_id = data.data.product.id; const product_title = data.data.product.title; const variant_id = data.data.variant.id; const price = data.data.variant.price; const rule_id = data.rule_id; const aid = `smart_recommend.${this.show_type_}.${rule_id}`; const ifb = data.data.product.ifb; const cfb = data.data.product.cfb; const ssp = data.ssp; const scm = data.scm; const spm = `smart_recommend_${this.show_type_}.${data.spmIndex}`; const params = { id: product_id, product_id: product_id, number: 1, name: product_title, variant_id: variant_id, childrenId: variant_id, item_price: price, source: 'add_to_cart', _extra: { aid: aid, ifb: ifb, cfb: cfb, scm: scm, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, ssp: ssp, } }; this.tranckAddToCart(params); }); this.registerAction('addATCHook', (data) => { const params = data.args; const spm = `smart_recommend_${this.show_type_}.${params.spmIndex}`; this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({ event: 'dj.addToCart', params: { aid: `smart_recommend.${this.show_type_}.` + params.rule_id, ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, }, once: true }); }); } tranckAddToCart(detail) { if (window.$) { window.$(document.body).trigger('dj.addToCart', detail); } } fetchRules() { const payload = { show_type: this.show_type_, }; let that = this; if (this.show_type_ === 6) { let line_items = []; return this.fetchCart().then((res) => { if (res && res.cart && res.cart.line_items) { line_items = res.cart.line_items.map((item) => { return { product_id: item.product_id, variant_id: item.variant_id, quantity: item.quantity, price: item.price } }); } payload.line_items = line_items; that.cart_items_ = line_items; return that.fetchRulesRequest(payload); }); } else { if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return this.fetchRulesRequest(payload); } } fetchRulesRequest(payload) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_query", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }); } fetchCart() { return fetch(`/api/cart/cart-select?r=${Math.random().toString(36).slice(-4)}`) .then((res) => { if (res.ok) { return res.json(); } }); } fetchRuleProductList(rule_id) { const payload = { page: 1, limit: 100, fields: ["title", "url", "image", "min_price_variant.price", "min_price_variant.compare_at_price"], rule_id: rule_id, }; if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 6) { payload.line_items = this.cart_items_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); }); } fetchProductData(product_id) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ product_ids: [product_id], fields: [ "images", "options", "min_price_variant", "variants"] }) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); const loadingEl = document.getElementById('smart_recommend_loading'); if (loadingEl) { loadingEl.style.display = 'none'; } }); } getStyle(ele, style) { if (!ele) return; if (window.getComputedStyle) { return window.getComputedStyle(ele)[style]; } return ele.currentStyle[style]; } directTo(id, direction) { const scrollElement = document.getElementById(`smart_recommend_rule_ul_${id}`); const blockWidth = parseInt(this.getStyle(scrollElement, 'width')); const scrollLength = (blockWidth * 0.19 - 12) * 5; const scrollPoint = scrollElement.scrollWidth - scrollElement.clientWidth; if (!scrollElement) return; if (direction === 'left') { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft - scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: Math.max(scrollElement.scrollLeft - scrollLength, 0), behavior: 'smooth' }); } else { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint + 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: scrollElement.scrollLeft >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); } } trackRuleImpress(rule) { if (window.sa && window.sa.track) { window.sa.track("plugin_common", { plugin_name: "upsell", event_type: "impressions", rule_id: rule.id, ssp: rule.ssp, scm: rule.scm, show_type: this.show_type_, support_app_block: window.SHOPLAZZA.theme.support_app_block }); window.sa.track("module_impressions", { aid: `smart_recommend.${this.show_type_}.${rule.id}`, support_app_block: window.SHOPLAZZA.theme.support_app_block }); } } trackQuickShop(data) { window.sa && sa.track && sa.track("plugin_common", { plugin_name: "upsell", event_type: "quick_shop", rule_id: data.rule_id, product_id: data.product_id, show_type: this.show_type_, }); } impressListen(selector, cb) { const el = document.querySelector(selector); const onImpress = (e) => { if (e) { e.stopPropagation(); } cb(); }; if (el && !el.getAttribute('imprsd')) { el.addEventListener('impress', onImpress) } else if (el) { onImpress(); } } } SPZ.defineElement('spz-custom-smart-block', SpzSmartBlockComponent);