Site

Type
Class
Namespace
craft\models
Inherits
craft\models\Site » craft\base\Model » yii\base\Model (opens new window) » yii\base\Component (opens new window) » yii\base\BaseObject (opens new window)
Implements
ArrayAccess (opens new window), IteratorAggregate (opens new window), yii\base\Arrayable (opens new window), yii\base\Configurable (opens new window), yii\base\StaticInstanceInterface (opens new window)
Uses traits
craft\base\ClonefixTrait, yii\base\ArrayableTrait (opens new window), yii\base\StaticInstanceTrait (opens new window)
Since
3.0.0

Site model class.

View source (opens new window)

# Public Properties

Property Description
activeValidators (opens new window) yii\validators\Validator (opens new window) – The validators applicable to the current scenario (opens new window).
attributes (opens new window) array (opens new window) – Attribute values (name => value).
baseUrl string (opens new window), null (opens new window) – Base URL
behaviors (opens new window) yii\base\Behavior (opens new window) – List of behaviors attached to this component
config array (opens new window)
dateCreated DateTime (opens new window) – Date created
dateUpdated DateTime (opens new window) – Date updated
enabled boolean (opens new window) – Enabled?
errors (opens new window) array (opens new window) – Errors for all attributes or the specified attribute.
firstErrors (opens new window) array (opens new window) – The first errors.
group craft\models\SiteGroup
groupId integer (opens new window), null (opens new window) – Group ID
handle string (opens new window), null (opens new window) – Handle
hasUrls boolean (opens new window) – Has URLs
id integer (opens new window), null (opens new window) – ID
iterator (opens new window) ArrayIterator (opens new window) – An iterator for traversing the items in the list.
language string (opens new window), null (opens new window) – Name
locale craft\i18n\Locale
name string (opens new window), null (opens new window) – Name
originalBaseUrl string (opens new window), null (opens new window) – Original base URL (set if baseUrl was overridden by the config)
originalName string (opens new window), null (opens new window) – Original name (set if name was overridden by the config)
primary boolean (opens new window) – Primary site?
scenario (opens new window) string (opens new window) – The scenario that this model is in.
sortOrder integer (opens new window) – Sort order
uid string (opens new window), null (opens new window) – Site UID
validators (opens new window) ArrayObject (opens new window), yii\validators\Validator (opens new window) – All the validators declared in the model.

# baseUrl

Type
string (opens new window), null (opens new window)
Default value
'@web/'

Base URL

View source (opens new window)

# config

Type
array (opens new window)
Default value
null
Access
Read-only
Since
3.5.0

View source (opens new window)

# dateCreated

Type
DateTime (opens new window)
Default value
null

Date created

View source (opens new window)

# dateUpdated

Type
DateTime (opens new window)
Default value
null

Date updated

View source (opens new window)

# enabled

Type
boolean (opens new window)
Default value
true
Since
3.5.0

Enabled?

View source (opens new window)

# group

Type
craft\models\SiteGroup
Default value
null
Access
Read-only

View source (opens new window)

# groupId

Type
integer (opens new window), null (opens new window)
Default value
null

Group ID

View source (opens new window)

# handle

Type
string (opens new window), null (opens new window)
Default value
null

Handle

View source (opens new window)

# hasUrls

Type
boolean (opens new window)
Default value
true

Has URLs

View source (opens new window)

# id

Type
integer (opens new window), null (opens new window)
Default value
null

ID

View source (opens new window)

# language

Type
string (opens new window), null (opens new window)
Default value
null

Name

View source (opens new window)

# locale

Type
craft\i18n\Locale
Default value
null
Access
Read-only
Since
3.5.8

View source (opens new window)

# name

Type
string (opens new window), null (opens new window)
Default value
null

Name

View source (opens new window)

# originalBaseUrl

Type
string (opens new window), null (opens new window)
Default value
null

Original base URL (set if baseUrl was overridden by the config)

View source (opens new window)

# originalName

Type
string (opens new window), null (opens new window)
Default value
null

Original name (set if name was overridden by the config)

