Skip to main content

Customer Group

A search input field for selecting a custom group from the database. Data can be searched by name.

Screenshots

Field render in form:

field preview

Field render in field group:

field preview

Configuration

  • Settings:
    • Name: The label for the field.
    • Slug: The unique technical identifier.
  • Validation:
    • Require: Determines if the field must be filled out.
  • Design:
    • Instructions: Text displayed alongside the field providing details about the data needed.
    • Width: The width of the field in the form.
    • Classes: Custom CSS classes for styling the field.
    • ID: Custom ID attribute for the field.
    • Text before: Additional text displayed before the field.
    • Text after: Additional text displayed after the field.

Return format

  • Type: Object (RelationFieldValue) or null
  • Object methods:
// Return related entity object
$customerGroup = $relationFieldValue->getEntity();

// Return related entity field groups
$fieldGroups = $relationFieldValue->getFieldGroups();
info

The field value returns an object instead of an array to perform lazy loading of sub-values (object, field groups, and presenter for certain entities) and ensure process performance.

Usage

/some-template.tpl
{* Object or Entity and Id *}
{assign var="data" value=$modules.customfieldgroups.data->get($product)}
{assign var="data" value=$modules.customfieldgroups.data->get('product', $product.id)}

{if $data.field_group_slug.field_slug}
<span>{$data.field_group_slug.field_slug->getEntity()->id}</span>

{* Entity related field groups *}
{assign var="entity_field_groups" value=$data.field_group_slug.field_slug->getFieldGroups()}
<span>{entity_field_groups.field_group_slug.field_slug}</span>
{/if}
/SomeClass.php
function someMethod()
{
$dataRetriever = DataRetrieverFacade::getInstance();

$data = $dataRetriever->get($object); // Object
$data = $dataRetriever->get('product', $idProduct); // Entity and id

$customerGroupData = $data['field_group_slug']['field_slug'];
$customerGroupObject = $customerGroupData ? $customerGroupData->getEntity() : null;
$customerGroupFieldGroups = $customerGroupData ? $customerGroupData->getFieldGroups() : [];
}