Replies: 1
Hi, I’ve got a website using the Storefront theme, and among my list of activated plugins is: woocommerce one page checkout, WooCommerce All Products For Subscriptions, Woocommerce Subscriptions, and WooCommerce Product Bundles.
I have a simple, single product page – however, it is available for one-time purchase or purchase by subscription. And the product page has the one page checkout enabled on a per-product basis (meaning that I ticked a checkbox in the products section of the WordPress CMS to make one page checkout apply to this product).
Anyway, I’m experiencing that in both the woocommerce blocks and the standard checkout form, the express checkout / payment request button appears (yay!). However, try as I might, I can’t get the express checkout / payment request button to appear at the top of my one page checkout form. (And so despite providing you context above, I suspect I’d only be having an issue with the woocommerce one page checkout plugin, not e.g. woocommerce subscriptions).
I can see that both the one page checkout (via line 1849 of the plugin’s woocommerce-one-page-checkout.php file) uses wc_get_template( ‘checkout/form-checkout.php’, array( ‘checkout’ => $checkout ) );. And for the pages where the express checkout does appear, they also implement the ‘checkout/form-checkout.php’ template in my woocommerce plugin’s files. So having a look at functions like display_payment_request_button_html() and should_show_payment_request_button() in …/woocommerce-gateway-stripe/includes/payment-methods/class-wc-stripe-payment-request.php, I suspect that the problem is that my product page / the woocommerce one page checkout, fails the “are_keys_set()” test, or some other problem is stopping the payment request buttons from showing. Are you able to suggest a fix?
