opengraph template: CJK series meta tag malfunction #10647
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The current
opengraph.html
template generate theog:see_also
meta tags, but it does not work when theseries
front matter includes CJK characters. The root cause is that these characters are being url-encoded afterurlize
filter, while they're not in the.Site.Taxonomies.series
map.e.g.
Say I have a tag named
料理
, afterurlize
filter, it becomes%E6%96%99%E7%90%86
. Meanwhile, the.Site.Taxonomies.series
looks a bit like:which is why it return no series page.
The ideal solution should be removing the
urlize
, but the filter also sanitized other characters (e.g. emojis), so I fix the bug by using theurls.Parse
function and then take thePath
attribute, which is roughly URL decode the percentage encoded string back.