@@ -25,7 +25,8 @@ import Sitemaps from 'calypso/my-sites/site-settings/sitemaps';
2525import wrapSettingsForm from 'calypso/my-sites/site-settings/wrap-settings-form' ;
2626import { canCurrentUser } from 'calypso/state/selectors/can-current-user' ;
2727import isBlazeEnabled from 'calypso/state/selectors/is-blaze-enabled' ;
28- import { isJetpackSite } from 'calypso/state/sites/selectors' ;
28+ import isSiteComingSoon from 'calypso/state/selectors/is-site-coming-soon' ;
29+ import { getSiteSlug , isJetpackSite } from 'calypso/state/sites/selectors' ;
2930import { getSelectedSiteId } from 'calypso/state/ui/selectors' ;
3031
3132import './style.scss' ;
@@ -35,6 +36,18 @@ const loadForm = () =>
3536 /* webpackChunkName: "async-load-calypso-my-sites-site-settings-seo-settings-form" */ 'calypso/my-sites/site-settings/seo-settings/form'
3637 ) ;
3738
39+ export const shouldShowBlazeAdvertisingOption = ( state , siteId ) => {
40+ return isBlazeEnabled ( state , siteId ) || isSiteComingSoon ( state , siteId ) ;
41+ } ;
42+
43+ export const getBlazeAdvertisingUrl = ( { siteSlug, wpAdminAdvertisingUrl } ) => {
44+ if ( siteSlug ) {
45+ return `/advertising/${ siteSlug } ` ;
46+ }
47+
48+ return wpAdminAdvertisingUrl ;
49+ } ;
50+
3851const SiteSettingsTraffic = ( {
3952 fields,
4053 handleAutosavingRadio,
@@ -46,6 +59,7 @@ const SiteSettingsTraffic = ( {
4659 isSavingSettings,
4760 setFieldValue,
4861 siteId,
62+ siteSlug,
4963 shouldShowAdvertisingOption,
5064 translate,
5165} ) => {
@@ -57,6 +71,10 @@ const SiteSettingsTraffic = ( {
5771 } , [ ] ) ;
5872
5973 const advertisingUrl = useAdvertisingUrl ( ) ;
74+ const blazeAdvertisingUrl = getBlazeAdvertisingUrl ( {
75+ siteSlug,
76+ wpAdminAdvertisingUrl : advertisingUrl ,
77+ } ) ;
6078
6179 return (
6280 // eslint-disable-next-line wpcalypso/jsx-classname-namespace
@@ -95,7 +113,7 @@ const SiteSettingsTraffic = ( {
95113 ) }
96114 ctaText = { translate ( 'Get started' ) }
97115 image = { blazeIllustration }
98- href = { advertisingUrl }
116+ href = { blazeAdvertisingUrl }
99117 />
100118 ) }
101119 { isAdmin && (
@@ -142,14 +160,16 @@ const connectComponent = connect( ( state ) => {
142160 const isAdmin = canCurrentUser ( state , siteId , 'manage_options' ) ;
143161 const isJetpack = isJetpackSite ( state , siteId ) ;
144162 const isJetpackAdmin = isJetpack && isAdmin ;
145- const shouldShowAdvertisingOption = isBlazeEnabled ( state , siteId ) ;
163+ const siteSlug = getSiteSlug ( state , siteId ) ;
164+ const showAdvertisingOption = shouldShowBlazeAdvertisingOption ( state , siteId ) ;
146165
147166 return {
148167 siteId,
149168 isAdmin,
150169 isJetpack,
151170 isJetpackAdmin,
152- shouldShowAdvertisingOption,
171+ siteSlug,
172+ shouldShowAdvertisingOption : showAdvertisingOption ,
153173 } ;
154174} ) ;
155175
0 commit comments