mirror of
https://github.com/writefreely/writefreely
synced 2025-02-17 16:28:23 +00:00
Merge pull request #137 from writeas/fix-long-slugs-chinese
Prevent transliterated slugs exceeding length limit
This commit is contained in:
commit
22c1fabbcb
1 changed files with 12 additions and 2 deletions
14
posts.go
14
posts.go
|
@ -1118,10 +1118,20 @@ func getSlugFromPost(title, body, lang string) string {
|
|||
title = parse.PostLede(title, false)
|
||||
// Truncate lede if needed
|
||||
title, _ = parse.TruncToWord(title, 80)
|
||||
var s string
|
||||
if lang != "" && len(lang) == 2 {
|
||||
return slug.MakeLang(title, lang)
|
||||
s = slug.MakeLang(title, lang)
|
||||
} else {
|
||||
s = slug.Make(title)
|
||||
}
|
||||
return slug.Make(title)
|
||||
|
||||
// Transliteration may cause the slug to expand past the limit, so truncate again
|
||||
s, _ = parse.TruncToWord(s, 80)
|
||||
return strings.TrimFunc(s, func(r rune) bool {
|
||||
// TruncToWord doesn't respect words in a slug, since spaces are replaced
|
||||
// with hyphens. So remove any trailing hyphens.
|
||||
return r == '-'
|
||||
})
|
||||
}
|
||||
|
||||
// isFontValid returns whether or not the submitted post's appearance is valid.
|
||||
|
|
Loading…
Add table
Reference in a new issue