View source (opens new window)

# primary

Type
boolean (opens new window)
Default value
false

Primary site?

View source (opens new window)

# sortOrder

Type
integer (opens new window)
Default value
1

Sort order

View source (opens new window)

# uid

Type
string (opens new window), null (opens new window)
Default value
null

Site UID

View source (opens new window)

# Public Methods

Method Description
__call() (opens new window) Calls the named method which is not a class method.
__clone()
__construct() (opens new window) Constructor.
__get() (opens new window) Returns the value of an object property.
__isset() (opens new window) Checks if a property is set, i.e. defined and not null.
__set() (opens new window) Sets value of an object property.
__toString() Use the translated group name as the string representation.
__unset() (opens new window) Sets an object property to null.
activeAttributes() (opens new window) Returns the attribute names that are subject to validation in the current scenario.
addError() (opens new window) Adds a new error to the specified attribute.
addErrors() (opens new window) Adds a list of errors.
addModelErrors() Adds errors from another model, with a given attribute name prefix.
afterValidate() (opens new window) This method is invoked after validation ends.
attachBehavior() (opens new window) Attaches a behavior to this component.
attachBehaviors() (opens new window) Attaches a list of behaviors to the component.
attributeHints() (opens new window) Returns the attribute hints.
attributeLabels() Returns the attribute labels.
attributes() (opens new window) Returns the list of attribute names.
beforeValidate() (opens new window) This method is invoked before validation starts.
behaviors() 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.
clearErrors() (opens new window) Removes errors for all attributes or a single attribute.
createValidators() (opens new window) Creates validator objects based on the validation rules specified in rules() (opens new window).
datetimeAttributes() Returns the names of any attributes that should hold DateTime (opens new window) values.
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.
extraFields() (opens new window) Returns the list of fields that can be expanded further and returned by toArray() (opens new window).
fields() (opens new window) Returns the list of fields that should be returned by default by toArray() (opens new window) when no specific fields are specified.
formName() (opens new window) Returns the form name that this model class should use.
generateAttributeLabel() (opens new window) Generates a user friendly attribute label based on the give attribute name.
getActiveValidators() (opens new window) Returns the validators applicable to the current scenario (opens new window).
getAttributeHint() (opens new window) Returns the text hint for the specified attribute.
getAttributeLabel() (opens new window) Returns the text label for the specified attribute.
getAttributes() (opens new window) Returns attribute values.
getBaseUrl() Returns the site’s base URL.
getBehavior() (opens new window) Returns the named behavior object.
getBehaviors() (opens new window) Returns all behaviors attached to this component.
getConfig() Returns the field layout config for this site.
getError() Returns the first error of the specified attribute.
getErrorSummary() (opens new window) Returns the errors for all attributes as a one-dimensional array.
getErrors() (opens new window) Returns the errors for all attributes or a single attribute.
getFirstError() (opens new window) Returns the first error of the specified attribute.
getFirstErrors() (opens new window) Returns the first error of every attribute in the model.
getGroup() Returns the site's group
getIterator() (opens new window) Returns an iterator for traversing the attributes in the model.
getLocale() Returns the locale for this site’s language.
getScenario() (opens new window) Returns the scenario that this model is used in.
getValidators() (opens new window) Returns all the validators declared in rules() (opens new window).
hasErrors() Returns a value indicating whether there is any validation error.
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.
init() Initializes the object.
instance() (opens new window) Returns static class instance, which can be used to obtain meta information.
isAttributeActive() (opens new window) Returns a value indicating whether the attribute is active in the current scenario.
isAttributeRequired() (opens new window) Returns a value indicating whether the attribute is required.
isAttributeSafe() (opens new window) Returns a value indicating whether the attribute is safe for massive assignments.
load() (opens new window) Populates the model with input data.
loadMultiple() (opens new window) Populates a set of models with the data from end user.
off() (opens new window) Detaches an existing event handler from this component.
offsetExists() (opens new window) Returns whether there is an element at the specified offset.
offsetGet() (opens new window) Returns the element at the specified offset.
offsetSet() (opens new window) Sets the element at the specified offset.
offsetUnset() (opens new window) Sets the element value at the specified offset to null.
on() (opens new window) Attaches an event handler to an event.
onUnsafeAttribute() (opens new window) This method is invoked when an unsafe attribute is being massively assigned.
overrideBaseUrl() Overrides the base URL while keeping track of the original one.
overrideName() Overrides the name while keeping track of the original one.
rules() Returns the validation rules for attributes.
safeAttributes() (opens new window) Returns the attribute names that are safe to be massively assigned in the current scenario.
scenarios() (opens new window) Returns a list of scenarios and the corresponding active attributes.
setAttributes() (opens new window) Sets the attribute values in a massive way.
setScenario() (opens new window) Sets the scenario for the model.
toArray() (opens new window) Converts the model into an array.
trigger() (opens new window) Triggers an event.
validate() (opens new window) Performs the data validation.
validateMultiple() (opens new window) Validates multiple models.

