| 开发者 | domclic |
|---|---|
| 更新时间 | 2026年10月12日 21:31 |
| 捐献地址: | 去捐款 |
| PHP版本: | 8.0 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv2 or later |
ELEOP can be activated on an individual site or Network Activated. Each site always keeps its own: Products, Orders, Shop / brand name, Notification email, Success message, and optional local PayPal credentials. A Super Admin can optionally configure shared payment defaults at Network Admin > Settings > EffortLess Easy Online Payment. The Network Admin can set: Sandbox / Live mode, Sandbox Client ID and Secret, Live Client ID and Secret, Apple Pay enabled/disabled, and Apple domain-association content. Each subsite can then choose "Inherit PayPal / Apple Pay settings from Network Admin". When inheritance is enabled, only the payment-provider configuration is inherited. Products and orders never become network-global. For subdomain multisite installations, each exact storefront domain/subdomain still needs to be registered with PayPal for Apple Pay eligibility. ELEOP serves the effective association content from each site's own /.well-known/apple-developer-merchantid-domain-association.
Multisite (shown only when the site is part of a Multisite network)
PayPal API
PayPal requires Apple Pay to be enabled for the sandbox app and requires each checkout domain to be registered.
Do not switch ELEOP to Live until you have: created Live PayPal API credentials, completed any PayPal onboarding required for Apple Pay, verified every production storefront domain that will offer Apple Pay through PayPal, registered every production storefront domain in the Stripe Dashboard if wallet buttons are enabled and Stripe is enabled, and performed your own end to end checks.
Check the following, in order:
Check the following:
suppress_filters to true.capture_order() is never invoked twice), capture amount- and currency-mismatch handling, the reserved order-meta keys that a capture result cannot overwrite, and a regression test for the multisite Apple Pay settings-inheritance behavior fixed in an earlier release. No plugin logic was changed for this work — the only edits outside tests/ are the version bump itself.__return_true, matching the pattern already used by the ECPay and Stripe routes. No behavior change — these routes were already, and remain, intentionally public.display: none set by the earlier "unavailable" branch, not just visibility.hidden-attribute container, which deviated from Stripe's documented pattern and risked the Express Checkout Element failing to size itself; buttons are now shown/hidden with style.visibility, matching Stripe's own example.