I have a virtual page derived from a normal page. This normal page has a text field. You could even take the default Content field on a page as an example.
I then have a holder page to display a list of these pages and allow the user to click through to the page itself. This holder loops these using:
<% control Children %>
<% end_control %>
In the template, I am truncating the text in Content using $Content.Summary(40).
This works as expected where the child is a real data object. But when it is a virtual page, the output is blank. However in these cases if I just change the template to be $Content (without calling Summary), the text is output in full.
I found that the above is true for any native function supported by the datatype (in this case, and HTMLField)
Is this a framework limitation? Is there a workaround?