Changeset 3275263
- Timestamp:
- 04/17/2025 03:59:26 AM (12 months ago)
- Location:
- woocustomizer
- Files:
-
- 292 added
- 4 edited
-
tags/2.6.1 (added)
-
tags/2.6.1/LICENSE (added)
-
tags/2.6.1/assets (added)
-
tags/2.6.1/assets/css (added)
-
tags/2.6.1/assets/css/admin.css (added)
-
tags/2.6.1/assets/css/frontend.css (added)
-
tags/2.6.1/assets/css/themes (added)
-
tags/2.6.1/assets/css/themes/oceanwp.css (added)
-
tags/2.6.1/assets/images (added)
-
tags/2.6.1/assets/images/close-icon.png (added)
-
tags/2.6.1/assets/images/loader.gif (added)
-
tags/2.6.1/assets/images/stats-icon.png (added)
-
tags/2.6.1/assets/images/upload-icon.png (added)
-
tags/2.6.1/assets/images/wcz_ajax_search_promo.jpg (added)
-
tags/2.6.1/assets/images/wcz_catalogue_mode_promo.jpg (added)
-
tags/2.6.1/assets/images/wcz_custom_product_badges_promo.jpg (added)
-
tags/2.6.1/assets/images/wcz_handheld_footer_promo.jpg (added)
-
tags/2.6.1/assets/images/wcz_menu_cart_promo.jpg (added)
-
tags/2.6.1/assets/images/wcz_product_quickview_promo.jpg (added)
-
tags/2.6.1/assets/images/wcz_thank_you_promo.jpg (added)
-
tags/2.6.1/assets/images/woocustomizer-logo.png (added)
-
tags/2.6.1/assets/js (added)
-
tags/2.6.1/assets/js/admin.js (added)
-
tags/2.6.1/assets/js/admin.min.js (added)
-
tags/2.6.1/assets/js/frontend.js (added)
-
tags/2.6.1/assets/js/frontend.min.js (added)
-
tags/2.6.1/assets/js/settings.js (added)
-
tags/2.6.1/assets/js/settings.min.js (added)
-
tags/2.6.1/assets/js/wcz-cart-update.js (added)
-
tags/2.6.1/freemius (added)
-
tags/2.6.1/freemius/LICENSE.txt (added)
-
tags/2.6.1/freemius/assets (added)
-
tags/2.6.1/freemius/assets/css (added)
-
tags/2.6.1/freemius/assets/css/admin (added)
-
tags/2.6.1/freemius/assets/css/admin/account.css (added)
-
tags/2.6.1/freemius/assets/css/admin/add-ons.css (added)
-
tags/2.6.1/freemius/assets/css/admin/affiliation.css (added)
-
tags/2.6.1/freemius/assets/css/admin/checkout.css (added)
-
tags/2.6.1/freemius/assets/css/admin/clone-resolution.css (added)
-
tags/2.6.1/freemius/assets/css/admin/common.css (added)
-
tags/2.6.1/freemius/assets/css/admin/connect.css (added)
-
tags/2.6.1/freemius/assets/css/admin/debug.css (added)
-
tags/2.6.1/freemius/assets/css/admin/dialog-boxes.css (added)
-
tags/2.6.1/freemius/assets/css/admin/gdpr-optin-notice.css (added)
-
tags/2.6.1/freemius/assets/css/admin/index.php (added)
-
tags/2.6.1/freemius/assets/css/admin/optout.css (added)
-
tags/2.6.1/freemius/assets/css/admin/plugins.css (added)
-
tags/2.6.1/freemius/assets/css/customizer.css (added)
-
tags/2.6.1/freemius/assets/css/index.php (added)
-
tags/2.6.1/freemius/assets/img (added)
-
tags/2.6.1/freemius/assets/img/index.php (added)
-
tags/2.6.1/freemius/assets/img/plugin-icon.png (added)
-
tags/2.6.1/freemius/assets/img/theme-icon.png (added)
-
tags/2.6.1/freemius/assets/img/woocustomizer.png (added)
-
tags/2.6.1/freemius/assets/index.php (added)
-
tags/2.6.1/freemius/assets/js (added)
-
tags/2.6.1/freemius/assets/js/index.php (added)
-
tags/2.6.1/freemius/assets/js/jquery.form.js (added)
-
tags/2.6.1/freemius/assets/js/nojquery.ba-postmessage.js (added)
-
tags/2.6.1/freemius/assets/js/postmessage.js (added)
-
tags/2.6.1/freemius/assets/js/pricing (added)
-
tags/2.6.1/freemius/assets/js/pricing/14fb1bd5b7c41648488b06147f50a0dc.svg (added)
-
tags/2.6.1/freemius/assets/js/pricing/178afa6030e76635dbe835e111d2c507.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/27b5a722a5553d9de0170325267fccec.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/4375c4a3ddc6f637c2ab9a2d7220f91e.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/4529cac82a2d1f300d3c4702b7b5e8f3.svg (added)
-
tags/2.6.1/freemius/assets/js/pricing/5480ed23b199531a8cbc05924f26952b.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/b4f3b958f4a019862d81b15f3f8eee3a.svg (added)
-
tags/2.6.1/freemius/assets/js/pricing/c03f665db27af43971565560adfba594.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/cb5fc4f6ec7ada72e986f6e7dde365bf.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/dd89563360f0272635c8f0ab7d7f1402.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/e366d70661d8ad2493bd6afbd779f125.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/f18006f6535a1a6e9c6bfbffafe6f18a.svg (added)
-
tags/2.6.1/freemius/assets/js/pricing/f3aac72a8e63997d6bb888f816457e9b.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/f928f1be99776af83e8e6be4baf8ffe7.svg (added)
-
tags/2.6.1/freemius/assets/js/pricing/fde48e4609a6ddc11d639fc2421f2afd.png (added)
-
tags/2.6.1/freemius/assets/js/pricing/freemius-pricing.js (added)
-
tags/2.6.1/freemius/assets/js/pricing/freemius-pricing.js.LICENSE.txt (added)
-
tags/2.6.1/freemius/config.php (added)
-
tags/2.6.1/freemius/includes (added)
-
tags/2.6.1/freemius/includes/class-freemius-abstract.php (added)
-
tags/2.6.1/freemius/includes/class-freemius.php (added)
-
tags/2.6.1/freemius/includes/class-fs-admin-notices.php (added)
-
tags/2.6.1/freemius/includes/class-fs-api.php (added)
-
tags/2.6.1/freemius/includes/class-fs-garbage-collector.php (added)
-
tags/2.6.1/freemius/includes/class-fs-lock.php (added)
-
tags/2.6.1/freemius/includes/class-fs-logger.php (added)
-
tags/2.6.1/freemius/includes/class-fs-options.php (added)
-
tags/2.6.1/freemius/includes/class-fs-plugin-updater.php (added)
-
tags/2.6.1/freemius/includes/class-fs-security.php (added)
-
tags/2.6.1/freemius/includes/class-fs-storage.php (added)
-
tags/2.6.1/freemius/includes/class-fs-user-lock.php (added)
-
tags/2.6.1/freemius/includes/customizer (added)
-
tags/2.6.1/freemius/includes/customizer/class-fs-customizer-support-section.php (added)
-
tags/2.6.1/freemius/includes/customizer/class-fs-customizer-upsell-control.php (added)
-
tags/2.6.1/freemius/includes/customizer/index.php (added)
-
tags/2.6.1/freemius/includes/debug (added)
-
tags/2.6.1/freemius/includes/debug/class-fs-debug-bar-panel.php (added)
-
tags/2.6.1/freemius/includes/debug/debug-bar-start.php (added)
-
tags/2.6.1/freemius/includes/debug/index.php (added)
-
tags/2.6.1/freemius/includes/entities (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-affiliate-terms.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-affiliate.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-billing.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-entity.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-payment.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-plugin-info.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-plugin-license.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-plugin-plan.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-plugin-tag.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-plugin.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-pricing.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-scope-entity.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-site.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-subscription.php (added)
-
tags/2.6.1/freemius/includes/entities/class-fs-user.php (added)
-
tags/2.6.1/freemius/includes/entities/index.php (added)
-
tags/2.6.1/freemius/includes/fs-core-functions.php (added)
-
tags/2.6.1/freemius/includes/fs-essential-functions.php (added)
-
tags/2.6.1/freemius/includes/fs-html-escaping-functions.php (added)
-
tags/2.6.1/freemius/includes/fs-plugin-info-dialog.php (added)
-
tags/2.6.1/freemius/includes/index.php (added)
-
tags/2.6.1/freemius/includes/l10n.php (added)
-
tags/2.6.1/freemius/includes/managers (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-admin-menu-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-admin-notice-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-cache-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-checkout-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-clone-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-contact-form-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-debug-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-gdpr-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-key-value-storage.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-license-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-option-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-permission-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-plan-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/class-fs-plugin-manager.php (added)
-
tags/2.6.1/freemius/includes/managers/index.php (added)
-
tags/2.6.1/freemius/includes/sdk (added)
-
tags/2.6.1/freemius/includes/sdk/Exceptions (added)
-
tags/2.6.1/freemius/includes/sdk/Exceptions/ArgumentNotExistException.php (added)
-
tags/2.6.1/freemius/includes/sdk/Exceptions/EmptyArgumentException.php (added)
-
tags/2.6.1/freemius/includes/sdk/Exceptions/Exception.php (added)
-
tags/2.6.1/freemius/includes/sdk/Exceptions/InvalidArgumentException.php (added)
-
tags/2.6.1/freemius/includes/sdk/Exceptions/OAuthException.php (added)
-
tags/2.6.1/freemius/includes/sdk/Exceptions/index.php (added)
-
tags/2.6.1/freemius/includes/sdk/FreemiusBase.php (added)
-
tags/2.6.1/freemius/includes/sdk/FreemiusWordPress.php (added)
-
tags/2.6.1/freemius/includes/sdk/LICENSE.txt (added)
-
tags/2.6.1/freemius/includes/sdk/index.php (added)
-
tags/2.6.1/freemius/includes/supplements (added)
-
tags/2.6.1/freemius/includes/supplements/fs-essential-functions-1.1.7.1.php (added)
-
tags/2.6.1/freemius/includes/supplements/fs-essential-functions-2.2.1.php (added)
-
tags/2.6.1/freemius/includes/supplements/fs-migration-2.5.1.php (added)
-
tags/2.6.1/freemius/includes/supplements/index.php (added)
-
tags/2.6.1/freemius/index.php (added)
-
tags/2.6.1/freemius/languages (added)
-
tags/2.6.1/freemius/languages/freemius-cs_CZ.mo (added)
-
tags/2.6.1/freemius/languages/freemius-da_DK.mo (added)
-
tags/2.6.1/freemius/languages/freemius-de_DE.mo (added)
-
tags/2.6.1/freemius/languages/freemius-es_ES.mo (added)
-
tags/2.6.1/freemius/languages/freemius-fr_FR.mo (added)
-
tags/2.6.1/freemius/languages/freemius-he_IL.mo (added)
-
tags/2.6.1/freemius/languages/freemius-hu_HU.mo (added)
-
tags/2.6.1/freemius/languages/freemius-it_IT.mo (added)
-
tags/2.6.1/freemius/languages/freemius-ja.mo (added)
-
tags/2.6.1/freemius/languages/freemius-nl_NL.mo (added)
-
tags/2.6.1/freemius/languages/freemius-ru_RU.mo (added)
-
tags/2.6.1/freemius/languages/freemius-ta.mo (added)
-
tags/2.6.1/freemius/languages/freemius-zh_CN.mo (added)
-
tags/2.6.1/freemius/languages/freemius.pot (added)
-
tags/2.6.1/freemius/languages/index.php (added)
-
tags/2.6.1/freemius/require.php (added)
-
tags/2.6.1/freemius/start.php (added)
-
tags/2.6.1/freemius/templates (added)
-
tags/2.6.1/freemius/templates/account (added)
-
tags/2.6.1/freemius/templates/account.php (added)
-
tags/2.6.1/freemius/templates/account/billing.php (added)
-
tags/2.6.1/freemius/templates/account/index.php (added)
-
tags/2.6.1/freemius/templates/account/partials (added)
-
tags/2.6.1/freemius/templates/account/partials/activate-license-button.php (added)
-
tags/2.6.1/freemius/templates/account/partials/addon.php (added)
-
tags/2.6.1/freemius/templates/account/partials/deactivate-license-button.php (added)
-
tags/2.6.1/freemius/templates/account/partials/disconnect-button.php (added)
-
tags/2.6.1/freemius/templates/account/partials/index.php (added)
-
tags/2.6.1/freemius/templates/account/partials/site.php (added)
-
tags/2.6.1/freemius/templates/account/payments.php (added)
-
tags/2.6.1/freemius/templates/add-ons.php (added)
-
tags/2.6.1/freemius/templates/add-trial-to-pricing.php (added)
-
tags/2.6.1/freemius/templates/admin-notice.php (added)
-
tags/2.6.1/freemius/templates/ajax-loader.php (added)
-
tags/2.6.1/freemius/templates/api-connectivity-message-js.php (added)
-
tags/2.6.1/freemius/templates/auto-installation.php (added)
-
tags/2.6.1/freemius/templates/checkout (added)
-
tags/2.6.1/freemius/templates/checkout.php (added)
-
tags/2.6.1/freemius/templates/checkout/frame.php (added)
-
tags/2.6.1/freemius/templates/checkout/process-redirect.php (added)
-
tags/2.6.1/freemius/templates/checkout/redirect.php (added)
-
tags/2.6.1/freemius/templates/clone-resolution-js.php (added)
-
tags/2.6.1/freemius/templates/connect (added)
-
tags/2.6.1/freemius/templates/connect.php (added)
-
tags/2.6.1/freemius/templates/connect/index.php (added)
-
tags/2.6.1/freemius/templates/connect/permission.php (added)
-
tags/2.6.1/freemius/templates/connect/permissions-group.php (added)
-
tags/2.6.1/freemius/templates/contact.php (added)
-
tags/2.6.1/freemius/templates/debug (added)
-
tags/2.6.1/freemius/templates/debug.php (added)
-
tags/2.6.1/freemius/templates/debug/api-calls.php (added)
-
tags/2.6.1/freemius/templates/debug/index.php (added)
-
tags/2.6.1/freemius/templates/debug/logger.php (added)
-
tags/2.6.1/freemius/templates/debug/plugins-themes-sync.php (added)
-
tags/2.6.1/freemius/templates/debug/scheduled-crons.php (added)
-
tags/2.6.1/freemius/templates/email.php (added)
-
tags/2.6.1/freemius/templates/forms (added)
-
tags/2.6.1/freemius/templates/forms/affiliation.php (added)
-
tags/2.6.1/freemius/templates/forms/data-debug-mode.php (added)
-
tags/2.6.1/freemius/templates/forms/deactivation (added)
-
tags/2.6.1/freemius/templates/forms/deactivation/contact.php (added)
-
tags/2.6.1/freemius/templates/forms/deactivation/form.php (added)
-
tags/2.6.1/freemius/templates/forms/deactivation/index.php (added)
-
tags/2.6.1/freemius/templates/forms/deactivation/retry-skip.php (added)
-
tags/2.6.1/freemius/templates/forms/email-address-update.php (added)
-
tags/2.6.1/freemius/templates/forms/index.php (added)
-
tags/2.6.1/freemius/templates/forms/license-activation.php (added)
-
tags/2.6.1/freemius/templates/forms/optout.php (added)
-
tags/2.6.1/freemius/templates/forms/premium-versions-upgrade-handler.php (added)
-
tags/2.6.1/freemius/templates/forms/premium-versions-upgrade-metadata.php (added)
-
tags/2.6.1/freemius/templates/forms/resend-key.php (added)
-
tags/2.6.1/freemius/templates/forms/subscription-cancellation.php (added)
-
tags/2.6.1/freemius/templates/forms/trial-start.php (added)
-
tags/2.6.1/freemius/templates/forms/user-change.php (added)
-
tags/2.6.1/freemius/templates/gdpr-optin-js.php (added)
-
tags/2.6.1/freemius/templates/index.php (added)
-
tags/2.6.1/freemius/templates/js (added)
-
tags/2.6.1/freemius/templates/js/index.php (added)
-
tags/2.6.1/freemius/templates/js/jquery.content-change.php (added)
-
tags/2.6.1/freemius/templates/js/open-license-activation.php (added)
-
tags/2.6.1/freemius/templates/js/permissions.php (added)
-
tags/2.6.1/freemius/templates/js/style-premium-theme.php (added)
-
tags/2.6.1/freemius/templates/partials (added)
-
tags/2.6.1/freemius/templates/partials/index.php (added)
-
tags/2.6.1/freemius/templates/partials/network-activation.php (added)
-
tags/2.6.1/freemius/templates/plugin-icon.php (added)
-
tags/2.6.1/freemius/templates/plugin-info (added)
-
tags/2.6.1/freemius/templates/plugin-info/description.php (added)
-
tags/2.6.1/freemius/templates/plugin-info/features.php (added)
-
tags/2.6.1/freemius/templates/plugin-info/index.php (added)
-
tags/2.6.1/freemius/templates/plugin-info/screenshots.php (added)
-
tags/2.6.1/freemius/templates/pricing.php (added)
-
tags/2.6.1/freemius/templates/secure-https-header.php (added)
-
tags/2.6.1/freemius/templates/sticky-admin-notice-js.php (added)
-
tags/2.6.1/freemius/templates/tabs-capture-js.php (added)
-
tags/2.6.1/freemius/templates/tabs.php (added)
-
tags/2.6.1/includes (added)
-
tags/2.6.1/includes/class-wcz-admin-api.php (added)
-
tags/2.6.1/includes/class-wcz-settings.php (added)
-
tags/2.6.1/includes/class-wcz.php (added)
-
tags/2.6.1/includes/customizer (added)
-
tags/2.6.1/includes/customizer/customizer-library (added)
-
tags/2.6.1/includes/customizer/customizer-library/README.md (added)
-
tags/2.6.1/includes/customizer/customizer-library/css (added)
-
tags/2.6.1/includes/customizer/customizer-library/css/customizer-tour.css (added)
-
tags/2.6.1/includes/customizer/customizer-library/css/customizer.css (added)
-
tags/2.6.1/includes/customizer/customizer-library/customizer-library.php (added)
-
tags/2.6.1/includes/customizer/customizer-library/extensions (added)
-
tags/2.6.1/includes/customizer/customizer-library/extensions/interface.php (added)
-
tags/2.6.1/includes/customizer/customizer-library/extensions/sanitization.php (added)
-
tags/2.6.1/includes/customizer/customizer-library/extensions/style-builder.php (added)
-
tags/2.6.1/includes/customizer/customizer-library/extensions/utilities.php (added)
-
tags/2.6.1/includes/customizer/customizer-library/js (added)
-
tags/2.6.1/includes/customizer/customizer-library/js/customizer-custom.js (added)
-
tags/2.6.1/includes/customizer/customizer-library/js/customizer-tour.js (added)
-
tags/2.6.1/includes/customizer/customizer-options.php (added)
-
tags/2.6.1/includes/customizer/styles.php (added)
-
tags/2.6.1/includes/inc (added)
-
tags/2.6.1/includes/inc/woocommerce.php (added)
-
tags/2.6.1/index.php (added)
-
tags/2.6.1/lang (added)
-
tags/2.6.1/lang/woocustomizer-es_ES.mo (added)
-
tags/2.6.1/lang/woocustomizer-es_ES.po (added)
-
tags/2.6.1/lang/woocustomizer-fr_FR.mo (added)
-
tags/2.6.1/lang/woocustomizer-fr_FR.po (added)
-
tags/2.6.1/lang/woocustomizer-it_IT.mo (added)
-
tags/2.6.1/lang/woocustomizer-it_IT.po (added)
-
tags/2.6.1/lang/woocustomizer-nl_NL.mo (added)
-
tags/2.6.1/lang/woocustomizer-nl_NL.po (added)
-
tags/2.6.1/lang/woocustomizer-sv_SE.mo (added)
-
tags/2.6.1/lang/woocustomizer-sv_SE.po (added)
-
tags/2.6.1/lang/woocustomizer.pot (added)
-
tags/2.6.1/readme.txt (added)
-
tags/2.6.1/woocustomizer.php (added)
-
trunk/assets/css/frontend.css (modified) (3 diffs)
-
trunk/includes/inc/woocommerce.php (modified) (3 diffs)
-
trunk/readme.txt (modified) (3 diffs)
-
trunk/woocustomizer.php (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
woocustomizer/trunk/assets/css/frontend.css
r2879214 r3275263 51 51 border: 1px solid rgba(0, 0, 0, 0.3); 52 52 border-radius: 4px; 53 box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.5), 53 box-shadow: 54 inset 0 1px 0 rgba(255, 255, 255, 0.5), 54 55 0 1px 4px rgba(0, 0, 0, 0.1); 55 56 text-decoration: none; … … 216 217 .wcz-reviewsdiv-one.bot-divider, 217 218 .wcz-addinfodiv-one.bot-divider { 218 box-shadow: 0 -1px 0 rgba(0, 0, 0, 0.12), 0 1px 0 rgba(0, 0, 0, 0.12); 219 box-shadow: 220 0 -1px 0 rgba(0, 0, 0, 0.12), 221 0 1px 0 rgba(0, 0, 0, 0.12); 219 222 } 220 223 … … 656 659 } 657 660 658 661 .product .price small { 662 opacity: 0.72; 663 } 664 665 -
woocustomizer/trunk/includes/inc/woocommerce.php
r3229889 r3275263 967 967 2 968 968 ); 969 // Add custom fields for each variation in the product edit screen 970 function wcz_add_variation_custom_fields( $loop, $variation_data, $variation ) { 971 if ( !empty( get_option( 'wcz-add-price-prefix', woocustomizer_library_get_default( 'wcz-add-price-prefix' ) ) ) || empty( !get_option( 'wcz-add-price-suffix', woocustomizer_library_get_default( 'wcz-add-price-suffix' ) ) ) ) { 972 woocommerce_wp_text_input( array( 973 'id' => 'wcz_prefix_field[' . $variation->ID . ']', 974 'label' => __( 'Variation Prefix', 'woocustomizer' ), 975 'wrapper_class' => 'form-row form-row-first', 976 'placeholder' => __( '"& nbsp;" (without a space) to remove this prefix', 'woocustomizer' ), 977 'desc_tip' => true, 978 'description' => __( 'This will display before the variable price once a variation is selected.', 'woocustomizer' ), 979 'value' => get_post_meta( $variation->ID, 'wcz_var_price_prefix', true ), 980 ) ); 981 woocommerce_wp_text_input( array( 982 'id' => 'wcz_suffix_field[' . $variation->ID . ']', 983 'label' => __( 'Variation Suffix', 'woocustomizer' ), 984 'wrapper_class' => 'form-row form-row-last', 985 'placeholder' => __( '"& nbsp;" (without a space) to remove this suffix', 'woocustomizer' ), 986 'desc_tip' => true, 987 'description' => __( 'This will display after the variable price once a variation is selected.', 'woocustomizer' ), 988 'value' => get_post_meta( $variation->ID, 'wcz_var_price_suffix', true ), 989 ) ); 990 } 991 } 992 993 add_action( 994 'woocommerce_variation_options_pricing', 995 'wcz_add_variation_custom_fields', 996 10, 997 3 998 ); 999 function wcz_save_variation_custom_fields( $variation_id, $loop ) { 1000 if ( !empty( get_option( 'wcz-add-price-prefix', woocustomizer_library_get_default( 'wcz-add-price-prefix' ) ) ) || empty( !get_option( 'wcz-add-price-suffix', woocustomizer_library_get_default( 'wcz-add-price-suffix' ) ) ) ) { 1001 // Save wcz_var_price_prefix 1002 if ( isset( $_POST['wcz_prefix_field'][$variation_id] ) ) { 1003 $prefix_field = sanitize_text_field( $_POST['wcz_prefix_field'][$variation_id] ); 1004 update_post_meta( $variation_id, 'wcz_var_price_prefix', $prefix_field ); 1005 } 1006 // Save wcz_var_price_suffix 1007 if ( isset( $_POST['wcz_suffix_field'][$variation_id] ) ) { 1008 $suffix_field = sanitize_text_field( $_POST['wcz_suffix_field'][$variation_id] ); 1009 update_post_meta( $variation_id, 'wcz_var_price_suffix', $suffix_field ); 1010 } 1011 } 1012 } 1013 1014 add_action( 1015 'woocommerce_save_product_variation', 1016 'wcz_save_variation_custom_fields', 1017 10, 1018 2 1019 ); 969 1020 /** 970 1021 * ------------------------------------------------------------------------------------ WooCustomzer per Product settings. … … 1166 1217 1167 1218 function wcz_add_price_prefix_suffix( $price, $product ) { 1219 // If the product is a variation, attempt to get variation‐specific prefix/suffix. 1220 if ( $product->is_type( 'variation' ) ) { 1221 $variation_id = $product->get_id(); 1222 $var_prefix = ( get_post_meta( $variation_id, 'wcz_var_price_prefix', true ) ? '<small>' . get_post_meta( $variation_id, 'wcz_var_price_prefix', true ) . '</small> ' : '' ); 1223 $var_suffix = ( get_post_meta( $variation_id, 'wcz_var_price_suffix', true ) ? ' <small>' . get_post_meta( $variation_id, 'wcz_var_price_suffix', true ) . '</small>' : '' ); 1224 // If at least one is set, use them and return immediately. 1225 if ( $var_prefix !== '' || $var_suffix !== '' ) { 1226 return $var_prefix . $price . $var_suffix; 1227 } 1228 } 1229 // Otherwise, for standard products (or variations without custom meta), use the global settings. 1168 1230 $wcz_price_prefix = ''; 1169 1231 $wcz_price_suffix = ''; 1170 1232 if ( get_option( 'wcz-add-price-prefix', woocustomizer_library_get_default( 'wcz-add-price-prefix' ) ) ) { 1171 if ( get_option( 'wcz-add-price-prefix-shop', woocustomizer_library_get_default( 'wcz-add-price-prefix-shop' ) ) && (is_shop() || is_product_category() || is_product_tag() || is_product() || is_cart()) ) { 1172 $wcz_price_prefix = ( get_post_meta( get_the_ID(), 'wcz_pps_price_prefix', true ) ? '<small>' . get_post_meta( get_the_ID(), 'wcz_pps_price_prefix', true ) . '</small> ' : '<small>' . get_option( 'wcz-add-price-prefix-txt', woocustomizer_library_get_default( 'wcz-add-price-prefix-txt' ) ) . '</small> ' ); 1233 // Use the product-level meta if set; otherwise use the global default. 1234 $prefix_meta = get_post_meta( get_the_ID(), 'wcz_pps_price_prefix', true ); 1235 if ( $prefix_meta ) { 1236 $wcz_price_prefix = '<small>' . $prefix_meta . '</small> '; 1173 1237 } else { 1174 if ( is_product() ) { 1175 $wcz_price_prefix = ( get_post_meta( get_the_ID(), 'wcz_pps_price_prefix', true ) ? '<small>' . get_post_meta( get_the_ID(), 'wcz_pps_price_prefix', true ) . '</small> ' : '<small>' . get_option( 'wcz-add-price-prefix-txt', woocustomizer_library_get_default( 'wcz-add-price-prefix-txt' ) ) . '</small> ' ); 1176 } 1238 $wcz_price_prefix = '<small>' . get_option( 'wcz-add-price-prefix-txt', woocustomizer_library_get_default( 'wcz-add-price-prefix-txt' ) ) . '</small> '; 1177 1239 } 1178 1240 } 1179 1241 if ( get_option( 'wcz-add-price-suffix', woocustomizer_library_get_default( 'wcz-add-price-suffix' ) ) ) { 1180 if ( get_option( 'wcz-add-price-suffix-shop', woocustomizer_library_get_default( 'wcz-add-price-suffix-shop' ) ) && (is_shop() || is_product_category() || is_product_tag() || is_product() || is_cart()) ) { 1181 $wcz_price_suffix = ( get_post_meta( get_the_ID(), 'wcz_pps_price_suffix', true ) ? ' <small>' . get_post_meta( get_the_ID(), 'wcz_pps_price_suffix', true ) . '</small> ' : ' <small>' . get_option( 'wcz-add-price-suffix-txt', woocustomizer_library_get_default( 'wcz-add-price-suffix-txt' ) ) . '</small> ' ); 1242 $suffix_meta = get_post_meta( get_the_ID(), 'wcz_pps_price_suffix', true ); 1243 if ( $suffix_meta ) { 1244 $wcz_price_suffix = ' <small>' . $suffix_meta . '</small> '; 1182 1245 } else { 1183 if ( is_product() ) { 1184 $wcz_price_suffix = ( get_post_meta( get_the_ID(), 'wcz_pps_price_suffix', true ) ? ' <small>' . get_post_meta( get_the_ID(), 'wcz_pps_price_suffix', true ) . '</small> ' : ' <small>' . get_option( 'wcz-add-price-suffix-txt', woocustomizer_library_get_default( 'wcz-add-price-suffix-txt' ) ) . '</small> ' ); 1185 } 1186 } 1187 } 1246 $wcz_price_suffix = ' <small>' . get_option( 'wcz-add-price-suffix-txt', woocustomizer_library_get_default( 'wcz-add-price-suffix-txt' ) ) . '</small> '; 1247 } 1248 } 1249 // Replace any tax placeholders if they are used. 1188 1250 $price_excl_tax = wc_get_price_excluding_tax( $product ); 1189 1251 $price_incl_tax = wc_get_price_including_tax( $product ); … … 1192 1254 $wcz_price_suffix = str_ireplace( '{price_excluding_tax}', wc_price( $price_excl_tax ), $wcz_price_suffix ); 1193 1255 $wcz_price_suffix = str_ireplace( '{price_including_tax}', wc_price( $price_incl_tax ), $wcz_price_suffix ); 1194 $price = $wcz_price_prefix . $price . $wcz_price_suffix; 1195 return $price; 1256 // If the product is on sale and has separate sale HTML (<ins> tags), only add prefix/suffix inside the <ins> block. 1257 if ( $product->is_on_sale() && strpos( $price, '<ins>' ) !== false ) { 1258 if ( preg_match( '/(<ins>)(.*?)(<\\/ins>)/is', $price, $matches ) ) { 1259 // The sale price is in $matches[2] 1260 $new_sale = '<ins>' . $wcz_price_prefix . $matches[2] . $wcz_price_suffix . '</ins>'; 1261 // Replace the original <ins> block with our modified version. 1262 $price = str_replace( $matches[0], $new_sale, $price ); 1263 } 1264 return $price; 1265 } 1266 return $wcz_price_prefix . $price . $wcz_price_suffix; 1196 1267 } 1197 1268 -
woocustomizer/trunk/readme.txt
r3234446 r3275263 4 4 Tags: customize woocommerce, ecommerce, woocommerce, online store, woocommerce addons 5 5 Requires at least: 5.0 6 Tested up to: 6. 76 Tested up to: 6.8 7 7 Requires PHP: 5.6 8 Stable tag: 2.6. 08 Stable tag: 2.6.1 9 9 License: GPLv2 or later 10 10 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 180 180 181 181 182 = Related Products by Kaira = 183 184 [Blockons](https://wordpress.org/plugins/blockons/): Advanced editor blocks and site addons for your WordPress site. 185 186 [Linkt](https://wordpress.org/plugins/linkt/): Affiliate and Custom link tracking and management. 187 188 182 189 = Translations = 183 190 … … 261 268 262 269 == Changelog == 270 271 = 2.6.1 = 272 * Styling tweaks/fixes 273 * Minor code refactoring 274 * Added: Price Prefix & Suffix for variable product variations 275 * Updated the language .pot file 263 276 264 277 = 2.6.0 = -
woocustomizer/trunk/woocustomizer.php
r3234446 r3275263 3 3 /** 4 4 * Plugin Name: StoreCustomizer 5 * Version: 2.6. 05 * Version: 2.6.1 6 6 * Plugin URI: https://kairaweb.com/wordpress-plugins/woocustomizer/ 7 7 * Description: A store editor plugin for editing all WooCommerce store and product pages, cart, checkout and user account pages, all within the WordPress Customizer … … 9 9 * Author URI: https://kairaweb.com/ 10 10 * Requires at least: 5.0 11 * Tested up to: 6. 711 * Tested up to: 6.8 12 12 * WC requires at least: 3.2 13 * WC tested up to: 9. 613 * WC tested up to: 9.8 14 14 * Text Domain: woocustomizer 15 15 * Domain Path: /lang/ … … 20 20 * @since 1.0.0 21 21 */ 22 define( 'WCD_PLUGIN_VERSION', '2.6. 0' );22 define( 'WCD_PLUGIN_VERSION', '2.6.1' ); 23 23 define( 'WCD_PLUGIN_URL', plugins_url( '', __FILE__ ) ); 24 24 if ( !defined( 'ABSPATH' ) ) {
Note: See TracChangeset
for help on using the changeset viewer.