Điểm:2

Làm cách nào để thay đổi định dạng được sử dụng cho ?

lá cờ ng

Tôi đang sử dụng Drupal 9 để hiển thị nguồn cấp RSS bằng mô-đun Trình tổng hợp. Đối với các mặt hàng nhập khẩu, ngày nhập khẩu <pubDate>Wed, 24 Nov 2021 20:05:46 +0000</pubDate> được hiển thị như 2 tháng 3 tuần trước.

Các trường dấu thời gian đã được đặt để sử dụng Dài định dạng cho ngày, được đặt thành Mj, Y.

Không có cài đặt hiển thị nào cho mô-đun Trình tổng hợp. Tôi đang cố gắng thay đổi nó bằng móc tiền xử lý bằng trình định dạng ngày Drupal, nhưng cách đó cũng không hoạt động.

/**
 * Triển khai hook_pre process_aggregator_feed().
 */
function mymodule_pre process_aggregator_feed(&$variables) {
  $variables['pubDate'] = \Drupal::service('date.formatter')->format($date, 'long');
}

Mọi sự trợ giúp sẽ rất được trân trọng.

apaderno avatar
lá cờ us
Tên hàm tiền xử lý không bắt đầu bằng *templateName*; điều đó có nghĩa là cái móc đó không được gọi. Nó nếu được gọi, `\Drupal::service('date.formatter')->format($date, 'long')` mà không khởi tạo `$date` sẽ gây ra lỗi nghiêm trọng *PHP: Uncaught InvalidArgumentException: Dấu thời gian phải là lỗi số.*.
Scott B avatar
lá cờ ng
vâng tôi biết, tôi đã bỏ qua nó vì tôi không muốn tên mẫu thực của mình trong bài đăng này
Scott B avatar
lá cờ ng
ngoài tên mẫu, làm cách nào tôi có thể khởi tạo đúng biến $date cho việc này?
apaderno avatar
lá cờ us
Trong trường hợp đó, chỉ cần sử dụng `mymodule_pre process_aggregator_feed()` làm tên hook và người dùng sẽ biết rằng bạn không sử dụng tên mô-đun thực mà thay thế nó bằng `mymodule`. Bạn cũng nên hiển thị mã hoạt động hoặc mô tả chính xác rằng kết quả mong đợi khác với kết quả bạn nhận được. Việc nói *nó không hoạt động* đối với mã dường như không đầy đủ hoặc sử dụng các biến mà không khởi tạo chúng trước sẽ không làm rõ cho người dùng chính xác những gì bạn không hiểu để đạt được nhiệm vụ được mô tả.
Scott B avatar
lá cờ ng
Vâng. tôi đã thay đổi nó thành mymodule. Bạn có thể thực sự giúp tôi tìm ra cách khắc phục điều này hay không? Điều này hơi nằm ngoài giải đấu của tôi, đó là lý do tại sao tôi đăng ở vị trí đầu tiên

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