wordpress-seo icon indicating copy to clipboard operation
wordpress-seo copied to clipboard

WIP: Create FTC via WP CLI

Open leonidasmi opened this issue 1 year ago • 1 comments

⚠️ THIS IS VERY MUCH A WORK IN PROGRESS ⚠️

TODO:

  • Maybe, it would be nice to create separate commands per FTC step and then combine them for the whole wp yoast first_time_configuration command
  • Maybe, create interactivity methods to facilitate having a FTC-like progress, but this time in CLI
    • like, extending the WP_CLI::confirm() method, to NOT exit when n is selected
    • and stuff of that nature
  • Also allow for non-interactive scenarios, probably by allowing arguments for every command
  • Keep track of the steps already completed and act accordingly
  • In case the site represents a person, the social profiles step needs to be skipped

Context

  • With this PR, we want to make onboarding easier for power users that are activating Yoast SEO via the WP CLI. We want to do that by running them through a FTC-like process, but this time in WP CLI, once they activate the plugin.

Summary

This PR can be summarized in the following changelog entry:

  • Introduces a feature for WP CLI users to fill in the necessary data for their website.

Relevant technical choices:

Test instructions

Test instructions for the acceptance test before the PR gets merged

This PR can be acceptance tested by following these steps:

Relevant test scenarios

  • [ ] Changes should be tested with the browser console open
  • [ ] Changes should be tested on different posts/pages/taxonomies/custom post types/custom taxonomies
  • [ ] Changes should be tested on different editors (Default Block/Gutenberg/Classic/Elementor/other)
  • [ ] Changes should be tested on different browsers
  • [ ] Changes should be tested on multisite

Test instructions for QA when the code is in the RC

  • [ ] QA should use the same steps as above.

QA can test this PR by following these steps:

Impact check

This PR affects the following parts of the plugin, which may require extra testing:

UI changes

  • [ ] This PR changes the UI in the plugin. I have added the 'UI change' label to this PR.

Other environments

  • [ ] This PR also affects Shopify. I have added a changelog entry starting with [shopify-seo], added test instructions for Shopify and attached the Shopify label to this PR.

Documentation

  • [ ] I have written documentation for this change. For example, comments in the Relevant technical choices, comments in the code, documentation on Confluence / shared Google Drive / Yoast developer portal, or other.

Quality assurance

  • [ ] I have tested this code to the best of my abilities.
  • [ ] During testing, I had activated all plugins that Yoast SEO provides integrations for.
  • [ ] I have added unit tests to verify the code works as intended.
  • [ ] If any part of the code is behind a feature flag, my test instructions also cover cases where the feature flag is switched off.
  • [ ] I have written this PR in accordance with my team's definition of done.
  • [ ] I have checked that the base branch is correctly set.

Innovation

  • [ ] No innovation project is applicable for this PR.
  • [ ] This PR falls under an innovation project. I have attached the innovation label.
  • [ ] I have added my hours to the WBSO document.

Fixes #

leonidasmi avatar Mar 14 '24 11:03 leonidasmi

Pull Request Test Coverage Report for Build 2a894cf47d0e70869069e2d63512a3138ffd4ae5

Details

  • 0 of 92 (0.0%) changed or added relevant lines in 5 files are covered.
  • 669 unchanged lines in 1 file lost coverage.
  • Overall coverage decreased (-0.08%) to 53.672%

Changes Missing Coverage Covered Lines Changed/Added Lines %
src/commands/ask-trait.php 0 10 0.0%
src/commands/first-time-configuration-command.php 0 13 0.0%
src/commands/first-time-configuration/social-profiles-command.php 0 17 0.0%
src/commands/first-time-configuration/site-representation-command.php 0 24 0.0%
src/commands/first-time-configuration/personal-preferences-command.php 0 28 0.0%
<!-- Total: 0 92
Files with Coverage Reduction New Missed Lines %
src/generated/container.php 669 0.0%
<!-- Total: 669
Totals Coverage Status
Change from base Build d84bd62f798ba3d7642a38e318e453fbe1f9f214: -0.08%
Covered Lines: 29510
Relevant Lines: 55200

💛 - Coveralls

coveralls avatar Mar 14 '24 11:03 coveralls