Điểm:0

Cách thay đổi nhãn của trường tiêu đề hình ảnh trong một đoạn văn

lá cờ um

Trong một đoạn văn, tôi có một trường hình ảnh mà trường tiêu đề được bật và bắt buộc. Tôi cần thay đổi nhãn của trường tiêu đề này để thay thế "Tiêu đề" bằng "Chú thích"

Tôi đã cố gắng sử dụng hook_field_widget_single_element_WIDGET_TYPE_form_alter() để đạt được điều này nhưng tất cả những gì tôi thấy liên quan đến tiêu đề này là

$element['subform']['image']['widget'][0]['#title_field'] = (bool) 1
$element['subform']['image']['widget'][0]['#title_field_required'] = (bool) 1

Tôi tự hỏi làm thế nào tôi có thể thay đổi nhãn đó trong ngữ cảnh đoạn văn này. Bất kỳ trợ giúp sẽ được đánh giá cao.

Điểm:1
lá cờ um

Cuối cùng tôi đã đạt được những gì tôi muốn làm như sau

mymodule/mymodule.module

sử dụng Drupal\Core\Form\FormStateInterface;
sử dụng Drupal\mymodule\Alter\FieldWidget\BlockImagesParagraph;

/**
 * Triển khai hook_field_widget_single_element_WIDGET_TYPE_form_alter().
 */
function mymodule_field_widget_single_element_entity_reference_paragraphs_form_alter(&$element, FormStateInterface $form_state, $context) {
  if ($element['#paragraph_type'] == 'block_images') {
    \Drupal::service('class_resolver')
      ->getInstanceFromDefinition(BlockImagesParagraph::class)
      ->alterFieldWidget($element, $form_state, $context);
  }
}

mymodule/src/Alter/FieldWidget

không gian tên Drupal\mymodule\Alter\FieldWidget;

sử dụng Drupal\Core\Form\FormStateInterface;

/**
 * Thay đổi đoạn block_images.
 */
lớp cuối cùng BlockImagesParagraph {

  /**
   * Thay đổi tiện ích trường.
   *
   * @param mảng phần tử $
   * Phần tử biểu mẫu tiện ích trường.
   * @param \Drupal\Core\Form\FormStateInterface $form_state
   * Trạng thái hình thức.
   * Mảng @param $context
   * Một mảng kết hợp đại diện cho ngữ cảnh.
   */
  hàm công khai alterFieldWidget(mảng &$element, FormStateInterface $form_state, mảng $context) {
    $widget = &$element['subform']['image']['widget'];

    foreach ($widget as $key => &$value) {
      nếu (!is_int($key)) {
        tiếp tục;
      }
      $value['# process'][] = [
        'Drupal\mymodule\Alter\FieldWidget\BlockImagesParagraph',
        'ProcessImageWidget',
      ];
    }
  }

  /**
   * Xử lý tiện ích hình ảnh.
   *
   * @param mảng phần tử $
   * Phần tử biểu mẫu tiện ích trường.
   * @param \Drupal\Core\Form\FormStateInterface $form_state
   * Trạng thái hình thức.
   * @param mảng $form
   * Một mảng kết hợp đại diện cho biểu mẫu.
   */
  hàm tĩnh công khai processImageWidget(mảng $element, FormStateInterface $form_state, mảng $form) {
    if (isset($element['title'])) {
      $element['title']['#title'] = t('Chú thích');
    }

    trả lại phần tử $;
  }

}

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.