Như đã đề cập trong các nhận xét, Luôn bắt đầu với chuỗi tiếng Anh và dịch nó ngay cả khi đó là trang web chỉ có một ngôn ngữ, để giảm bớt khó khăn, đây là điều tôi luôn làm để giữ các chuỗi và bản dịch có trong chính chủ đề đó:
mở của bạn THEMENAME.info.yml
tập tin và thêm vào như sau:
'dự án dịch giao diện': THEMENAME
'mẫu máy chủ dịch giao diện': 'themes/custom/THEMENAME/translations/%language.po'
sau đó tạo một bản dịch
thư mục trong chủ đề của bạn và ở đó bạn có thể thêm bản dịch của mình .po
tập tin, ví dụ. fr.po
cho tiếng pháp hoặc nb.po
cho Na Uy
Đây là cú pháp bạn cần có trong .po
tập tin:
msgstr "Xin chào thế giới"
msgstr "Xin chúc cả thế giới"
Vì vậy, bất cứ khi nào bạn viết Chào thế giới
chuỗi trong một t()
chức năng hoặc dưới dạng bộ lọc trong tệp twig như vậy: {{Xin chào thế giới|t }}
nó sẽ biết nhập các bản dịch từ đó
Nhưng làm cách nào để kích hoạt nhập bản dịch?
ngôn ngữ drush: kiểm tra
- không cần thiết, nhưng hãy kiểm tra xem có chuỗi mới nào được thêm vào không
ngôn ngữ drush: cập nhật
- Nhập bản dịch và bạn đã hoàn tất
Lưu ý rằng bạn cũng có thể thêm/chạy điều này vào quy trình triển khai của mình và giúp cuộc sống của bạn dễ dàng hơn, không cần dịch giao diện người dùng, chỉ cần thêm chuỗi của bạn vào .po
tệp bất cứ khi nào bạn viết chuỗi mã hóa cứng vào tệp của mình
Cập nhật: Thậm chí không nhận thấy rằng chúng ta đang nói về Drupal 7, điều này đề cập đến Drupal 8 dành cho những người đọc trong tương lai