Structures

Type
Class
Namespace
craft\services
Inherits
craft\services\Structures » yii\base\Component (opens new window) » yii\base\BaseObject (opens new window)
Implements
yii\base\Configurable (opens new window)
Since
3.0.0

Structures service.

An instance of the service is available via Craft::$app->structures.

View source (opens new window)

# Public Properties

Property Description
behaviors (opens new window) yii\base\Behavior (opens new window) – List of behaviors attached to this component.
mutexTimeout integer (opens new window) – The timeout to pass to yii\mutex\Mutex::acquire() (opens new window) when acquiring a lock on the structure.

# mutexTimeout

Type
integer (opens new window)
Default value
3
Since
3.0.19

The timeout to pass to yii\mutex\Mutex::acquire() (opens new window) when acquiring a lock on the structure.

View source (opens new window)

# Public Methods

Method Description
__call() (opens new window) Calls the named method which is not a class method.
__clone() (opens new window) This method is called after the object is created by cloning an existing one.
__construct() (opens new window) Constructor.
__get() (opens new window) Returns the value of a component property.
__isset() (opens new window) Checks if a property is set, i.e. defined and not null.
__set() (opens new window) Sets the value of a component property.
__unset() (opens new window) Sets a component property to be null.
append() Appends an element to another within a given structure.
appendToRoot() Appends an element to the root of a given structure.
applyBranchLimitToElements() Filters an array of elements down to only <= X branches.
attachBehavior() (opens new window) Attaches a behavior to this component.
attachBehaviors() (opens new window) Attaches a list of behaviors to the component.
behaviors() (opens new window) Returns a list of behaviors that this component should behave as.
canGetProperty() (opens new window) Returns a value indicating whether a property can be read.
canSetProperty() (opens new window) Returns a value indicating whether a property can be set.
className() (opens new window) Returns the fully qualified name of this class.
deleteStructureById() Deletes a structure by its ID.
detachBehavior() (opens new window) Detaches a behavior from the component.
detachBehaviors() (opens new window) Detaches all behaviors from the component.
ensureBehaviors() (opens new window) Makes sure that the behaviors declared in behaviors() (opens new window) are attached to this component.
fillGapsInElements() Patches an array of entries, filling in any gaps in the tree.
getBehavior() (opens new window) Returns the named behavior object.
getBehaviors() (opens new window) Returns all behaviors attached to this component.
getElementLevelDelta() Returns the descendant level delta for a given element.
getStructureById() Returns a structure by its ID.
getStructureByUid() Returns a structure by its UID.
hasEventHandlers() (opens new window) Returns a value indicating whether there is any handler attached to the named event.
hasMethod() (opens new window) Returns a value indicating whether a method is defined.
hasProperty() (opens new window) Returns a value indicating whether a property is defined for this component.
init() (opens new window) Initializes the object.
moveAfter() Moves an element after another within a given structure.
moveBefore() Moves an element before another within a given structure.
off() (opens new window) Detaches an existing event handler from this component.
on() (opens new window) Attaches an event handler to an event.
prepend() Prepends an element to another within a given structure.
prependToRoot() Prepends an element to the root of a given structure.
remove() Removes an element from a given structure.
saveStructure() Saves a structure
trigger() (opens new window) Triggers an event.

# append()

Appends an element to another within a given structure.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# appendToRoot()

Appends an element to the root of a given structure.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# applyBranchLimitToElements()

Since
3.6.0

Filters an array of elements down to only <= X branches.

View source (opens new window)

Arguments

Returns

void

# deleteStructureById()

Deletes a structure by its ID.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

# fillGapsInElements()

Since
3.6.0

Patches an array of entries, filling in any gaps in the tree.

View source (opens new window)

Arguments

Returns

void

# getElementLevelDelta()

Returns the descendant level delta for a given element.

View source (opens new window)

Arguments

Returns

integer (opens new window)

# getStructureById()

Returns a structure by its ID.

View source (opens new window)

Arguments

Returns

craft\models\Structure, null (opens new window)

# getStructureByUid()

Returns a structure by its UID.

View source (opens new window)

Arguments

Returns

craft\models\Structure, null (opens new window)

# moveAfter()

Moves an element after another within a given structure.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# moveBefore()

Moves an element before another within a given structure.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# prepend()

Prepends an element to another within a given structure.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# prependToRoot()

Prepends an element to the root of a given structure.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# remove()

Since
3.7.19

Removes an element from a given structure.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# saveStructure()

Saves a structure

View source (opens new window)

Arguments

Returns

boolean (opens new window) – Whether the structure was saved successfully

Throws

# Constants

Constant Description
MODE_AUTO
MODE_INSERT
MODE_UPDATE

# Events

# EVENT_AFTER_MOVE_ELEMENT

Type
craft\events\MoveElementEvent

The event that is triggered after an element is moved.

# EVENT_BEFORE_MOVE_ELEMENT

Type
craft\events\MoveElementEvent

The event that is triggered before an element is moved.