Skip to content
This repository has been archived by the owner on Feb 23, 2024. It is now read-only.

Fix: Make Active Filters work with PHP templates #6252

Closed
wants to merge 1 commit into from

Conversation

dinhtungdu
Copy link
Member

Fixes #6138

This PR makes the Active Filters work with PHP templates. The idea is to update the current URL to remove the corresponding argument when users remove it from the Active Filters Block.

I used updateFilterUrl instead of removeArgsFromFilterUrl because I want to use the same function for all types of filters:

  • For the price filter, we can just remove the min_price and max_price arguments from the URL.
  • But for the attribute filter, users can select many attributes, so we can't simply delete the argument when users delete one attribute.

Screenshots

Testing

Automated Tests

  • Changes in this PR are covered by Automated Tests.
    • Unit tests
    • E2E tests

Manual Testing

How to test the changes in this Pull Request:

User Facing Testing

These are steps for user testing (where "user" is someone interacting with this change that is not editing any code).

  • Same as above, or
  • See steps below.

Performance Impact

Changelog

Add suggested changelog entry here.

@dinhtungdu dinhtungdu self-assigned this Apr 14, 2022
@rubikuserbot rubikuserbot requested a review from a team April 14, 2022 08:58
@dinhtungdu dinhtungdu added type: enhancement The issue is a request for an enhancement. block: active filters Issues related to the Active Filters block. labels Apr 14, 2022
@rubikuserbot rubikuserbot removed the request for review from a team April 14, 2022 08:58
@dinhtungdu dinhtungdu added the focus: FSE Work related to prepare WooCommerce for FSE. label Apr 14, 2022
@github-actions
Copy link
Contributor

Script Dependencies Report

The compare-assets action has detected some changed script dependencies between this branch and trunk. Please review and confirm the following are correct before merging.

Script Handle Added Removed
active-filters.js wp-url ⚠️

This comment was automatically generated by the ./github/compare-assets action.

@github-actions
Copy link
Contributor

Size Change: +325 B (0%)

Total Size: 863 kB

