Skip to content

Remove FTC upsell notices#23116

Merged
pls78 merged 1 commit intotrunkfrom
enrico/remove-ftc-experiments
Mar 30, 2026
Merged

Remove FTC upsell notices#23116
pls78 merged 1 commit intotrunkfrom
enrico/remove-ftc-experiments

Conversation

@enricobattocchi
Copy link
Copy Markdown
Member

@enricobattocchi enricobattocchi commented Mar 30, 2026

Context

The first-time configuration wizard contains upsell notices for premium add-ons (Yoast SEO Premium, WooCommerce SEO, Local SEO) that were introduced in #22688. These need to be removed as part of Yoast/reserved-tasks#1135.

Summary

This PR can be summarized in the following changelog entry:

  • Removes upsell notices from the first-time configuration wizard while preserving the UI styling improvements introduced in the same PR.

Relevant technical choices:

  • Only the upsell-specific code is removed: the UpsellNotice component, upsell JSX blocks, supporting PHP data (isWooCommerceActive, isWooCommerceSeoActive, Woocommerce_Helper), upsell shortlinks, and the state prop that was threaded to IndexationStep/FinishStep solely for upsell gating.
  • Style changes from the same PR (colors, heights, margins, SVG removal, text formatting, safeCreateInterpolateElement usage) are intentionally preserved.

Test instructions

Test instructions for the acceptance test before the PR gets merged

This PR can be acceptance tested by following these steps:

  1. Go to the Yoast SEO First-time configuration page (/wp-admin/admin.php?page=wpseo_dashboard#/first-time-configuration).
  2. Walk through all steps of the FTC wizard.
  3. Step 1 — SEO data optimization: Verify there is no "Want deeper insights?" upsell notice promoting Yoast SEO Premium below the indexation progress bar.
  4. Step 2 — Site representation:
    • With WooCommerce active but without Yoast WooCommerce SEO installed: verify there is no "Running an online store?" upsell notice.
    • With site representation set to "Organization" and WooCommerce not active: verify there is no "Have a physical location?" upsell notice promoting Yoast Local SEO.
  5. Finish step: Verify there is no "Your site's ready to shine!" upsell notice with a list of Premium benefits and an "Unlock all Premium features" button.
  6. Verify the wizard is otherwise fully functional — all steps can be completed and saved without errors.
  7. Check the browser console for any JavaScript errors.

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

To properly test step 4, you need two environments:

  • One with WooCommerce active (but Yoast WooCommerce SEO not installed) to verify the WooCommerce upsell is gone.
  • One without WooCommerce, with site representation set to "Organization", to verify the Local SEO upsell is gone.

Test instructions for QA when the code is in the RC

  • QA should use the same steps as above.

Impact check

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

  • First-time configuration wizard (all steps)

Other environments

  • This PR also affects Shopify.
  • This PR also affects Yoast SEO for Google Docs.

Documentation

  • I have written documentation for this change.

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.
  • I have run grunt build:images and committed the results, if my PR introduces new images or SVGs.

Innovation

  • No innovation project is applicable for this PR.

Fixes Yoast/reserved-tasks#1135

Remove premium add-on upsell notices (Premium, WooCommerce SEO, Local SEO)
from the FTC wizard while preserving the UI styling improvements.

Co-Authored-By: Claude Opus 4.6 (1M context) <[email protected]>
@enricobattocchi enricobattocchi added the changelog: non-user-facing Needs to be included in the 'Non-userfacing' category in the changelog label Mar 30, 2026
@coveralls
Copy link
Copy Markdown

Pull Request Test Coverage Report for Build ed2beeb6bbce57a7aa41a986ab52246493db5032

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 0 of 0 changed or added relevant lines in 0 files are covered.
  • 1 unchanged line in 1 file lost coverage.
  • Overall coverage increased (+0.02%) to 53.474%

Files with Coverage Reduction New Missed Lines %
src/integrations/admin/first-time-configuration-integration.php 1 0.0%
Totals Coverage Status
Change from base Build bb3b29ddedd5e59101caef5d9f1066c47e13bf04: 0.02%
Covered Lines: 34357
Relevant Lines: 64548

💛 - Coveralls

@pls78 pls78 added this to the 27.4 milestone Mar 30, 2026
Copy link
Copy Markdown
Member

@pls78 pls78 left a comment

Choose a reason for hiding this comment

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

CR && Acc: ✅

@pls78 pls78 merged commit 733ad6d into trunk Mar 30, 2026
43 checks passed
@pls78 pls78 deleted the enrico/remove-ftc-experiments branch March 30, 2026 10:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog: non-user-facing Needs to be included in the 'Non-userfacing' category in the changelog

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants