Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve local pickup flow #45614

Merged
merged 21 commits into from Mar 20, 2024
Merged

Conversation

nielslange
Copy link
Member

@nielslange nielslange commented Mar 15, 2024

Submission Review Guidelines:

Changes proposed in this Pull Request:

Closes #41534.

This PR introduces the following changes, as mentioned in the acceptance criteria in #41534:

  1. On WooCommerce » Shipping » Shipping zones, show Local pickup: set up pickup locations in the Local pickup settings page. when the Checkout block is enabled and no legacy Local Pickup method is active.
  2. On WooCommerce » Shipping » Shipping zones, show Explore a new enhanced delivery method that allows you to easily offer one or more pickup locations to your customers in the Local pickup settings page. when the Checkout block is enabled and at least one legacy Local Pickup method is active.
  3. On WooCommerce » Shipping » Shipping settings, change the copy to Not available when using the Local pickup options powered by the Checkout block.
  4. On WooCommerce » Shipping » Local pickup, change the copy to By enabling Local Pickup with more valuable features for your store, it's recommended that you remove the legacy Local Pickup option from your shipping zones.

How to test the changes in this Pull Request:

Using the WooCommerce Testing Instructions Guide, include your detailed testing instructions.

Modal message with no active legacy Local Pickup methods.

  1. Install and activate the Twenty Twenty-Four theme.
  2. Go to WooCommerce » Settings » Advanced and define a page with the Checkout block as the default checkout page.
  3. Go to WooCommerce » Settings » Shipping » Shipping zones.
  4. Ensure that the legacy Local Pickup method isn't active for any of the shipping zones, including the Rest of the World shipping zone.
  5. Save the settings (if necessary) and refresh the page.
  6. Click on the edit link to add shipping method.
  7. Click the Add shipping method button.
  8. Verify that the Local Pickup shipping method is not visible.
  9. Verify that the text "Local pickup: Set up pickup locations in the Local pickup settings page." is visible below the available shipping methods.
  10. Go to WooCommerce » Settings » Advanced and define a page with the shortcode checkout as the default checkout page.
  11. Verify that the Local Pickup shipping method is visible.
  12. Verify that the text "Local pickup: Set up pickup locations in the Local pickup settings page." is not visible below the available shipping methods.
  13. Repeat these tests with the Storefront theme.
  14. Verify that the using the Storefront theme shows the same results as using the Twenty Twenty-Four theme.
Before:

Screenshot 2024-03-15 at 16 19 03
After:

Screenshot 2024-03-15 at 15 56 33

Modal message with active legacy Local Pickup methods.

  1. Install and activate the Twenty Twenty-Four theme.
  2. Go to WooCommerce » Settings » Advanced and define a page with the shortcode checkout as the default checkout page.
  3. Go to WooCommerce » Settings » Shipping » Shipping zones.
  4. Add the legacy Local Pickup method for one of the shipping zones or for the Rest of the World shipping zone.
  5. Save the settings and refresh the page.
  6. Go to WooCommerce » Settings » Advanced and define a page with the Checkout block as the default checkout page.
  7. Go back to WooCommerce » Settings » Shipping » Shipping zones.
  8. Click on the edit link to add shipping method.
  9. Click the Add shipping method button.
  10. Verify that the Local Pickup shipping method is still visible.
  11. Verify that the text "Explore a new enhanced delivery method that allows you to easily offer one or more pickup locations to your customers in the Local pickup settings page." is visible below the available shipping methods.
  12. Go to WooCommerce » Settings » Advanced and define a page with the shortcode checkout as the default checkout page.
  13. Verify that the Local Pickup shipping method is visible.
  14. Verify that the text "Local pickup: Set up pickup locations in the Local pickup settings page." is not visible below the available shipping methods.
  15. Repeat these tests with the Storefront theme.
  16. Verify that the using the Storefront theme shows the same results as using the Twenty Twenty-Four theme.
Before:

Screenshot 2024-03-15 at 16 19 03
After:

Screenshot 2024-03-15 at 15 57 00

Shipping settings copy

  1. Go to WooCommerce » Settings » Advanced and define a page with the Checkout block as the default checkout page.
  2. Go to WooCommerce » Settings » Shipping » Local pickup.
  3. Enable the Local Pickup option.
  4. Go to WooCommerce » Settings » Shipping » Shipping settings.
  5. Verify that the second option in the Calculations settings shows Not available when using the Local pickup options powered by the Checkout block.
Before:

Screenshot 2024-03-15 at 16 20 59
After:

Screenshot 2024-03-15 at 15 21 25


Not available when using the Local pickup options powered by the Checkout block.

