| 开发者 |
ecomtrackify
hungjk07 |
|---|---|
| 更新时间 | 2026年5月15日 15:47 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 6.9 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
tipjoy folder to the /wp-content/plugins/ directory, or install directly through the WordPress plugin screen.Yes! This plugin is fully compatible with both classic shortcode-based and block-based cart and checkout pages. It automatically detects block pages and injects the widget via JavaScript.
Yes. Enable the "Custom Amount" option in settings. Customers click the "Other" button to enter any amount within the min/max range you configure.
Yes. After selecting a tip, customers can click "No Tip" to remove it, or select a different amount. The tip can be changed or removed at any time before payment.
Tips are added as a fee line item on the WooCommerce order, labeled "Tips". It appears in the order totals alongside shipping, taxes, and other fees.
Percentage tips are calculated based on the cart subtotal (product total only), excluding shipping, taxes, and other fees.
Yes. Since tips are added as a standard WooCommerce cart fee before payment, they work with any payment gateway — Stripe, PayPal, Square, and all others.
Yes. Go to Omni Tips > Settings > Tip Amounts to configure fixed amounts, percentage amounts, or enable custom amounts with min/max limits.
Yes. The plugin declares full compatibility with WooCommerce High-Performance Order Storage (HPOS).
Yes. Enable "Mini Cart" in Omni Tips > Settings > Display to show the tip widget in the mini cart sidebar or dropdown.
No. The plugin is lightweight with no external API calls, no heavy dependencies, and scripts are only loaded on WooCommerce pages where the widget is active.
Yes. The plugin uses standard WooCommerce hooks and clean CSS that works with any properly coded theme. It has been tested with popular themes including Flatsome, Astra, Storefront, OceanWP, and Kadence.
ecomtrackify-omni-tips-for-woocommerce).esc_html, esc_attr, esc_url, wp_kses_post for wc_price() HTML).$_POST/$_GET superglobals with wp_unslash() before sanitization.json_encode() calls to wp_json_encode().date() with gmdate() for ISO date strings (Plugin Check RestrictedFunctions.date_date).%1$s/%2$s) for sprintf strings.__() translation strings.$wpdb calls with phpcs:ignore for Plugin Check.ecomtrackify-omni-tips-for-woocommerce.php and replaced $variable interpolation in SQL with {$wpdb->prefix} form so Plugin Check's WordPress.DB.PreparedSQL.NotPrepared rule can verify placeholders.$_POST['settings'] in map_deep(wp_unslash(...), 'sanitize_text_field') for static analyzers.Domain Path: /languages header (folder does not ship) and the manual load_plugin_textdomain() call (WordPress.org auto-loads translations since WP 4.6).<script> into assets/js/block-inject.js and enqueued via wp_enqueue_script.Requires Plugins: woocommerce; bumped Tested up to: 6.9.Uncaught ReferenceError: wp is not defined on classic shortcode-based themes (Storefront, Flatsome, OceanWP, Astra, etc.) — the block-fallback inject script now guards typeof wp !== 'undefined' before accessing wp.hooks.tip-widget.php — functional output unchanged.PENDING_PAYMENT transactions from the Dashboard "Recent Transactions" list (totals were already fixed in 1.0.9).PENDING_PAYMENT status from Dashboard totals — only PAID tips count toward revenue./checkout/order-pay/{id}/ of a tip order (prevented tip-on-tip stacking).tipjoy_tip_name_patterns, tipjoy_context_has_tip, tipjoy_empty_cart_skip_locations.