wordpress-seo
wordpress-seo copied to clipboard
WIP: Create FTC via WP CLI
⚠️ 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_configurationcommand - 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
nis selected - and stuff of that nature
- like, extending the WP_CLI::confirm() method, to NOT exit when
- 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 theShopifylabel 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
innovationlabel. - [ ] I have added my hours to the WBSO document.
Fixes #
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 | |
|---|---|
| Change from base Build d84bd62f798ba3d7642a38e318e453fbe1f9f214: | -0.08% |
| Covered Lines: | 29510 |
| Relevant Lines: | 55200 |