diff --git a/ghost/admin/app/models/setting.js b/ghost/admin/app/models/setting.js index 538d5a19b7..2a0ffdf228 100644 --- a/ghost/admin/app/models/setting.js +++ b/ghost/admin/app/models/setting.js @@ -29,5 +29,13 @@ export default Model.extend(ValidationEngine, { return {isActive: true}; } }), - membersSubscriptionSettings: attr('string') + membersSubscriptionSettings: attr('string'), + metaTitle: attr('string'), + metaDescription: attr('string'), + twitterTitle: attr('string'), + twitterDescription: attr('string'), + twitterImage: attr('string'), + ogTitle: attr('string'), + ogDescription: attr('string'), + ogImage: attr('string') }); diff --git a/ghost/admin/app/styles/layouts/settings.css b/ghost/admin/app/styles/layouts/settings.css index 9bfaccc42c..78a052898b 100644 --- a/ghost/admin/app/styles/layouts/settings.css +++ b/ghost/admin/app/styles/layouts/settings.css @@ -70,6 +70,26 @@ margin: 1px 0 0 0; } +.gh-setting-content-extended label { + display: block; + font-size: 1.25rem; + font-weight: 600; + color: var(--darkgrey); + margin-bottom: 4px; +} + +.gh-setting-content-extended textarea { + font-size: 1.5rem; + line-height: 1.4em; + max-width: initial; +} + +.gh-setting-content-extended .gh-image-uploader { + margin: 0; + border: 1px solid var(--lightgrey); +} + + /* Images */ .gh-setting-action-smallimg { @@ -693,7 +713,7 @@ margin-left: -17px; } -.theme-fatal-error .theme-validation-type-label::before, +.theme-fatal-error .theme-validation-type-label::before, .theme-error .theme-validation-type-label::before { background: color-mod(var(--red) alpha(0.85)); } @@ -764,4 +784,4 @@ p.theme-validation-details { .blog-logo, .blog-icon { background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Ctitle%3ERectangle%3C/title%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cpath fill='%23E6EEF2' d='M0 0h24v24H0z'/%3E%3Cpath fill='%23D8E2E8' d='M0 0h12v12H0zM12 12h12v12H12z'/%3E%3C/g%3E%3C/svg%3E"); -} \ No newline at end of file +} diff --git a/ghost/admin/app/styles/spirit/_flexbox.css b/ghost/admin/app/styles/spirit/_flexbox.css index 5002be7cd7..5f42d59ff7 100644 --- a/ghost/admin/app/styles/spirit/_flexbox.css +++ b/ghost/admin/app/styles/spirit/_flexbox.css @@ -72,6 +72,10 @@ .flex-shrink-0 { flex-shrink: 0; } .flex-shrink-1 { flex-shrink: 1; } +.flex-basis-1-2 { flex-basis: 50%; } +.flex-basis-2-3 { flex-basis: 67%; } +.flex-basis-1-3 { flex-basis: 33%; } + @media (--breakpoint-not-small) { .flex-ns { display: flex; } .inline-flex-ns { display: inline-flex; } @@ -129,6 +133,10 @@ .flex-shrink-0-ns { flex-shrink: 0; } .flex-shrink-1-ns { flex-shrink: 1; } + + .flex-basis-1-2-ns { flex-basis: 50%; } + .flex-basis-2-3-ns { flex-basis: 67%; } + .flex-basis-1-3-ns { flex-basis: 33%; } } @media (--breakpoint-medium) { .flex-m { display: flex; } @@ -187,6 +195,10 @@ .flex-shrink-0-m { flex-shrink: 0; } .flex-shrink-1-m { flex-shrink: 1; } + + .flex-basis-1-2-m { flex-basis: 50%; } + .flex-basis-2-3-m { flex-basis: 67%; } + .flex-basis-1-3-m { flex-basis: 33%; } } @media (--breakpoint-large) { @@ -247,4 +259,8 @@ .flex-shrink-0-l { flex-shrink: 0; } .flex-shrink-1-l { flex-shrink: 1; } + + .flex-basis-1-2-l { flex-basis: 50%; } + .flex-basis-2-3-l { flex-basis: 67%; } + .flex-basis-1-3-l { flex-basis: 33%; } } diff --git a/ghost/admin/app/templates/settings/general.hbs b/ghost/admin/app/templates/settings/general.hbs index 4a0f0976e9..6f6139f889 100644 --- a/ghost/admin/app/templates/settings/general.hbs +++ b/ghost/admin/app/templates/settings/general.hbs @@ -98,7 +98,6 @@
Recommended: 70 characters. You’ve used {{gh-count-down-characters this.settings.metaTitle 70}}
+ {{/gh-form-group}} + {{#gh-form-group errors=this.settings.errors hasValidated=this.settings.hasValidated property="metaDescription"}} + + {{gh-textarea + id="metaDescription" + type="text" + placeholder=(truncate this.settings.description 300) + value=(readonly this.settings.metaDescription) + input=(action (mut this.settings.metaDescription) value="target.value") + data-test-input="metaDescription" + }} + {{gh-error-message errors=this.settings.errors property="metaDescription" data-test-error="metaDescription"}} +Recommended: 156 characters. You’ve used {{gh-count-down-characters this.settings.metaDescription 156}}
+ {{/gh-form-group}} +