feat: SEO backend data (1/4)
This commit is contained in:
1 parent
cb1410f0b0
commit
0eb46b0d74
90 files changed
+6094
-350
No files matched your search
@@ -12,8 +12,33 @@ func TextChange(field string, before string, after string) Change {
|
||||
}
|
||||
|
||||
func BodyChange(before string, after string) Change {
|
||||
return SizeChange(FieldBody, before, after)
|
||||
}
|
||||
|
||||
func SizeChange(field string, before string, after string) Change {
|
||||
delta := utf8.RuneCountInString(after) - utf8.RuneCountInString(before)
|
||||
return Change{Field: FieldBody, Kind: ChangeBody, Delta: &delta}
|
||||
return Change{Field: field, Kind: ChangeBody, Delta: &delta}
|
||||
}
|
||||
|
||||
func appendSizeChange(changes []Change, field string, before string, after string) []Change {
|
||||
if before == after {
|
||||
return changes
|
||||
}
|
||||
return append(changes, SizeChange(field, before, after))
|
||||
}
|
||||
|
||||
func SEOChanges(before article.Article, after article.Article) []Change {
|
||||
changes := []Change{}
|
||||
changes = AppendTextChange(changes, FieldSlug, before.Slug, after.Slug)
|
||||
changes = AppendTextChange(changes, FieldCanonicalURL, before.CanonicalURL, after.CanonicalURL)
|
||||
changes = AppendTextChange(changes, FieldNoindex, strconv.FormatBool(before.Noindex), strconv.FormatBool(after.Noindex))
|
||||
changes = appendSizeChange(changes, FieldExcerpt, before.Excerpt, after.Excerpt)
|
||||
changes = appendSizeChange(changes, FieldSEOTitle, before.SEOTitle, after.SEOTitle)
|
||||
changes = appendSizeChange(changes, FieldSEODescription, before.SEODescription, after.SEODescription)
|
||||
changes = appendSizeChange(changes, FieldCoverImageAlt, before.CoverImageAlt, after.CoverImageAlt)
|
||||
changes = appendSizeChange(changes, FieldSocialTitle, before.SocialTitle, after.SocialTitle)
|
||||
changes = appendSizeChange(changes, FieldSocialDescription, before.SocialDescription, after.SocialDescription)
|
||||
return changes
|
||||
}
|
||||
|
||||
func ArticleChanges(before article.Article, after article.Article) []Change {
|
||||
@@ -32,15 +57,15 @@ func ArticleChanges(before article.Article, after article.Article) []Change {
|
||||
|
||||
func VariantChanges(before image.VariantSettings, after image.VariantSettings) []Change {
|
||||
changes := []Change{}
|
||||
changes = appendChange(changes, FieldWidth, image.DimensionText(before.Width), image.DimensionText(after.Width))
|
||||
changes = appendChange(changes, FieldHeight, image.DimensionText(before.Height), image.DimensionText(after.Height))
|
||||
changes = appendChange(changes, FieldFit, string(before.Fit), string(after.Fit))
|
||||
changes = appendChange(changes, FieldFormat, string(before.Format), string(after.Format))
|
||||
changes = appendChange(changes, FieldQuality, image.QualityText(before.Quality), image.QualityText(after.Quality))
|
||||
changes = AppendTextChange(changes, FieldWidth, image.DimensionText(before.Width), image.DimensionText(after.Width))
|
||||
changes = AppendTextChange(changes, FieldHeight, image.DimensionText(before.Height), image.DimensionText(after.Height))
|
||||
changes = AppendTextChange(changes, FieldFit, string(before.Fit), string(after.Fit))
|
||||
changes = AppendTextChange(changes, FieldFormat, string(before.Format), string(after.Format))
|
||||
changes = AppendTextChange(changes, FieldQuality, image.QualityText(before.Quality), image.QualityText(after.Quality))
|
||||
return changes
|
||||
}
|
||||
|
||||
func appendChange(changes []Change, field string, before string, after string) []Change {
|
||||
func AppendTextChange(changes []Change, field string, before string, after string) []Change {
|
||||
if before == after {
|
||||
return changes
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user