Importing HTML in Definitions with !CDATA

Importing HTML in Definitions with !CDATA

by John Provasnik -
Number of replies: 3
Picture of Particularly helpful Moodlers Picture of Testers

Hi -- I'm using Moodle 4.1 and am looking for guidance on "correctly" importing HTML into a definition following this Glossary FAQ tidbit:

  • HTML and XHTML tags written within CONCEPT or DEFINITION elements will fail on import, showing "Array" instead of the desired content. To remedy this, try writing the (X)HTML tags within <![CDATA[ ]]> markup.
Because Glossary pop up entries are soooo skinny and become so tall if there's a lot of content in the definition, I'm trying to import some HTML to better structure my definition so it looks more 'readable' when in the pop up. 

When I wrap my HTML code with <![CDATA[ ... ]]>, I see exactly that HTML as my glossary entry Definition: 


This is how I had it in my XML file:




Average of ratings: -
In reply to John Provasnik

Re: Importing HTML in Definitions with !CDATA

by Eoin Campbell -
Picture of Core developers Picture of Particularly helpful Moodlers Picture of Plugin developers
You’re double-escaping the HTML by using entities inside the CDATA section, just use standard markup instead.
Average of ratings: Useful (1)
In reply to Eoin Campbell

Re: Importing HTML in Definitions with !CDATA

by John Provasnik -
Picture of Particularly helpful Moodlers Picture of Testers
Thanks -- I've successfully done that now (and had to also get rid of the line breaks)
In reply to John Provasnik

Importing HTML in Definitions with !CDATA

by John Provasnik -
Picture of Particularly helpful Moodlers Picture of Testers
I realized my issue -- I needed to employ the =CLEAN() formula in excel on my Definition column to remove the line breaks -- I've gotten it to work now.