Điểm:0

Ngăn thanh toán không hiển thị các ngăn tùy chỉnh

lá cờ cn

tôi đang sử dụng tài liệu ví dụ.Vì một số lý do, tôi không thể hiển thị khung tùy chỉnh trong phần thanh toán.

Tôi đang thiếu gì?

Tôi đang sử dụng phiên bản Drupal Commerce và Drupal 9.2 mới nhất.

không gian tên Drupal\my_checkout_pane\Plugin\Commerce\CheckoutPane;

sử dụng Drupal\commerce_checkout\Plugin\Commerce\CheckoutPane\CheckoutPaneBase;
sử dụng Drupal\Core\Form\FormStateInterface;

/**
 * Cung cấp một ngăn thông báo tùy chỉnh.
 *
 * @C CommerceCheckoutPane (
 * id = "my_checkout_pane_custom_message",
 * nhãn = @Translation("Thông báo tùy chỉnh"),
 * display_label = @Translation("Nhãn hiển thị khác"),
 * default_step = "xem lại",
 * wrapper_element = "bộ trường",
 * )
 */
lớp CustomMessagePane mở rộng CheckoutPaneBase {

  /**
   * {@inheritdoc}
   */
  chức năng công khai buildPaneForm(mảng $pane_form, FormStateInterface $form_state, mảng &$complete_form) {
    $form_display = EntityFormDisplay::collectRenderDisplay($this->order, 'checkout');
    $form_display->buildForm($this->order, $pane_form, $form_state);
    trả về $pane_form;
  }

  /**
   * {@inheritdoc}
   */
  hàm công khai validatePaneForm(mảng &$pane_form, FormStateInterface $form_state, mảng &$complete_form) {
    $form_display = EntityFormDisplay::collectRenderDisplay($this->order, 'checkout');
    $form_display->extractFormValues($this->order, $pane_form, $form_state);
    $form_display->validateFormValues($this->order, $pane_form, $form_state);
  }

  /**
   * {@inheritdoc}
   */
  hàm công khai submitPaneForm(mảng &$pane_form, FormStateInterface $form_state, mảng &$complete_form) {
    $form_display = EntityFormDisplay::collectRenderDisplay($this->order, 'checkout');
    $form_display->extractFormValues($this->order, $pane_form, $form_state);
  }

}
No Sssweat avatar
lá cờ ua
Đối với mục đích kiểm tra/gỡ lỗi, hãy thử sử dụng `$pane_form['message'] = ['#markup' => $this->t('Đây là thông báo tùy chỉnh của tôi.'), ]; return $pane_form;` như ví dụ cho thấy.
No Sssweat avatar
lá cờ ua
Ngoài ra, hãy kiểm tra kỹ đường dẫn tệp là `/modules/custom/my_checkout_pane/src/Plugin/Commerce/CheckoutPane/CustomMessagePane.php`, vì vậy bạn phải có một mô-đun tùy chỉnh có tên `my_checkout_pane` vì đó là những gì bạn đang sử dụng cho không gian tên
lá cờ cn
Cảm ơn cho những người đứng đầu lên. Sau khi xem xét thêm, tôi gặp sự cố về đường dẫn tệp. Nhận xét thứ hai của bạn giúp giải quyết vấn đề của tôi.

Đă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.