Volumes

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

Class AssetVolumesService

See also http://craftcms.com

View source (opens new window)

# Public Properties

# allVolumeIds

Type
integer (opens new window)[]
Default value
null
Access
Read-only

View source (opens new window)

# allVolumeTypes

Type
string (opens new window)[]
Default value
null
Access
Read-only

View source (opens new window)

# allVolumes

Type
craft\base\VolumeInterface[]
Default value
null
Access
Read-only

View source (opens new window)

# publicVolumeIds

Type
integer (opens new window)[]
Default value
null
Access
Read-only

View source (opens new window)

# publicVolumes

Type
craft\base\VolumeInterface[]
Default value
null
Access
Read-only

View source (opens new window)

# totalViewableVolumes

Type
integer (opens new window)
Default value
null
Access
Read-only

View source (opens new window)

# totalVolumes

Type
integer (opens new window)
Default value
null
Access
Read-only

View source (opens new window)

# viewableVolumeIds

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

View source (opens new window)

# viewableVolumes

Type
craft\base\VolumeInterface[]
Default value
null
Access
Read-only

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 an object property.
__isset() (opens new window) Checks if a property is set, i.e. defined and not null.
__serialize() Serializer
__set() (opens new window) Sets value of an object property.
__unset() (opens new window) Sets an object property to null.
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.
createVolume() Creates an asset volume with a given config.
createVolumeConfig() Returns the field layout config for the given volume.
deleteVolume() Deletes an asset volume.
deleteVolumeById() Deletes an asset volume 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.
ensureTopFolder() Ensures a top level folder exists that matches the model.
getAllVolumeIds() Returns all of the volume IDs.
getAllVolumeTypes() Returns all registered volume types.
getAllVolumes() Returns all volumes.
getBehavior() (opens new window) Returns the named behavior object.
getBehaviors() (opens new window) Returns all behaviors attached to this component.
getPublicVolumeIds() Returns all volume IDs that have public URLs.
getPublicVolumes() Returns all volumes that have public URLs.
getTotalViewableVolumes() Returns the total number of volumes that are viewable by the current user.
getTotalVolumes() Returns the total number of volumes.
getViewableVolumeIds() Returns all volume IDs that are viewable by the current user.
getViewableVolumes() Returns all volumes that are viewable by the current user.
getVolumeByHandle() Returns a volume by its handle.
getVolumeById() Returns a volume by its ID.
getVolumeByUid() Returns a volume by its UID.
getVolumeOverrides() Returns any custom volume config values.
handleChangedVolume() Handle volume change
handleDeletedVolume() Handle volume getting deleted
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() (opens new window) Initializes the object.
off() (opens new window) Detaches an existing event handler from this component.
on() (opens new window) Attaches an event handler to an event.
pruneDeletedField() Prune a deleted field from volume layouts.
reorderVolumes() Reorders asset volumes.
saveVolume() Creates or updates a volume.
trigger() (opens new window) Triggers an event.

# __serialize()

Since
3.5.14

Serializer

View source (opens new window)

# createVolume()

Creates an asset volume with a given config.

View source (opens new window)

Arguments

  • $config (mixed) – The asset volume’s class name, or its config, with a type value and optionally a settings value

Returns

craft\base\VolumeInterface – The asset volume

# createVolumeConfig()

Since
3.5.0

Returns the field layout config for the given volume.

View source (opens new window)

Arguments

Returns

array (opens new window)

# deleteVolume()

Deletes an asset volume.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# deleteVolumeById()

Deletes an asset volume by its ID.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# ensureTopFolder()

Ensures a top level folder exists that matches the model.

View source (opens new window)

Arguments

Returns

integer (opens new window)

# getAllVolumeIds()

Returns all of the volume IDs.

View source (opens new window)

Returns

integer (opens new window)[]

# getAllVolumeTypes()

Returns all registered volume types.

View source (opens new window)

Returns

string (opens new window)[]

# getAllVolumes()

Returns all volumes.

View source (opens new window)

Returns

