text.double-escaped
Card text is escaped twice. Level: Warning.
When it is raised
Raised when the value used for og:title, og:description, og:site_name or og:image:alt, already decoded once, still contains a character reference that decodes again. That is a numeric reference such as ' or ', or a named one the parser recognises, such as &, " or ’, in each case ending with a semicolon. The og:title value falls back to twitter:title and then the page <title>, og:description to twitter:description and then <meta name="description">, and og:image:alt to twitter:image:alt. The message names each affected field by its og: name, whichever tag supplied the value, and quotes the first affected value with whitespace collapsed, shortened to 70 characters. A value meant to show literal entity text also raises it.
What it does to a shared link
The card shows the entity itself, such as ' where an apostrophe was meant.
How to fix it
- View the page source and find the affected attribute: a value escaped twice reads &#39; or &amp; where it should read ' or &.
- Escape the value once: pass the raw string to the template, or mark an already-escaped value as safe so the template does not escape it again.
- Rebuild and confirm the attribute holds a single level of escaping.