| 开发者 |
carthub
orchestrapop |
|---|---|
| 更新时间 | 2026年5月3日 17:23 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 6.9 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
{percent}, {amount_raw}, {amount_html}, {code}.[orchestra_pop_lite_offer] for the full offer box; [orchestra_pop_lite_badge] for the compact discount line only (title area). Both use the current product in context; optional product_id="123" when needed.[orchestra_pop_lite_badge] in builders when the title is outside the summary./wp-content/plugins/orchestra-pop-lite, or install the ZIP from Plugins → Add New.No. The free version does not require calls to external servers to work.
The plugin stores only configuration in your database (options). It does not log identifiable visitors. When shoppers apply the coupon, WooCommerce handles cart and checkout data as usual. A suggested paragraph for your privacy policy is available under Settings → Privacy → Policy guide after this plugin is active.
You can, but you may see two offer UIs if both output on the product page. Normally you should use only one.
After the plugin is listed on WordPress.org, updates are delivered through the official WordPress update system (SVN). The Premium plugin is updated separately via the merchant portal.
.mo paths via plugin_dir_path() (no WP_PLUGIN_DIR concatenation).plugins_api / “View details” override, manual update-cache refresh, and direct update.php include — rely on core Updates; admin strip now links to Dashboard → Updates only.languages/; internal doc wording adjusted so automated directory checks stay clean.$_GET handling.gopremium.png asset.assets/images/gopremium.png (full width, same corner radius).OPOP_LITE_OFFICIAL_ID so Orchestra Pop Premium can detect the official Lite package even if the install path differs.get_posts + tax_query (better for Plugin Check and for large catalogs).load_textdomain() where needed. Readme: short description within directory limits; Tested up to aligned with QA WordPress. Minor PHPCS / translator-comment cleanups.https://www.orchestrapop.com/#abbonamento (opop_lite_premium_purchase_url filter unchanged). Stripe row uses stripe.svg beside the secure-payment label (Italian string in catalogs).control-panel.png (replaces controllo.png); subscription card header colours and Stripe badge sizing. Added assets/images/control-panel.png.funnel.png, pickbrandcolor.png, multilayer-campaign.png in assets/images/); fourth panel unchanged..opop-lite-layout__rail) includes min-height: 100%; bump version so admin CSS cache refreshes (?ver=).corona-tab.svg); removed separate roadmap panel.assets/images/premium-sidebar-banner-it.png), full width, 12px rounded corners.graph|branding|multicampagna|controllo in assets/images/ with case-insensitive stem; accept .png, .webp, .jpg/.jpeg (no strict exact filename match).assets/images/*.png only if file exists (no shipped raster placeholders); otherwise inline SVG. Removed icon image frame CSS. Drop stale graph/branding/multicampagna/controllo PNG/SVG placeholders to avoid “purple square” confusion.assets/images/ (graph.svg, branding.svg, multicampagna.svg, controllo.svg); PNG filenames remain allowed as fallback.assets/images/ (graph, branding, multicampagna, controllo); accordion trigger padding adjusted.class-opop-lite-admin-premium-tab.php; filters opop_lite_premium_purchase_url, opop_lite_show_premium_price_card..mo files directly. WordPress switch_to_locale() only allows locales installed under wp-content/languages, so Italian/German/French/Spanish from the plugin package were previously ignored (UI stayed English)..mo catalogs for en_US, it_IT, de_DE, fr_FR, es_ES (storefront follows site language; admin follows WordPress user/site language).opop_lite_admin_ui_locale).padding: 10px, column layout with centered text; percentage display without useless decimals (10 not 10.00); compact lines include winning coupon code in parentheses; {percent} in custom savings template uses the same percent formatting.[orchestra_pop_lite_badge] for page builders; shared “first output wins” if hook and shortcode both exist.get_compact_discount_summary_for_code, get_combinable_stack_suffix for badge copy without cart-centric wording.blocksy:woocommerce:product-card:badges so the label appears with image badges (not only when the title layer runs). Single output per product when both paths apply. CSS: base .opop-lite-archive-badge for any placement..opop-lite-guide-item--toc-active) uses neutral panel background #f9f8fc (--op-bg-panel on the floating panel); design tokens on .opop-lite-guide-panel so variables resolve outside the main settings wrap.added_to_cart, removed_from_cart, wc_fragments_refreshed, cart totals update, coupon applied/removed) so the PDP does not stay stale without a full page reload.woocommerce_add_to_cart. Banner shows a clear hint and an estimated post-discount unit price when calculable (percent / fixed product). Admin preview matches (no button). Legacy “Button label” setting kept but not displayed.[orchestra_pop_lite_offer] (default) plus optional product_id for layouts without product context; preview section shows copy + example.WC_Coupon::is_valid_for_product); AJAX applies the chosen code.global $product), so styles load on typical themes..woocommerce + data attribute, with guarded !important where themes override buttons.Requires Plugins: woocommerce; full GPLv2 license notice in main file; LICENSE file.Requires Plugins / WC tested headers for directory compatibility.