jackshao1981
Forum Replies Created
-
Your temporary fix points to a very specific compatibility path: the frontend render is receiving an invalid or empty
exitPDFViewerType, while Adobe’s PDF Embed API now only acceptsRETURNorCLOSE.One thing I would check is whether older saved blocks/settings contain a blank or legacy value that the updated plugin now passes through unchanged.
Useful evidence for the plugin author:
- Whether this happens only for PDFs embedded before the update or also for newly embedded PDFs.
- The saved block/plugin setting value for
exitPDFViewerTypeon an affected PDF. - Whether re-saving the affected page changes the frontend output.
- Whether the frontend JS receives
undefined, an empty string, or another value before your fallback changes it toCLOSE.
If older saved settings are the trigger, the durable fix is probably a plugin-side normalization/default before calling Adobe’s API, so invalid saved values fall back to
CLOSEorRETURN.Forum: Plugins
In reply to: [Revolut Gateway for WooCommerce] Connect to revolut issue withBecause the same setup works on staging but fails on production, I would first test whether the production server can fetch Revolut’s Apple Pay domain association file at all.
Useful checks:
- From the production server, test a direct request to the Revolut URL that appears in the error.
- Compare the result with the same request from staging.
- Check whether production has a firewall, security plugin, outbound HTTP restriction, DNS difference, IPv6 issue, or SSL/CA bundle issue that could block
assets.revolut.com. - Check WooCommerce / WordPress logs at the exact onboarding timestamp for the HTTP status or cURL error returned by the fetch.
If staging can read the file and production cannot, the likely next step is to identify the production-only network/security difference rather than re-running onboarding repeatedly.
For the plugin author, the most useful evidence would be: production HTTP status/cURL error for that URL, staging result for the same URL, and whether other outbound HTTPS requests from production work normally.
This looks like a stale Express Checkout / Payment Request state issue rather than the donation AJAX value itself, especially because your
wc_stripe_get_selected_product_dataresponse already contains the updated amount.One useful test would be to confirm exactly where the first stale value remains:
- Change the donation amount once and confirm the AJAX response returns the new amount.
- Before opening Google Pay / Apple Pay, check whether the Express Checkout element receives a remount/reinitialization event.
- Open the payment sheet and compare the amount shown there with the latest AJAX response.
- Close the sheet, change the amount again, and check whether a second update triggers a different remount/update path.
If the first change updates the backend/product data but does not recreate or update the Stripe Express Checkout element, the likely fix area is the frontend bridge between the donation amount change event and the Stripe express element refresh, not the WooCommerce product amount calculation itself.
It may help the plugin author if you can share the exact JS event fired after the donation amount changes and whether the express checkout button is remounted after that first change.
Hi, one useful next step may be to continue this in the WooCommerce PayPal Payments support forum too, since the plugin support reply above says the current site appears to be using that plugin rather than this one.
Before reposting or continuing there, I would try to make the reproduction case narrower so the PayPal/WooCommerce side has something concrete to compare:
- Run one Android test with WP Rocket JavaScript delay/defer fully disabled, not only with the PayPal SDK excluded. That helps rule out a delayed checkout fragment or shipping recalculation script.
- Record whether the WooCommerce customer/session country is still
DEimmediately before opening PayPal and whether it changes after returning from the PayPal mobile flow. - Test with one simple physical product, no custom shipping class, and only one Germany free-shipping method enabled.
- Include the exact
woocommerce_rest_invalid_address_countrylog entry, Android browser/user agent, and whether the flow opens PayPal in browser or through an app handoff.
The most useful clue seems to be whether WooCommerce has the correct country before PayPal and then receives or recalculates with
USafter the Android PayPal return. If that is reproducible, it should make the issue easier to route to the correct plugin/support team.Hi, since disabling “Customer data in data layer” immediately brings checkout speed back, I would try to separate two possible causes: slow data collection on the PHP/WooCommerce side versus a browser-side dataLayer/script execution bottleneck.
A small isolation test could help:
- Open DevTools Network during a test order and check whether the delay is before the order request completes or after the response while scripts continue running.
- Check WooCommerce logs and PHP slow logs for calls triggered during checkout, especially anything loading customer/order/session metadata.
- Temporarily test with GTM container disabled but the plugin option still enabled. If checkout is still slow, the delay is likely generated before GTM runs. If it becomes fast, the GTM tags/triggers may be reacting heavily to the richer customer data.
- Compare the size of the pushed customer data object before and after the WooCommerce 10.7.0 update, especially if custom fields or billing/shipping metadata are being added.
Because you rely on this data for integrations, I would not treat disabling it as a real fix. The useful next clue is whether the one-minute delay is server-side checkout processing or browser-side tag execution.
Forum: Plugins
In reply to: [Customer Reviews for WooCommerce] double email remindersSince the duplicate reminders are sent at exactly the same time, I would try to separate two possibilities:
1. The reminder job is being triggered twice.
2. The reminder job is triggered once, but the SMTP layer sends the same message twice.A few low-risk checks may help narrow that down:
1. Check whether both duplicate emails have the same subject, recipient, timestamp, and message ID. If your SMTP plugin logs outgoing emails, compare the two log rows. If there are two different SMTP log rows, the duplicate likely happens before or inside WordPress. If there is one SMTP log row but the customer receives two emails, the issue may be downstream from WordPress.
2. Check WooCommerce > Status > Scheduled Actions and search for CusRev/review reminder related actions around the exact time the duplicate emails were sent. If there are two matching scheduled actions with the same order/customer/time, that points to duplicated scheduling.
3. In the Customer Reviews settings, confirm there is only one active reminder rule/campaign for the same order status and timing. Also check whether both an automatic reminder and a separate follow-up/reminder option could match the same completed order.
4. If possible, test with one internal test order and one internal email address. Move the order through the same status path once, then record whether one or two reminder actions are created before the email is actually sent.
5. Since you mentioned WP SMTP, I would not assume it is the cause yet, but I would keep its email log enabled during the test. The key evidence is whether WordPress creates two outgoing email events or only one.
If you can share a redacted screenshot of the relevant reminder settings and the matching Scheduled Actions rows around the duplicate send time, it should be easier to tell whether this is duplicated scheduling, duplicated order-status triggering, or duplicated SMTP sending.
Forum: Plugins
In reply to: [WooCommerce] Taxes incorrectly being addedOne way to narrow this down is to separate “tax is actually being charged twice” from “the cart/checkout display is showing the tax breakdown in a confusing way.”
This is only a WooCommerce settings/debugging suggestion, not tax advice.
I would test with one temporary simple product so there is no existing product data involved:
- Create a temporary product priced at exactly R115. Set Tax status to Taxable and Tax class to Standard.
- In WooCommerce > Settings > Tax > Standard rates, confirm there is only one ZA 15% row that can match the customer’s location. If there are multiple matching rows, postcode/city wildcard rows, or compound tax enabled, WooCommerce may apply more than expected.
- Add that test product to the cart while logged out or in a private window. If the cart total becomes R115, then the tax-inclusive price is being interpreted correctly and the issue may be product-specific or display-related. If it becomes R132.25, WooCommerce is treating the product price as tax-exclusive somewhere.
- Check the product itself: Tax status should be Taxable, tax class should be the intended class, and there should not be a custom field/import/plugin setting overriding the price or tax class.
- Since the status report shows a block theme and checkout/cart blocks, I would also compare the same test using a classic shortcode cart/checkout page or Storefront, as WooCommerce support suggested. That helps distinguish tax calculation from block/theme display behavior.
If you share screenshots of the Tax options page, the Standard rates table, and the cart totals for a R115 test product, it should be much easier to see whether this is a matching tax-rate issue, product-level tax-class issue, customer-location issue, or cart/checkout display issue.
Forum: Plugins
In reply to: [WooCommerce] Unable to generate the analyticsThis looks like an Analytics import / Action Scheduler queue issue rather than a normal report-filter issue, especially because both Analytics and old reports show 0 and the import gets stuck.
I would check it in this order:
- In WooCommerce > Status > Scheduled Actions, filter for failed / pending / past-due actions and look for analytics/import-related actions around the time the import was started. If there are many actions older than a day, that can point to a WP-Cron or queue runner issue.
- In WooCommerce > Status > Tools, run Clear Analytics Cache, then go back to Analytics > Settings and try importing only a very small date range first instead of all history.
- If the small range also gets stuck, check WooCommerce > Status > Logs for fatal errors at the same timestamp as the stuck import. The useful clue is usually the first fatal/error before the import stops, not the repeated stuck-action entries afterward.
- If the small range works, import historical data in smaller windows, for example by year or quarter, with “skip previously imported customers and orders” enabled for overlapping ranges.
- Before deleting/reimporting analytics data, confirm you are only deleting imported analytics/reporting data, not orders/products/customers. WooCommerce’s Analytics docs say deleting previously imported data is for analytics data only, but I would still take a backup first.
If you can share the exact failed action hook name and the first related fatal log line, it should be possible to narrow this down further.