Local pickup settings copy

  1. Go to WooCommerce » Settings » Advanced and define a page with the Checkout block as the default checkout page.
  2. Go to WooCommerce » Settings » Shipping » Shipping zones.
  3. Add the legacy Local Pickup method for one of the shipping zones or for the Rest of the World shipping zone.
  4. Go to WooCommerce » Settings » Shipping » Local pickup.
  5. Verify that copy above the Enable local pickup option shows By enabling Local Pickup with more valuable features for your store, it's recommended that you remove the legacy Local Pickup option from your shipping zones.
Before:

Screenshot 2024-03-15 at 16 20 15
After:

Screenshot 2024-03-15 at 15 54 27

Changelog entry

  • Automatically create a changelog entry from the details below.

Significance

  • Patch
  • Minor
  • Major

Type

  • Fix - Fixes an existing bug
  • Add - Adds functionality
  • Update - Update existing functionality
  • Dev - Development related task
  • Tweak - A minor adjustment to the codebase
  • Performance - Address performance issues
  • Enhancement - Improvement to existing functionality

Message

Improve messages around the use of the legacy and the new Local Pickup shipping methods.

Comment

@nielslange nielslange self-assigned this Mar 15, 2024
@nielslange nielslange requested review from a team and wavvves and removed request for a team March 15, 2024 09:23
@woocommercebot woocommercebot requested a review from a team March 15, 2024 09:26
@github-actions github-actions bot added the plugin: woocommerce Issues related to the WooCommerce Core plugin. label Mar 15, 2024
@nielslange nielslange requested review from kloon and removed request for a team March 15, 2024 09:34
@nielslange
Copy link
Member Author

Howzit @kloon 👋 As this PR touches the shipping settings from core, I would appreciate it if someone from Escargot could do an additional review. Unfortunately, I'm unable to assign woocommerce/escargot as a reviewer. Could you assign someone from your team?

Copy link
Contributor

github-actions bot commented Mar 15, 2024

Hi @wavvves,

Apart from reviewing the code changes, please make sure to review the testing instructions as well.

You can follow this guide to find out what good testing instructions should look like:
https://github.com/woocommerce/woocommerce/wiki/Writing-high-quality-testing-instructions

@nielslange nielslange closed this Mar 15, 2024
@nielslange nielslange reopened this Mar 15, 2024
Copy link
Contributor

github-actions bot commented Mar 15, 2024

Test Results Summary

Commit SHA: f7acef0

Test 🧪Passed ✅Failed 🚨Broken 🚧Skipped ⏭️Unknown ❔Total 📊Duration ⏱️
API Tests25900202610m 38s
E2E Tests346001103578m 13s

To view the full API test report, click here.
To view the full E2E test report, click here.
To view all test reports, visit the WooCommerce Test Reports Dashboard.

Copy link
Member

@kloon kloon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey @nielslange, left some comments for consideration, let me know what you think.

@kloon kloon requested review from a team and harriswong and removed request for a team March 15, 2024 11:00
@nielslange
Copy link
Member Author

Thank you for your reviews, @kloon and @wavvves. I've addressed your feedback. Would you mind reviewing this PR again? Thanks in advance. 🙌

Copy link
Member

@kloon kloon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the changes, latest looks good to me!

@nielslange
Copy link
Member Author

Thanks for reviewing this PR again and for approving the changes, @kloon.

@nielslange nielslange closed this Mar 19, 2024
@nielslange nielslange reopened this Mar 19, 2024
@kloon kloon removed the request for review from harriswong March 19, 2024 13:59
@wavvves wavvves self-requested a review March 20, 2024 11:33
Copy link
Contributor

@wavvves wavvves left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome work Niels! Thanks for going through the steps with me and helping me out figuring some things I was getting wrong ☺️

@wavvves wavvves merged commit be63107 into trunk Mar 20, 2024
65 of 67 checks passed
@wavvves wavvves deleted the update/41534-improve-local-pickup-flow branch March 20, 2024 14:54
@github-actions github-actions bot added this to the 8.8.0 milestone Mar 20, 2024
@github-actions github-actions bot added the needs: analysis Indicates if the PR requires a PR testing scrub session. label Mar 20, 2024
@nigeljamesstevenson nigeljamesstevenson added needs: external testing Indicates if the PR requires further testing conducted by testers external to the development team. status: analysis complete Indicates if a PR has been analysed by Solaris release: highlight Issues that have a high user impact and need to be discussed/paid attention to. and removed needs: analysis Indicates if the PR requires a PR testing scrub session. labels Mar 20, 2024
@nielslange nielslange mentioned this pull request Mar 27, 2024
11 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs: external testing Indicates if the PR requires further testing conducted by testers external to the development team. plugin: woocommerce Issues related to the WooCommerce Core plugin. release: highlight Issues that have a high user impact and need to be discussed/paid attention to. status: analysis complete Indicates if a PR has been analysed by Solaris team: Rubik
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Local Pickup: simplify flow and improve guidance when the block-based local pickup feature is available
4 participants