<br />
<b>Warning</b>:  Undefined array key "client_id" in <b>/www/wwwroot/www.yangyang-store.online/wp-content/plugins/wp-ecommerce-paypal/includes/public_shortcode.php</b> on line <b>159</b><br />
{"id":64,"date":"2025-10-13T01:41:21","date_gmt":"2025-10-12T17:41:21","guid":{"rendered":"https:\/\/www.yangyang-store.online\/?post_type=product&#038;p=64"},"modified":"2026-03-08T23:12:02","modified_gmt":"2026-03-08T15:12:02","slug":"onyx-earring-dish%ef%bc%88%e7%8e%9b%e7%91%99%e8%80%b3%e7%8e%af%e7%9b%98%ef%bc%89","status":"publish","type":"product","link":"https:\/\/www.yangyang-store.online\/index.php\/product\/onyx-earring-dish%ef%bc%88%e7%8e%9b%e7%91%99%e8%80%b3%e7%8e%af%e7%9b%98%ef%bc%89\/","title":{"rendered":"Onyx Earring Dish\uff08\u739b\u7459\u8033\u73af\u76d8\uff09"},"content":{"rendered":"<p>Enjoy the beautiful simplicity of the onyx earring tray. Perfect for making sure your precious jewels never get misplaced. Ideal on the vanity, dresser, nightstand or bath. Due to the natural grain in the stone each piece will vary slightly.<br \/>\nDimensions:<br \/>\nW: 3 3\/4&#8243; H: 1\/2&#8243;<\/p>\n<div class='wpecpp-container wpecpp-align-center'><form class='wpecpp-form wpecpp-form-disabled' id='rd3202e423f0e2cd2b97a0e6929926768' action='#' method='post'>    \r\n    <!-- PayPal SDK Loader with DOM check -->\r\n    <script>\r\n    (function() {\r\n        var sdkId = 'wpecpp-paypal-sdk-d28338a57a669db466e8317334b91638';\r\n        var sdkUrl = 'https:\/\/www.paypal.com\/sdk\/js?merchant-id=BXYHVNXQ383AE&currency=USD&intent=capture&components=buttons,funding-eligibility';\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\/www.yangyang-store.online\/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_rd3202e423f0e2cd2b97a0e6929926768 = [\"paypal\"];\r\n    <\/script>\r\n\r\n    <!-- Buttons container -->\r\n    <div id='wpecpp-paypal-button-container-rd3202e423f0e2cd2b97a0e6929926768' class='wpecpp-paypal-button-container wpecpp-vertical'><\/div>\r\n\r\n\t\r\n    <div id='wpecpp-paypal-message-rd3202e423f0e2cd2b97a0e6929926768' class='wpecpp-payment-message'><\/div>\r\n\r\n    <script>\r\n        (function() {\r\n            const message_rd3202e423f0e2cd2b97a0e6929926768 = document.getElementById('wpecpp-paypal-message-rd3202e423f0e2cd2b97a0e6929926768');\r\n            \r\n            \/\/ Wait for SDK to be fully loaded with polling\r\n            function initPayPalButton_rd3202e423f0e2cd2b97a0e6929926768() {\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_rd3202e423f0e2cd2b97a0e6929926768, 100);\r\n                    return;\r\n                }\r\n\r\n        paypal.getFundingSources().forEach(function (fundingSource) {\r\n            if ( wpecppPaypalFunding_rd3202e423f0e2cd2b97a0e6929926768.indexOf(fundingSource) > -1 ) {\r\n                const style = {\r\n                    shape: 'rect',\r\n                    label: 'pay',\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_rd3202e423f0e2cd2b97a0e6929926768.innerHTML = '';\r\n\r\n                        const form = document.getElementById('rd3202e423f0e2cd2b97a0e6929926768'),\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_rd3202e423f0e2cd2b97a0e6929926768.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_rd3202e423f0e2cd2b97a0e6929926768.innerHTML = '<span class=\"payment-error\">The payment was cancelled.<\/span>';\r\n                        }\r\n                    },\r\n                    onError: function (error) {\r\n                        message_rd3202e423f0e2cd2b97a0e6929926768.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-rd3202e423f0e2cd2b97a0e6929926768');\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_rd3202e423f0e2cd2b97a0e6929926768();\r\n        })(); \/\/ End IIFE\r\n    <\/script>\r\n    <input type='hidden' name='item_name' value='2\u00d7Onyx Earring Dish\uff08\u739b\u7459\u8033\u73af\u76d8\uff09' \/><input type='hidden' name='amount' value='20' \/><\/form><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Enjoy the beautiful simplicity of the onyx earring tray [&hellip;]<\/p>\n","protected":false},"featured_media":94,"comment_status":"open","ping_status":"closed","template":"","meta":[],"product_brand":[],"product_cat":[16],"product_tag":[],"class_list":{"0":"post-64","1":"product","2":"type-product","3":"status-publish","4":"has-post-thumbnail","6":"product_cat-marble-products","8":"first","9":"instock","10":"shipping-taxable","11":"purchasable","12":"product-type-simple"},"_links":{"self":[{"href":"https:\/\/www.yangyang-store.online\/index.php\/wp-json\/wp\/v2\/product\/64","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.yangyang-store.online\/index.php\/wp-json\/wp\/v2\/product"}],"about":[{"href":"https:\/\/www.yangyang-store.online\/index.php\/wp-json\/wp\/v2\/types\/product"}],"replies":[{"embeddable":true,"href":"https:\/\/www.yangyang-store.online\/index.php\/wp-json\/wp\/v2\/comments?post=64"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.yangyang-store.online\/index.php\/wp-json\/wp\/v2\/media\/94"}],"wp:attachment":[{"href":"https:\/\/www.yangyang-store.online\/index.php\/wp-json\/wp\/v2\/media?parent=64"}],"wp:term":[{"taxonomy":"product_brand","embeddable":true,"href":"https:\/\/www.yangyang-store.online\/index.php\/wp-json\/wp\/v2\/product_brand?post=64"},{"taxonomy":"product_cat","embeddable":true,"href":"https:\/\/www.yangyang-store.online\/index.php\/wp-json\/wp\/v2\/product_cat?post=64"},{"taxonomy":"product_tag","embeddable":true,"href":"https:\/\/www.yangyang-store.online\/index.php\/wp-json\/wp\/v2\/product_tag?post=64"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}