Modifed the VirtualPage getCMSFields to fix the issue #2827 which was happening when creating Literal Fields on Virtual Pages . I used the same technique as the one use by $member->getCMSFields() i use the beforeUpdateCMSFields method