Điểm:0

Nhập bản dịch của mô-đun đóng góp hoạt động như thế nào?

lá cờ cn

Phiên bản Drupal: 9.3.13

Về cơ bản, tôi đang cố gắng hiểu cách sử dụng bản dịch của mô-đun đóng góp hoạt động. Tôi muốn có thể tải xuống và sử dụng các bản dịch từ cơ sở hạ tầng Drupal và dường như không thể làm cho nó hoạt động được.

Tôi có một trang web có hai ngôn ngữ, tiếng Anh và tiếng Đức (Mặc định). Tôi đã chạy "kiểm tra ngôn ngữ drush" và "cập nhật ngôn ngữ drush" và đã nhập tệp ngôn ngữ cốt lõi của Đức (hiện được lưu tại "web/sites/default/files/translations/drupal-9.3.13.de. po"). Nếu ngôn ngữ giao diện hiện tại là tiếng Đức, thì tôi thấy tất cả các loại tính năng cốt lõi được dịch sang tiếng Đức.

Các mô-đun hoạt động:

  • Dịch cấu hình
  • Dịch giao diện
  • Ngôn ngữ

Sau đó, tôi đã cài đặt một mô-đun, trước tiên tải nó qua trình soạn thảo và sau đó cài đặt nó qua trang "quản trị viên/mô-đun". Tôi đảm bảo rằng một chuỗi của mô-đun đã được sử dụng trong một trang, rằng chuỗi này được dịch trên localize.drupal.org cho phiên bản hiện tại của mô-đun và nó hiển thị trong "admin/config/regional/translate" dưới dạng chưa được dịch sau đó. Sau đó, tôi chạy lại cả hai lệnh dịch. Đầu ra cho biết rằng các bản dịch cho một dự án đã được kiểm tra và không có gì thay đổi. Không có bản dịch nào xuất hiện cho chuỗi thử nghiệm của tôi.

Tôi vừa thử nghiệm điều này trên bản cài đặt Drupal mới với mô-đun "drupal/cookies" (phiên bản 1.0.18, https://www.drupal.org/project/cookies).Trang của mô-đun trên localize.drupal.org hiển thị rất nhiều Chuỗi đã dịch: https://localize.drupal.org/translate/languages/de/translate?project=cookies&status=2&release=531668&search=&author&context=all&limit=10&sid=0

Những gì tôi nhận thức được:

  • Các mô-đun tùy chỉnh của riêng tôi sử dụng các tệp .po và chúng được tải tốt.
  • Dường như có một lỗi khiến các phiên bản mô-đun mới không được chọn (https://www.drupal.org/project/drupal/issues/2575945). Điều đó cũng tệ, nhưng ở đây không có bản dịch nào cho mô-đun được tải ngay từ đầu.

Tôi đã cố gắng gỡ lỗi này và đã kiểm tra "locale.project" và "locale.translation_status" từ bảng "key_value". Cả hai chỉ chứa lõi Drupal trên trang web thử nghiệm của tôi. Trong trang web sản xuất, tất cả các mô-đun tùy chỉnh cũng được chứa, nhưng không có mô-đun đóng góp nào.

Vì vậy, câu hỏi là: Tôi đang thiếu gì ở đây? Công việc này dự định làm như thế nào nhỉ?

lá cờ cn
Có hoặc không đơn giản nếu tải bản dịch cho các mô-đun đóng góp được cho là hoạt động theo cách này sẽ hữu ích. :-)
Điểm:1
lá cờ cn

Sau nhiều lần sửa lỗi, tôi đã giải quyết vấn đề này bằng cách so sánh hành vi của Drupal với bản cài đặt hoàn toàn mới. Tất nhiên "cập nhật ngôn ngữ drush" được cho là nhận bản dịch cho các mô-đun đóng góp!

Điều đã xảy ra ở đây là dòng này trong composer.json:

"cấu hình": {
     "loại bỏ thay đổi": đúng,
     "cài đặt ưa thích": "nguồn",
     "gói sắp xếp": đúng
},

Dòng vi phạm là "cài đặt ưa thích": "nguồn". Điều này đã được cam kết cách đây một thời gian, không ai biết tại sao và nó khiến nhà soạn nhạc kiểm tra mã từ git thay vì tải xuống tệp zip từ Drupal.

Điều này không tạo ra nhiều khác biệt, ngoại trừ việc Drupal thường thêm thông tin vào tệp info.yml của các mô-đun:

# Thông tin được thêm bởi tập lệnh đóng gói Drupal.org vào ngày 2021-04-02
phiên bản: '8.x-1.2'
dự án: 'foobar'
dấu thời gian: 1617351415

Với kiểm tra git, cái này bị thiếu! Và khi Drupal sau đó kiểm tra các bản dịch, nó sẽ duyệt qua tất cả các mô-đun và cố lấy tên dự án. Rõ ràng, trong Drupal, các dự án được dịch chứ không phải các mô-đun riêng lẻ. Một số mô-đun chứa nhiều mô-đun phụ, tất cả đều có chung tên dự án và do đó có cùng cơ sở dịch thuật. Vì tất cả các mô-đun đóng góp của tôi đến từ git chứ không phải từ tệp zip nâng cao, điều này có nghĩa là Drupal đã bỏ qua tất cả chúng trên "cập nhật ngôn ngữ drush"! Không có thông tin nào về điều này được xuất ra, chúng chỉ đơn giản là bị bỏ qua một cách lặng lẽ.

Giải pháp cho tôi là thay đổi dòng vi phạm thành:

"cài đặt ưa thích": {
    "drupal/*": "dist",
    "*": "nguồn"
},

Cũng lưu ý rằng bạn cần xóa các mô-đun khỏi web/mô-đun/contrib và cài đặt lại chúng qua trình soạn thảo. Chỉ thay đổi ở trên và chạy "cài đặt nhà soạn nhạc" là không đủ!

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