menu_item_fields-8.x-1.5/src/Hook/MenuBaseFieldsDisplayConfiguration.php

src/Hook/MenuBaseFieldsDisplayConfiguration.php
<?php

namespace Drupal\menu_item_fields\Hook;

use Drupal\Core\Hook\Attribute\Hook;
use Drupal\Core\Entity\EntityTypeInterface;

/**
 * Configure display settings for base fields.
 */
#[Hook('entity_base_field_info_alter')]
class MenuBaseFieldsDisplayConfiguration {

  /**
   * Implements hook_entity_base_field_info_alter().
   */
  public function __invoke(&$fields, EntityTypeInterface $entity_type) {
    if ($entity_type->id() !== 'menu_link_content') {
      return;
    }
    /** @var \Drupal\Core\Field\BaseFieldDefinition[] $fields */
    $fields['link']
      ->setDisplayOptions('view', [
        'label' => 'hidden',
        'type' => 'link',
        'weight' => 0,
      ])
      ->setDisplayConfigurable('form', TRUE)
      ->setDisplayConfigurable('view', TRUE);
    $fields['title']
      ->setDisplayOptions('view', [
        'label' => 'hidden',
        'type' => 'string',
        'weight' => 0,
        'region' => 'hidden',
      ])
      ->setDisplayConfigurable('form', TRUE)
      ->setDisplayConfigurable('view', TRUE);
    $fields['description']
      ->setDisplayOptions('view', [
        'label' => 'hidden',
        'type' => 'string',
        'weight' => 0,
        'region' => 'hidden',
      ])
      ->setDisplayConfigurable('form', TRUE)
      ->setDisplayConfigurable('view', TRUE);
    $fields['weight']
      ->setDisplayOptions('view', [
        'label' => 'hidden',
        'type' => 'number_integer',
        'weight' => 0,
        'region' => 'hidden',
      ])
      ->setDisplayConfigurable('form', TRUE)
      ->setDisplayConfigurable('view', TRUE);
    $fields['enabled']
      ->setDisplayOptions('view', [
        'label' => 'hidden',
        'type' => 'boolean',
        'weight' => 0,
        'region' => 'hidden',
      ])
      ->setDisplayConfigurable('form', TRUE)
      ->setDisplayConfigurable('view', TRUE);
    $fields['expanded']
      ->setDisplayOptions('view', [
        'label' => 'hidden',
        'type' => 'boolean',
        'weight' => 0,
        'region' => 'hidden',
      ])
      ->setDisplayConfigurable('form', TRUE)
      ->setDisplayConfigurable('view', TRUE);
  }

}

Главная | Обратная связь

drupal hosting | друпал хостинг | it patrol .inc