Basically my function is setting a Text string that has HTML entities encoded. When this is output on the public page the entities have been encoded again, so for example, & becomes & and ' becomes '
I've tried using html_entity_decode() and a custom function to decode the string prior to sending it to the template. I also tried changing the class from Text to HTMLText. Finally I tried .XML and .RAW in the template. All of those methods still produce double encoding.
Sorry if this has already been answered. I've spent several hours searching the SS Forum and Internet prior to posting here.
Here is the relevant code snippet setting the string in the function:
$post_text = new Text('PostText');
$post_text->setValue($item->get_description());
$output->push(new ArrayData(array(
'PostText' => $post_text
)));