# __toString()

Use the translated group name as the string representation.

View source (opens new window)

Returns

string (opens new window)

# attributeLabels()

Returns the attribute labels.

Attribute labels are mainly used for display purpose. For example, given an attribute firstName, we can declare a label First Name which is more user-friendly and can be displayed to end users.

By default an attribute label is generated using generateAttributeLabel() (opens new window). This method allows you to explicitly specify attribute labels.

Note, in order to inherit labels defined in the parent class, a child class needs to merge the parent labels with child labels using functions such as array_merge().

View source (opens new window)

Returns

array (opens new window) – Attribute labels (name => label)

# behaviors()

Returns a list of behaviors that this component should behave as.

Child classes may override this method to specify the behaviors they want to behave as.

The return value of this method should be an array of behavior objects or configurations indexed by behavior names. A behavior configuration can be either a string specifying the behavior class or an array of the following structure:

'behaviorName' => [
    'class' => 'BehaviorClass',
    'property1' => 'value1',
    'property2' => 'value2',
]

Note that a behavior class must extend from \craft\models\Behavior. Behaviors can be attached using a name or anonymously. When a name is used as the array key, using this name, the behavior can later be retrieved using getBehavior() (opens new window) or be detached using detachBehavior() (opens new window). Anonymous behaviors can not be retrieved or detached.

Behaviors declared in this method will be attached to the component automatically (on demand).

View source (opens new window)

Returns

array (opens new window) – The behavior configurations.

# getBaseUrl()

Since
3.1.0

Returns the site’s base URL.

View source (opens new window)

Returns

string (opens new window), null (opens new window)

# getConfig()

Since
3.5.0

Returns the field layout config for this site.

View source (opens new window)

Returns

array (opens new window)

# getGroup()

Returns the site's group

View source (opens new window)

Returns

craft\models\SiteGroup

Throws

# getLocale()

Since
3.5.8

Returns the locale for this site’s language.

View source (opens new window)

Returns

craft\i18n\Locale

# init()

Since
3.5.0

Initializes the object.

This method is invoked at the end of the constructor after the object is initialized with the given configuration.

View source (opens new window)

# overrideBaseUrl()

Overrides the base URL while keeping track of the original one.

View source (opens new window)

Arguments

# overrideName()

Overrides the name while keeping track of the original one.

View source (opens new window)

Arguments

# Protected Methods

Method Description
defineRules() Returns the validation rules for attributes.
extractFieldsFor() (opens new window) Extract nested fields from a fields collection for a given root field Nested fields are separated with dots (.). e.g: "item.id" The previous example would extract "id".
extractRootFields() (opens new window) Extracts the root field names from nested fields.
resolveFields() (opens new window) Determines which fields can be returned by toArray() (opens new window).

# defineRules()

Since
3.4.0

Returns the validation rules for attributes.

See rules() for details about what should be returned.

Models should override this method instead of rules() so EVENT_DEFINE_RULES handlers can modify the class-defined rules.

View source (opens new window)

Returns

array (opens new window)

# Constants

Constant Description
SCENARIO_DEFAULT The name of the default scenario.