class VirtualPage extends Page (View source)

Virtual Page creates an instance of a page, with the same fields that the original page had, but readonly.

This allows you can have a page in mulitple places in the site structure, with different children without duplicating the content.

Note: This Only duplicates $db fields and not the $has_one etc..

Properties

public static $virtualFields
int $CopyContentFromID

Methods

public
array
getVirtualFields()

Generates the array of fields required for the page type.

public
array
getNonVirtualisedFields()

List of fields or properties to never virtualise

public
setCopyContentFromID($val)

No description

public
ContentSource()

No description

public
array
MetaComponents()

No description

public
allowedChildren()

No description

public
syncLinkTracking()

No description

public
bool
canPublish(Member $member = null)

We can only publish the page if there is a published source page

public
isPublishable()

Returns true if is page is publishable by anyone at all Return false if the source page isn't published yet.

public
getCMSFields()

Generate the CMS fields from the fields from the original page.

public
onBeforeWrite()

No description

protected
refreshFromCopied()

Copy any fields from the copied record to bootstrap /backup

public
getSettingsFields()

No description

public
validate()

No description

public
CMSTreeClasses()

No description

public
array
getViewerTemplates(string $suffix = '')

Use the target page's class name for fetching templates - as we need to take on its appearance

public
mixed
__get(string $field)

Allow attributes on the master page to pass through to the virtual page

public
getField($field)

No description

public
bool
isFieldVirtualised(string $field)

Check if given field is virtualised

public
mixed
__call(string $method, array $args)

Pass unrecognized method calls on to the original data object

public
bool
hasField(string $field)

No description

public
bool
hasMethod(string $method)

No description

public
string
castingHelper(string $field)

Return the "casting helper" (a piece of PHP code that when evaluated creates a casted value object) for a field on this object.

public
allMethodNames($custom = false)

{@inheritdoc}

public
getControllerName()

{@inheritdoc}

CopyContentFrom()

No description

Details

array getVirtualFields()

Generates the array of fields required for the page type.

Return Value

array

array getNonVirtualisedFields()

List of fields or properties to never virtualise

Return Value

array

setCopyContentFromID($val)

No description

Parameters

$val

ContentSource()

No description

array MetaComponents()

No description

Return Value

array

allowedChildren()

No description

syncLinkTracking()

No description

bool canPublish(Member $member = null)

We can only publish the page if there is a published source page

Parameters

Member $member

Member to check

Return Value

bool

isPublishable()

Returns true if is page is publishable by anyone at all Return false if the source page isn't published yet.

Note that isPublishable doesn't affect ete from live, only publish.

getCMSFields()

Generate the CMS fields from the fields from the original page.

onBeforeWrite()

No description

protected refreshFromCopied()

Copy any fields from the copied record to bootstrap /backup

getSettingsFields()

No description

validate()

No description

CMSTreeClasses()

No description

array getViewerTemplates(string $suffix = '')

Use the target page's class name for fetching templates - as we need to take on its appearance

Parameters

string $suffix

Return Value

array

mixed __get(string $field)

Allow attributes on the master page to pass through to the virtual page

Parameters

string $field

Return Value

mixed

getField($field)

No description

Parameters

$field

bool isFieldVirtualised(string $field)

Check if given field is virtualised

Parameters

string $field

Return Value

bool

mixed __call(string $method, array $args)

Pass unrecognized method calls on to the original data object

Parameters

string $method
array $args

Return Value

mixed

bool hasField(string $field)

No description

Parameters

string $field

Return Value

bool

bool hasMethod(string $method)

No description

Parameters

string $method

Return Value

bool

string castingHelper(string $field)

Return the "casting helper" (a piece of PHP code that when evaluated creates a casted value object) for a field on this object.

Parameters

string $field

Return Value

string

allMethodNames($custom = false)

{@inheritdoc}

Parameters

$custom

getControllerName()

{@inheritdoc}

SiteTree CopyContentFrom()

No description

Return Value

SiteTree