<br />
<b>Warning</b>:  Undefined array key "client_id" in <b>/www/wwwroot/yangpeng-store.appleinc.cn/wp-content/plugins/wp-ecommerce-paypal/includes/public_shortcode.php</b> on line <b>159</b><br />
{"id":99,"date":"2025-12-29T10:15:15","date_gmt":"2025-12-29T10:15:15","guid":{"rendered":"https:\/\/yangpeng-store.appleinc.cn\/?post_type=product&#038;p=99"},"modified":"2026-05-20T15:15:55","modified_gmt":"2026-05-20T15:15:55","slug":"outdoor-gas-stove-windproof-stainless-steel%e6%88%b7%e5%a4%96%e7%87%83%e6%b0%94%e7%81%b6%e9%98%b2%e9%a3%8e%e4%b8%8d%e9%94%88%e9%92%a2","status":"publish","type":"product","link":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/product\/outdoor-gas-stove-windproof-stainless-steel%e6%88%b7%e5%a4%96%e7%87%83%e6%b0%94%e7%81%b6%e9%98%b2%e9%a3%8e%e4%b8%8d%e9%94%88%e9%92%a2\/","title":{"rendered":"Outdoor gas stove windproof stainless steel(\u6237\u5916\u71c3\u6c14\u7076\u9632\u98ce\u4e0d\u9508\u94a2)"},"content":{"rendered":"<p>Description:<br \/>\nEnjoy outdoor cooking without fear of the wind.<br \/>\nBalanced flame, energy efficient flame gathering.<br \/>\nThree-dimensional windbreak: no need to worry about the flame blowing out, isolate the flame to protect the surrounding equipment.<br \/>\nMade of stainless steel, easy to clean and will not rust.<br \/>\nThe louvre design is stable and firm.<br \/>\nSpecifications:<br \/>\nMaterial: stainless steel<br \/>\nSpecification: 210*210*25mm<br \/>\nApplicable gas: Gas, natural gas, liquefied gas<br \/>\nPackage Included:<br \/>\n1*Windbreak<div class='wpecpp-container wpecpp-align-center'><form class='wpecpp-form wpecpp-form-disabled' id='r406ff5ee31a16107296441501e8191b4' action='#' method='post'>    \r\n    <!-- PayPal SDK Loader with DOM check -->\r\n    <script>\r\n    (function() {\r\n        var sdkId = 'wpecpp-paypal-sdk-2915dfed890f3f5f7ccd38ba2944b9f0';\r\n        var sdkUrl = 'https:\/\/www.paypal.com\/sdk\/js?merchant-id=VJ2VV6NPK39NJ&currency=USD&intent=capture&components=buttons,funding-eligibility&enable-funding=card';\r\n        \r\n        \/\/ Check if SDK script already exists in DOM or is being loaded\r\n        if (!document.getElementById(sdkId)) {\r\n            var script = document.createElement('script');\r\n            script.id = sdkId;\r\n            script.src = sdkUrl;\r\n            script.setAttribute('data-partner-attribution-id', '<br \/>\n<b>Warning<\/b>:  Undefined array key \"bn_code\" in <b>\/www\/wwwroot\/yangpeng-store.appleinc.cn\/wp-content\/plugins\/wp-ecommerce-paypal\/includes\/public_shortcode.php<\/b> on line <b>199<\/b><br \/>\n');\r\n                        document.head.appendChild(script);\r\n        }\r\n    })();\r\n    <\/script>\r\n    \r\n    <style>\r\n        .wpecpp-paypal-button-container > *,\r\n        .wpecpp-paypal-hosted-fields-container .wpecpp-paypal-btn {\r\n            max-width: 300px;\r\n        }\r\n        .wpecpp-paypal-hosted-fields-container .wpecpp-paypal-btn {\r\n            height: 40px;\r\n        }\r\n    <\/style>\r\n    \r\n    <script>\r\n        const wpecppPaypalFunding_r406ff5ee31a16107296441501e8191b4 = [\"paypal\",\"card\"];\r\n    <\/script>\r\n\r\n    <!-- Buttons container -->\r\n    <div id='wpecpp-paypal-button-container-r406ff5ee31a16107296441501e8191b4' class='wpecpp-paypal-button-container wpecpp-vertical'><\/div>\r\n\r\n\t\r\n    <div id='wpecpp-paypal-message-r406ff5ee31a16107296441501e8191b4' class='wpecpp-payment-message'><\/div>\r\n\r\n    <script>\r\n        (function() {\r\n            const message_r406ff5ee31a16107296441501e8191b4 = document.getElementById('wpecpp-paypal-message-r406ff5ee31a16107296441501e8191b4');\r\n            \r\n            \/\/ Wait for SDK to be fully loaded with polling\r\n            function initPayPalButton_r406ff5ee31a16107296441501e8191b4() {\r\n                \/\/ Check if PayPal SDK is fully loaded with all required methods\r\n                if ( typeof paypal === 'undefined' || \r\n                     typeof paypal.getFundingSources !== 'function' ||\r\n                     typeof paypal.Buttons !== 'function' ) {\r\n                    \/\/ SDK not loaded yet, wait and try again\r\n                    setTimeout(initPayPalButton_r406ff5ee31a16107296441501e8191b4, 100);\r\n                    return;\r\n                }\r\n\r\n        paypal.getFundingSources().forEach(function (fundingSource) {\r\n            if ( wpecppPaypalFunding_r406ff5ee31a16107296441501e8191b4.indexOf(fundingSource) > -1 ) {\r\n                const style = {\r\n                    shape: 'rect',\r\n                    label: 'buynow',\r\n                    height: 40                };\r\n\r\n                if ( fundingSource !== 'card' ) {\r\n                    let color = 'gold';\r\n                    if (fundingSource === 'venmo' && color === 'gold') {\r\n                        color = 'blue';\r\n                    } else if (['ideal', 'bancontact', 'giropay', 'eps', 'sofort', 'mybank', 'p24'].indexOf(fundingSource) > -1 && ['gold', 'blue'].indexOf(color) > -1) {\r\n                        color = 'default';\r\n                    }\r\n                    style.color = color;\r\n                }\r\n\r\n                const button = paypal.Buttons({\r\n                    fundingSource: fundingSource,\r\n                    style: style,\r\n                    createOrder: function() {\r\n                        message_r406ff5ee31a16107296441501e8191b4.innerHTML = '';\r\n\r\n                        const form = document.getElementById('r406ff5ee31a16107296441501e8191b4'),\r\n                            formData = new FormData(),\r\n                            nameInput = form.querySelector('[name=\"item_name\"]'),\r\n                            priceInput = form.querySelector('[name=\"amount\"]'),\r\n                            quantityInput = form.querySelector('[name=\"quantity\"]');\r\n\r\n                        formData.append('action', 'wpecpp-ppcp-order-create');\r\n                        formData.append('nonce', wpecpp.nonce);\r\n                        formData.append('name', nameInput ? nameInput.value : '');\r\n                        formData.append('price', priceInput ? priceInput.value : 0);\r\n                        if (quantityInput) {\r\n                            formData.append('quantity', quantityInput.value);\r\n                        }\r\n\r\n                        return fetch(wpecpp.ajaxUrl, {\r\n                            method: 'post',\r\n                            body: formData\r\n                        }).then(function(response) {\r\n                            return response.json();\r\n                        }).then(function(data) {\r\n                            let orderID = false;\r\n                            if (data.success && data.data.order_id) {\r\n                                orderID = data.data.order_id;\r\n                            } else {\r\n                                throw data.data && data.data.message ? data.data.message : 'An unknown error occurred while creating the order. Please reload the page and try again.';\r\n                            }\r\n                            return orderID;\r\n                        });\r\n                    },\r\n                    onApprove: function(data) {\r\n                        const formData = new FormData();\r\n\r\n                        formData.append('action', 'wpecpp-ppcp-order-finalize');\r\n                        formData.append('nonce', wpecpp.nonce);\r\n                        formData.append('order_id', data.orderID);\r\n\r\n                        return fetch(wpecpp.ajaxUrl, {\r\n                            method: 'post',\r\n                            body: formData\r\n                        }).then(function(response) {\r\n                            return response.json();\r\n                        }).then(function(data) {\r\n                            if (data.success) {\r\n                                if (wpecpp.return.length) {\r\n                                    window.location.href = wpecpp.return;\r\n                                } else {\r\n                                    message_r406ff5ee31a16107296441501e8191b4.innerHTML = '<span class=\"payment-success\">' + data.data.message + '<\/span>';\r\n                                }\r\n                            } else {\r\n                                throw data.data.message;\r\n                            }\r\n                        });\r\n                    },\r\n                    onCancel: function() {\r\n                        if (wpecpp.cancel.length) {\r\n                            window.location.href = wpecpp.cancel;\r\n                        } else {\r\n                            message_r406ff5ee31a16107296441501e8191b4.innerHTML = '<span class=\"payment-error\">The payment was cancelled.<\/span>';\r\n                        }\r\n                    },\r\n                    onError: function (error) {\r\n                        message_r406ff5ee31a16107296441501e8191b4.innerHTML = '<span class=\"payment-error\">' + (error ? error : '<strong>Site admin<\/strong>, an error was detected in the plugin settings.<\/br>Please check the PayPal connection and product settings (price, name, etc.)') + '<\/span>';\r\n                    }\r\n                });\r\n\r\n                if (button.isEligible()) {\r\n                    button.render('#wpecpp-paypal-button-container-r406ff5ee31a16107296441501e8191b4');\r\n                }\r\n            }\r\n        });\r\n\r\n                    } \/\/ End initPayPalButton function\r\n            \r\n            \/\/ Start initialization (will poll until SDK is ready)\r\n            initPayPalButton_r406ff5ee31a16107296441501e8191b4();\r\n        })(); \/\/ End IIFE\r\n    <\/script>\r\n    <input type='hidden' name='item_name' value='4\u00d7Outdoor gas stove windproof stainless steel(\u6237\u5916\u71c3\u6c14\u7076\u9632\u98ce\u4e0d\u9508\u94a2)' \/><input type='hidden' name='amount' value='28' \/><\/form><\/div><\/p>\n<table class=\"ahb-calendars-list\" cellspacing=\"10\" cellpadding=\"6\">\n<tbody>\n<tr>\n<td nowrap=\"nowrap\"><script type=\"text\/javascript\">\n var cp_contactformpp_ready_to_go = false;\n function doValidate_1(form)\n {\n    if (cp_contactformpp_ready_to_go) return false; \n    $dexQuery = jQuery;\n    document.cp_contactformpp_pform_1.cp_ref_page.value = document.location;\n        {\n        var cpefb_error = 0;\n        $dexQuery(\"#cp_contactformpp_pform_1\").find(\".cpefb_error\").each(function(index){\n            if ($dexQuery(this).css(\"display\")!=\"none\")\n                cpefb_error++;    \n            });\n        if (cpefb_error) return false;    \n        cp_contactformpp_ready_to_go = true;\n        cfwpp_blink(\".pbSubmit\");\n        document.getElementById(\"form_structure_1\").value = '';    \n        return true;\n    }\n }\nfunction cfwpp_cerror_1(){$dexQuery = jQuery;$dexQuery(\"#hdcaptcha_error_1\").css('top',$dexQuery(\"#hdcaptcha_cp_contact_form_paypal_post_1\").outerHeight());$dexQuery(\"#hdcaptcha_error_1\").css(\"display\",\"inline\");}\nfunction cfwpp_blink(selector){\n        try {   \n            $dexQuery = jQuery;\n            $dexQuery(selector).fadeOut(1000, function(){\n                $dexQuery(this).fadeIn(1000, function(){\n                    try {\n                        if (cp_contactformpp_ready_to_go)\n                            cfwpp_blink(this); \n                    } catch (e) {}  \n                });\n            });         \n        } catch (e) {}           \n}\n<\/script>    \n    <\/form class=\"cfwppformfix\">\r\n<form class=\"cpp_form no-prefetch\" name=\"cp_contactformpp_pform_1\" id=\"cp_contactformpp_pform_1\" action=\"\" method=\"post\" enctype=\"multipart\/form-data\" onsubmit=\"return doValidate_1(this);\"><input type=\"hidden\" name=\"cp_pform_psequence\" value=\"_1\" \/><input type=\"hidden\" name=\"cp_contactformpp_pform_process\" value=\"1\" \/><input type=\"hidden\" name=\"cp_contactformpp_id\" value=\"2\" \/><input type=\"hidden\" name=\"cp_ref_page\" value=\"\" \/><input type=\"hidden\" name=\"form_structure_1\" id=\"form_structure_1\" size=\"180\" value=\"[[{&quot;name&quot;:&quot;email&quot;,&quot;index&quot;:0,&quot;title&quot;:&quot;\\u7535\\u5b50\\u90ae\\u7bb1&quot;,&quot;ftype&quot;:&quot;femail&quot;,&quot;userhelp&quot;:&quot;&quot;,&quot;csslayout&quot;:&quot;&quot;,&quot;required&quot;:true,&quot;predefined&quot;:&quot;&quot;,&quot;size&quot;:&quot;medium&quot;,&quot;shortlabel&quot;:&quot;&quot;,&quot;userhelpTooltip&quot;:false,&quot;predefinedClick&quot;:false,&quot;equalTo&quot;:&quot;&quot;},{&quot;name&quot;:&quot;subject&quot;,&quot;index&quot;:1,&quot;title&quot;:&quot;\\u4e3b\\u9898&quot;,&quot;required&quot;:true,&quot;ftype&quot;:&quot;ftext&quot;,&quot;userhelp&quot;:&quot;&quot;,&quot;csslayout&quot;:&quot;&quot;,&quot;predefined&quot;:&quot;&quot;,&quot;size&quot;:&quot;medium&quot;,&quot;shortlabel&quot;:&quot;&quot;,&quot;userhelpTooltip&quot;:false,&quot;predefinedClick&quot;:false,&quot;minlength&quot;:&quot;&quot;,&quot;maxlength&quot;:&quot;&quot;,&quot;equalTo&quot;:&quot;&quot;},{&quot;name&quot;:&quot;message&quot;,&quot;index&quot;:2,&quot;size&quot;:&quot;large&quot;,&quot;required&quot;:true,&quot;title&quot;:&quot;\\u7559\\u8a00&quot;,&quot;ftype&quot;:&quot;ftextarea&quot;,&quot;userhelp&quot;:&quot;&quot;,&quot;csslayout&quot;:&quot;&quot;,&quot;predefined&quot;:&quot;&quot;,&quot;shortlabel&quot;:&quot;&quot;,&quot;userhelpTooltip&quot;:false,&quot;predefinedClick&quot;:false,&quot;minlength&quot;:&quot;&quot;,&quot;maxlength&quot;:&quot;&quot;}],[{&quot;title&quot;:&quot;&quot;,&quot;description&quot;:&quot;&quot;,&quot;formlayout&quot;:&quot;top_aligned&quot;}]]\" \/>\r\n<div id=\"fbuilder\">\r\n  <div id=\"fbuilder_1\">\r\n      <div id=\"formheader_1\"><\/div>\r\n      <div id=\"fieldlist_1\"><\/div>\r\n  <\/div>\r\n<\/div>    \r\n<div style=\"display:none\">\r\n<div id=\"cpcaptchalayer_1\">\r\n<\/div>\r\n<\/div>\r\n    <div id=\"cp_subbtn_1\" class=\"cp_subbtn\">Submit<\/div>\r\n<div style=\"clear:both\"><\/div>\r\n<\/form><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>Description: Enjoy outdoor cooking without fear of the  [&hellip;]<\/p>\n","protected":false},"featured_media":78,"comment_status":"open","ping_status":"closed","template":"","meta":[],"product_brand":[],"product_cat":[16],"product_tag":[],"class_list":["post-99","product","type-product","status-publish","has-post-thumbnail","product_cat-outdoor-products","first","instock","shipping-taxable","purchasable","product-type-simple"],"_links":{"self":[{"href":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/wp-json\/wp\/v2\/product\/99","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/wp-json\/wp\/v2\/types\/product"}],"replies":[{"embeddable":true,"href":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/wp-json\/wp\/v2\/comments?post=99"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/wp-json\/wp\/v2\/media\/78"}],"wp:attachment":[{"href":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/wp-json\/wp\/v2\/media?parent=99"}],"wp:term":[{"taxonomy":"product_brand","embeddable":true,"href":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/wp-json\/wp\/v2\/product_brand?post=99"},{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/wp-json\/wp\/v2\/product_cat?post=99"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/yangpeng-store.appleinc.cn\/index.php\/wp-json\/wp\/v2\/product_tag?post=99"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}