netlogix / assetmetadata
Attach metadata objects to Neos Assets
Installs: 2 062
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 5
Forks: 0
Open Issues: 0
Type:neos-package
Requires
- neos/media: ^5.3 || ^7.3
- neos/neos: ^5.3 || ^7.3
- neos/utility-arrays: ^6.3 || ^7.3
README
This package allows you to attach multiple metadata objects to an asset.
Assets are automatically given the Netlogix\AssetMetadata\Domain\Model\AssetMetadataAwareInterface
using an Aspect, so you can simply call $asset->getMetadata('myMetadata')
.
Configuration / Usage
- Create a new Model with your desired properties that extends
Netlogix\AssetMetadata\Domain\Model\AssetMetadata
- Configure the metadata:
Netlogix: AssetMetadata: metadata: 'mymetadata': label: 'My Metadata' # Class that implements this Metadata. Must extend AssetMetadata className: 'My\Metadata\Domain\Model\MyMetadata' # Partial root path that contains the edit partial editPartialRootPath: 'resource://My.Metadata/Private/Partials' # Partial File to render in Asset Edit View # Path must be Package/Resources/Private/Partials/AssetMetadata/<editPartialName>.html editPartialName: 'MyMetadata' # Neos AssetSource identifiers to which this Metadata configuration should apply # If this is unset, the Metadata will be applied to all AssetSources assetSources: ['neos', 'my-special-asset-source'] # Optional position for ordering in the Edit View of an Asset position: 'start'
- Create the edit partial:
<label for="mymetadata-fieldA">Field A</label> <f:form.textfield property="{metadataPropertyPath}.fieldA" id="mymetadata-fieldA" placeholder="Foo" type="text"/>
- Set the metadata
$asset->setMetadata('mymetadata', new MyMetadata('mymetadata', $asset))
- Get the metadata
$asset->getMetadata('mymetadata')