Filename Size Change
build/active-filters-frontend.js 6.08 kB +155 B (+3%)
build/active-filters.js 6.75 kB +158 B (+2%)
build/all-products-frontend.js 18.1 kB +1 B (0%)
build/all-products.js 33.5 kB +2 B (0%)
build/attribute-filter-frontend.js 16.9 kB +2 B (0%)
build/cart-blocks/order-summary-shipping--checkout-blocks/order-summary-shipping-frontend.js 6.34 kB +1 B (0%)
build/cart-frontend.js 45.5 kB +2 B (0%)
build/checkout-blocks/billing-address-frontend.js 892 B -1 B (0%)
build/checkout-blocks/express-payment-frontend.js 5.53 kB +2 B (0%)
build/checkout-blocks/payment-frontend.js 7.82 kB -1 B (0%)
build/checkout-frontend.js 47.7 kB +5 B (0%)
build/mini-cart-component-frontend.js 16.6 kB -2 B (0%)
build/mini-cart-contents-block/footer-frontend.js 5.64 kB -1 B (0%)
build/price-filter-frontend.js 12.3 kB -2 B (0%)
build/product-add-to-cart-frontend.js 6.97 kB -1 B (0%)
build/reviews-frontend.js 7 kB +1 B (0%)
build/single-product-frontend.js 21.5 kB +3 B (0%)
build/single-product.js 10.1 kB +2 B (0%)
build/vendors--mini-cart-contents-block/footer-frontend.js 6.86 kB -1 B (0%)
ℹ️ View Unchanged
Filename Size
build/all-reviews.js 7.78 kB
build/attribute-filter.js 12.8 kB
build/blocks-checkout.js 17.4 kB
build/cart-blocks/cart-accepted-payment-methods-frontend.js 1.16 kB
build/cart-blocks/cart-express-payment-frontend.js 5.23 kB
build/cart-blocks/cart-items-frontend.js 298 B
build/cart-blocks/cart-line-items--mini-cart-contents-block/products-table-frontend.js 5.27 kB
build/cart-blocks/cart-line-items-frontend.js 430 B
build/cart-blocks/cart-order-summary-frontend.js 1.1 kB
build/cart-blocks/cart-totals-frontend.js 321 B
build/cart-blocks/empty-cart-frontend.js 345 B
build/cart-blocks/filled-cart-frontend.js 772 B
build/cart-blocks/order-summary-coupon-form-frontend.js 2.81 kB
build/cart-blocks/order-summary-discount-frontend.js 2.31 kB
build/cart-blocks/order-summary-fee-frontend.js 273 B
build/cart-blocks/order-summary-heading-frontend.js 454 B
build/cart-blocks/order-summary-shipping-frontend.js 428 B
build/cart-blocks/order-summary-subtotal-frontend.js 273 B
build/cart-blocks/order-summary-taxes-frontend.js 433 B
build/cart-blocks/proceed-to-checkout-frontend.js 1.15 kB
build/cart.js 44.3 kB
build/checkout-blocks/actions-frontend.js 1.41 kB
build/checkout-blocks/billing-address--checkout-blocks/shipping-address-frontend.js 4.12 kB
build/checkout-blocks/contact-information-frontend.js 2.83 kB
build/checkout-blocks/fields-frontend.js 345 B
build/checkout-blocks/order-note-frontend.js 1.08 kB
build/checkout-blocks/order-summary-cart-items-frontend.js 3.66 kB
build/checkout-blocks/order-summary-coupon-form-frontend.js 2.96 kB
build/checkout-blocks/order-summary-discount-frontend.js 2.43 kB
build/checkout-blocks/order-summary-fee-frontend.js 275 B
build/checkout-blocks/order-summary-frontend.js 1.1 kB
build/checkout-blocks/order-summary-shipping-frontend.js 606 B
build/checkout-blocks/order-summary-subtotal-frontend.js 273 B
build/checkout-blocks/order-summary-taxes-frontend.js 432 B
build/checkout-blocks/shipping-address-frontend.js 995 B
build/checkout-blocks/shipping-methods-frontend.js 4.72 kB
build/checkout-blocks/terms-frontend.js 1.22 kB
build/checkout-blocks/totals-frontend.js 326 B
build/checkout.js 45.6 kB
build/featured-category.js 8.67 kB
build/featured-product.js 10.5 kB
build/handpicked-products.js 7.14 kB
build/legacy-template.js 2.19 kB
build/mini-cart-contents-block/empty-cart-frontend.js 327 B
build/mini-cart-contents-block/filled-cart-frontend.js 230 B
build/mini-cart-contents-block/footer--mini-cart-contents-block/products-table-frontend.js 4.68 kB
build/mini-cart-contents-block/items-frontend.js 226 B
build/mini-cart-contents-block/products-table-frontend.js 288 B
build/mini-cart-contents-block/shopping-button-frontend.js 287 B
build/mini-cart-contents-block/title-frontend.js 367 B
build/mini-cart-contents.js 22.7 kB
build/mini-cart-frontend.js 1.72 kB
build/mini-cart.js 6.1 kB
build/price-filter.js 8.41 kB
build/price-format.js 1.19 kB
build/product-add-to-cart--product-button--product-category-list--product-image--product-price--product-r--a0326d00.js 224 B
build/product-add-to-cart--product-button--product-image--product-title.js 2.65 kB
build/product-add-to-cart--product-button.js 565 B
build/product-add-to-cart.js 6.64 kB
build/product-best-sellers.js 7.41 kB
build/product-button--product-category-list--product-image--product-price--product-rating--product-sale-b--e17c7c01.js 501 B
build/product-button-frontend.js 1.84 kB
build/product-button.js 1.08 kB
build/product-categories.js 2.78 kB
build/product-category-list-frontend.js 924 B
build/product-category-list.js 500 B
build/product-category.js 8.52 kB
build/product-image-frontend.js 1.84 kB
build/product-image.js 1.07 kB
build/product-new.js 7.7 kB
build/product-on-sale.js 8.01 kB
build/product-price-frontend.js 1.94 kB
build/product-price.js 1.5 kB
build/product-rating-frontend.js 1.15 kB
build/product-rating.js 735 B
build/product-sale-badge-frontend.js 1.09 kB
build/product-sale-badge.js 679 B
build/product-search.js 2.18 kB
build/product-sku-frontend.js 380 B
build/product-sku.js 382 B
build/product-stock-indicator-frontend.js 1.03 kB
build/product-stock-indicator.js 620 B
build/product-summary-frontend.js 1.33 kB
build/product-summary.js 918 B
build/product-tag-list-frontend.js 918 B
build/product-tag-list.js 495 B
build/product-tag.js 7.83 kB
build/product-title-frontend.js 1.29 kB
build/product-title.js 910 B
build/product-top-rated.js 7.94 kB
build/products-by-attribute.js 8.42 kB
build/reviews-by-category.js 11.2 kB
build/reviews-by-product.js 12.3 kB
build/stock-filter-frontend.js 6.5 kB
build/stock-filter.js 6.56 kB
build/vendors--cart-blocks/cart-line-items--cart-blocks/cart-order-summary--cart-blocks/order-summary-shi--c02aad66-frontend.js 5.26 kB
build/vendors--cart-blocks/cart-line-items--checkout-blocks/order-summary-cart-items--mini-cart-contents---233ab542-frontend.js 3.14 kB
build/vendors--cart-blocks/order-summary-shipping--checkout-blocks/billing-address--checkout-blocks/order--5b8feb0b-frontend.js 4.74 kB
build/vendors--cart-blocks/order-summary-shipping--checkout-blocks/billing-address--checkout-blocks/order--decc3dc6-frontend.js 20.5 kB
build/vendors--product-add-to-cart-frontend.js 7.53 kB
build/wc-blocks-data.js 9.87 kB
build/wc-blocks-editor-style-rtl.css 4.92 kB
build/wc-blocks-editor-style.css 4.92 kB
build/wc-blocks-google-analytics.js 1.56 kB
build/wc-blocks-middleware.js 930 B
build/wc-blocks-registry.js 2.7 kB
build/wc-blocks-shared-context.js 1.52 kB
build/wc-blocks-shared-hocs.js 1.14 kB
build/wc-blocks-style-rtl.css 22 kB
build/wc-blocks-style.css 22 kB
build/wc-blocks-vendors-style-rtl.css 1.28 kB
build/wc-blocks-vendors-style.css 1.28 kB
build/wc-blocks-vendors.js 71.3 kB
build/wc-blocks.js 2.62 kB
build/wc-payment-method-bacs.js 816 B
build/wc-payment-method-cheque.js 811 B
build/wc-payment-method-cod.js 909 B
build/wc-payment-method-paypal.js 837 B
build/wc-settings.js 2.61 kB

compressed-size-action

@dinhtungdu
Copy link
Member Author

Close in favor of #6295.

@dinhtungdu dinhtungdu closed this Apr 22, 2022
@nielslange nielslange deleted the fix/active-filters-and-php-templates branch April 19, 2023 23:47
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
block: active filters Issues related to the Active Filters block. focus: FSE Work related to prepare WooCommerce for FSE. type: enhancement The issue is a request for an enhancement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Make Active Filters work with PHP templates
1 participant