craft\base\VolumeInterface[]

# getPublicVolumeIds()

Returns all volume IDs that have public URLs.

View source (opens new window)

Returns

integer (opens new window)[]

# getPublicVolumes()

Returns all volumes that have public URLs.

View source (opens new window)

Returns

craft\base\VolumeInterface[]

# getTotalViewableVolumes()

Returns the total number of volumes that are viewable by the current user.

View source (opens new window)

Returns

integer (opens new window)

# getTotalVolumes()

Returns the total number of volumes.

View source (opens new window)

Returns

integer (opens new window)

# getViewableVolumeIds()

Returns all volume IDs that are viewable by the current user.

View source (opens new window)

Returns

array (opens new window)

# getViewableVolumes()

Returns all volumes that are viewable by the current user.

View source (opens new window)

Returns

craft\base\VolumeInterface[]

# getVolumeByHandle()

Returns a volume by its handle.

View source (opens new window)

Arguments

Returns

craft\base\VolumeInterface, null (opens new window)

# getVolumeById()

Returns a volume by its ID.

View source (opens new window)

Arguments

Returns

craft\base\VolumeInterface, null (opens new window)

# getVolumeByUid()

Returns a volume by its UID.

View source (opens new window)

Arguments

Returns

craft\base\VolumeInterface, null (opens new window)

# getVolumeOverrides()

DEPRECATED

Deprecated in 3.5.8. Environment variables (opens new window) or dependency injection (opens new window) should be used instead.

Returns any custom volume config values.

View source (opens new window)

Arguments

Returns

array (opens new window), null (opens new window)

# handleChangedVolume()

Handle volume change

View source (opens new window)

Arguments

# handleDeletedVolume()

Handle volume getting deleted

View source (opens new window)

Arguments

# pruneDeletedField()

Prune a deleted field from volume layouts.

View source (opens new window)

Arguments

# reorderVolumes()

Reorders asset volumes.

View source (opens new window)

Arguments

Returns

boolean (opens new window)

Throws

# saveVolume()

Creates or updates a volume.

View source (opens new window)

Arguments

Returns

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

Throws

Example

use craft\volumes\Local;

$volume = new Local([
    'name' => 'Content Images',
    'handle' => 'contentImages',
    'hasUrls' => true,
    'url' => '$CONTENT_IMAGES_URL',
    'path' => '$CONTENT_IMAGES_PATH',
]);

if (!Craft::$app->volumes->saveVolume(($volume))) {
    throw new Exception('Couldn’t save volume.');
}

# Constants

Constant Description
CONFIG_VOLUME_KEY

# Events

# EVENT_AFTER_DELETE_VOLUME

Type
craft\events\VolumeEvent

The event that is triggered after a Asset volume is deleted.

# EVENT_AFTER_SAVE_VOLUME

Type
craft\events\VolumeEvent

The event that is triggered after an Asset volume is saved.

# EVENT_BEFORE_APPLY_VOLUME_DELETE

Type
craft\events\VolumeEvent
Since
3.1.0

The event that is triggered before a volume delete is applied to the database.

# EVENT_BEFORE_DELETE_VOLUME

Type
craft\events\VolumeEvent

The event that is triggered before an Asset volume is deleted.

# EVENT_BEFORE_SAVE_VOLUME

Type
craft\events\VolumeEvent

The event that is triggered before an Asset volume is saved.

# EVENT_REGISTER_VOLUME_TYPES

Type
craft\events\RegisterComponentTypesEvent

The event that is triggered when registering volume types.

Volume types must implement craft\base\VolumeInterface. \craft\services\Volume provides a base implementation.

See Volume Types (opens new window) for documentation on creating volume types.

Example

use craft\events\RegisterComponentTypesEvent;
use craft\services\Volumes;
use yii\base\Event;

Event::on(Volumes::class,
    Volumes::EVENT_REGISTER_VOLUME_TYPES,
    function(RegisterComponentTypesEvent $event) {
        $event->types[] = MyVolumeType::class;
    }
);