{% import '_includes/forms' as forms %} {% import 'feed-me/_macros' as feedMeMacro %} {% if feed.elementGroup %} {% set sourceId = feed.elementGroup[feed.elementType] %} {% set source = craft.app.volumes.getVolumeById(sourceId) %} {% set folders = craft.feedme.getAssetFolderBySourceId(sourceId) %} {% endif %} {% set fields = [{ name: 'Title', handle: 'title', default: { type: 'text', }, }] %} {% if 'add' in feed.duplicateHandle %} {% set fields = fields|merge([{ type: 'assets-create', name: 'URL or Path', handle: 'urlOrPath', instructions: 'Enter either the path (including filename) or URL to the image for this asset to be created from.'|t('feed-me'), required: true, default: { type: 'text', } }]) %} {% endif %} {% set fields = fields|merge([{ name: 'Filename', handle: 'filename', instructions: 'The filename for this asset. If not provided, this will be derived from the path or URL.'|t('feed-me'), }, { name: 'Folder', handle: 'folderId', type: 'assets-folder', instructions: 'Select the folder name this asset will be uploaded into.'|t('feed-me'), default: { type: 'select', options: folders, }, }, { name: 'Asset ID', handle: 'id', instructions: 'Warning: This should only be used for an existing Craft Asset ID.'|t('feed-me'), default: { type: 'text', }, }]) %}
{{ 'Field'|t('feed-me') }} | {{ 'Feed Element'|t('feed-me') }} | {{ 'Default Value'|t('feed-me') }} | {% for field in fields %} {% set template = field.type ?? 'default' %} {% set variables = field|merge({ feed: feed, feedData: feedData, attribute: true }) %} {% include 'feed-me/_includes/fields/' ~ template ignore missing with variables only %} {% endfor %}
---|
{{ 'Field'|t('feed-me') }} | {{ 'Feed Element'|t('feed-me') }} | {{ 'Default Value'|t('feed-me') }} | {% for layoutField in tab.getElements()|filter(e => e is instance of('craft\\fieldlayoutelements\\CustomField')) %} {% set field = layoutField.getField() %} {% set fieldClass = craft.feedme.fields.getRegisteredField(className(field)) %} {% set template = fieldClass.getMappingTemplate() %} {% set variables = { name: field.name, handle: field.handle, feed: feed, feedData: feedData, field: field, fieldClass: fieldClass } %} {% include template ignore missing with variables only %} {% endfor %}
---|
{{ "Select the fields you want to use to check for existing elements. When selected, Feed Me will look for existing elements that match the fields provided below and either update, or skip depending on your choice of Import Strategy."|t('feed-me') }}
{% for tab in tabs %} {% for layoutField in tab.getElements()|filter(e => e is instance of('craft\\fieldlayoutelements\\CustomField')) %} {% set field = layoutField.getField() %} {% set fields = fields|merge([{ name: field.name, handle: field.handle, type: className(field) }]) %} {% endfor %} {% endfor %}