This spec defines additional “safe shapes” for the normalize_wp_quotes.py script to increase its conversion coverage while maintaining safety and predictability.
<cite>Bare text</cite> and convert to Source: Bare text.<cite>https://...</cite> and convert to Source: [https://...](https://...).<a> tags inside <cite>, taking the first non-empty one as the primary source.( and ) in citation titles and URLs.The following tags are now supported within paragraphs and list items:
<em>, <i> -> *<strong>, <b> -> **<code> -> `<small>, <sub>, <sup>, <font>, <span>, <div>, <link> -> Stripped (content preserved)<br /> -> \n (converted to a newline within the blockquote line)<ul> and <li> tags. Rendered as * items.<ol> and <li> tags. Currently rendered as * items (same as unordered) for simplicity in blockquotes.### Header) within the blockquote.<blockquote> tags within wp:quote blocks or raw blockquotes.<!-- wp:... --> and <!-- /wp:... --> markers within a quote block to reveal the actual content.<figure> tags containing <img> tags. Extract the <img> tag and render it directly within the blockquote.<!-- wp:image --> markers.<div> tags with class wp-block-embed__wrapper. Extract the raw URL within the div and render it as a plain URL line in the blockquote.<!-- wp:embed --> markers.re.DOTALL for tag matching.render_safe_blockquote_inner for nested blockquotes.>.