Định dạng ngày trong Quy tắc


6

Tôi đang sử dụng quy tắc để gửi email khi một nút được tạo. Trong phần thân Hành độngThông báo , tôi chèn [nút: field_calWiki_date]. Mã thông báo được thay thế bằng (ví dụ) "2012-12-14T08: 00: 00" trong thông báo email, nhưng tôi muốn nó được thay thế bằng "Thứ Sáu, ngày 14 tháng 12, 8:00 sáng" (cùng ngày, nhưng một định dạng khác nhau).

Tôi đã cố làm theo format_date () , nhưng nó không hoạt động.

Làm thế nào tôi có thể có được định dạng tôi muốn?

Câu trả lời:


9

Bạn có thể sử dụng [node:field_calendar_date:custom:l, Fd, gia], nếu [node:field_calendar_date]là mã thông báo ngày. Trong trường hợp đó, [node:field_calendar_date:custom]trả về ngày ở định dạng tùy chỉnh được liệt kê sau dấu hai chấm sau. Chuỗi định dạng là chuỗi được chấp nhận bởi date () .

Nếu bạn muốn sử dụng định dạng được đặt thành định dạng ngắn / trung bình / dài trong cài đặt ngày Drupal, thì bạn có thể sử dụng các mã thông báo sau:

  • [node:field_calendar_date:short]
  • [node:field_calendar_date:medium]
  • [node:field_calendar_date:long]

1
tôi đã thử và thông báo email hiển thị [nút: field_calWiki_date: short] hoặc bất kỳ mã thông báo nào được sử dụng
lakers2012

1
Đã làm việc này cho bất cứ ai? Đối với tôi nó không hoạt động với bất cứ điều gì đằng sau trường ngày theo bất kỳ cách nào. Bạn có phải cài đặt một cái gì đó khác hoặc sửa đổi bất kỳ mã thông báo nào theo cách nào không?
reptilex

1
Vấn đề tương tự đối với tôi. Theo như tôi có thể thấy, mã thông báo thay thế "nút đã thay đổi" đề xuất rõ ràng [nút: đã thay đổi: tùy chỉnh:?], Không phải là trường hợp với các trường ngày (ở mức tốt nhất cho phép "Mã thông báo thực thể" từ Entity API cung cấp nhiều tùy chọn hơn, như hiển thị ngày bắt đầu và ngày kết thúc khi khả dụng, nhưng vẫn không có màn hình tùy chỉnh).
WhiteWinterWolf

8

OK, hiểu rồi, nó không hoạt động ngay cả khi tôi không thực sự hiểu logic dưới mui xe ... Thật ra, hai vấn đề chặn tôi gặp phải là:

  1. Ngày có thể là một phạm vi, do đó [nút: field_date] không thể được coi là mã thông báo ngày. Cài đặt API thực thể và kích hoạt mô-đun "Thực thể mã thông báo" để có quyền truy cập vào giá trị ngày thực tế,
  2. Xin lưu ý rằng vì một lý do khó hiểu Mã thông báo thực thể thay thế dấu gạch dưới ([nút: field_date ...) của tên mã thông báo ban đầu bằng dấu gạch ngang ([ngày trường ...), sau đó bạn sẽ có quyền truy cập vào một ngày được định dạng chính xác (trong trường hợp của tôi "[nút: trường-ngày: giá trị: tùy chỉnh: Ym]", trong câu hỏi ban đầu tôi đoán do đó "[nút: trường-lịch-ngày: giá trị: tùy chỉnh: l, F d, gia]")

Chà điều đó thật khó chịu - sao chép tất cả các mã thông báo để cung cấp chức năng thay thế. Cảm ơn vì mẹo của (điểm 2)
Nick

Điểm 2 đã làm điều đó cho tôi quá. Tôi sẽ không bao giờ nghĩ sẽ thử gạch ngang!
davidneedham
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.