[Lập trình theme WordPress] Tạo file ngôn ngữ cho theme

Bài này thuộc phần 18 của 20 phần trong serie Lập trình theme WordPress

Bây giờ chúng ta đã có một theme tương đối đơn giản nhưng khá hoàn chỉnh về mặt chức năng và code thông qua các bài hướng dẫn trước trong serie này. Tiếp tục ở bài này, mình sẽ hướng dẫn bạn làm một việc rất quan trọng để giúp theme của bạn linh hoạt hơn, đó là tạo các file ngôn ngữ cho theme để nó có thể hiển thị các cụm từ có trong theme dựa theo ngôn ngữ chính của website WordPress để người dùng có thể tùy chọn.Trong hướng dẫn này, mình sẽ nói qua về cách tạo file ngôn ngữ tiếng Việt, từ đó bạn có thể áp dụng tương tự để tạo ra các file ngôn ngữ khác nếu thích.Trước tiên, bạn hãy mở file functions.php ra và sẽ thấy đoạn sau mà chúng ta đã viết vào:

		$language_folder = THEME_URL . '/languages';
 		load_theme_textdomain( 'cddos', $language_folder );

Đoạn này có nghĩa là chúng ta đã thiết lập thư mục chứa các file ngôn ngữ .mo trong thư mục tên languages tại thư mục chứa theme hiện tại (hằng THEME_URL ta đã khai báo để chứa giá trị là đường dẫn thư mục theme). Vậy thì bây giờ, chúng ta chỉ cần tạo ra các file ngôn ngữ và đặt nó vào thư mục languages trong theme là được.

Trước tiên, bạn tạo cho mình thư mục tên languages trong thư mục theme mà chúng ta đang làm nhé.

laptrinhtheme-languages-folder

Tạo thư mục tên “languages” trong thư mục theme

Cài đặt phần mềm PoEdit

Chúng ta sẽ sử dụng phần mềm PoEdit để tạo các file ngôn ngữ, cũng như để chỉnh sửa các bản dịch của từng ngôn ngữ trong theme. Do vậy, bạn hãy cài đặt phần mềm PoEdit phiên bản mới nhất (miễn phí) để có thể làm các bước tiếp theo.

poedit

Giao diện phần mềm PoEdit

Tạo file ngôn ngữ cho theme

Bây giờ bạn hãy khởi động phần mềm PoEdit lên và chọn File -> New, chọn ngôn ngữ cần tạo, ví dụ Vietnamese (tiếng Việt).

laptrinhtheme-taongonngu

Sau đó vào File -> Save và lưu file lại với tên [mã-ngôn-ngữ].po, ví dụ vi.po vào thư mục languages trong thư mục theme.

Chúng ta đã có file ngôn ngữ hoàn toàn rỗng rồi, bây giờ hãy tiến hành cập nhật các chuỗi từ ngữ có trong theme vào file ngôn ngữ này, bằng cách vào Catalog -> Properties.

laptrinhtheme-capnhatngonngu

Trước tiên ở phần Translation properties là thông tin về file ngôn ngữ bạn đang làm việc, ở phần Source code charset Charset hãy chọn là UTF-8 (Recommended). Các thông tin khác thì có thể nhập tùy ý.

laptrinhtheme-taongonngu-02

Ở phần Source paths, bạn hãy thêm một path tên là .. (tức là các file mã nguồn sẽ nằm ngoài thư mục languages một bật).

laptrinhtheme-taongonngu-03

Cuối cùng là mục Source keywords, tức là khai báo các từ khóa để PoEdit nhận diện đó là một cụm từ cho phép dịch. Hãy thêm hai từ khóa là ___e vào.

laptrinhtheme-taongonngu-04

Sau đó ấn Ok, và ấn nút Update để nó cập nhật. Nếu nó có hỏi lưu lại thì cứ ấn Save.

laptrinhtheme-taongonngu-05

Và sau đây là sau khi cập nhật xong.

laptrinhtheme-taongonngu-06

Bạn hãy thử dịch một vài đoạn bằng cách điền chữ cần dịch vào phần Translation, sau đó ấn Save để lưu lại và vào WordPress -> Settings -> General, phần Site Languages chọn là vi rồi lưu lại để xem kết quả. Nếu trong Site Languages không có chỗ chọn ngôn ngữ vi thì chèn đoạn sau vào wp-config.php và vào Settings -> General lưu lại,

define( 'WPLANG', 'vi' );

Kết quả:

laptrinhtheme-taongonngu-07

Còn nếu bạn muốn tạo file ngôn ngữ cho các ngôn ngữ khác thì chỉ đơn giản là tạo thêm các file với tên mã ngôn ngữ tương ứng trong thư mục languages trong theme mà thôi. Để biết mã ngôn ngữ chính xác, hãy vào Settings -> General và chọn ngôn ngữ cần lấy mà ở Site Languages, sau đó View Source (Ctrl + U) rồi nhìn ở các đoạn đầu sẽ thấy mã ngôn ngữ.

Lời kết

Sau bài này, theme của bạn giờ đây đã trở nên “quốc tế” hơn với việc có thể dễ dàng chuyển đổi ngôn ngữ hiển thị từ các file ngôn ngữ đã có sẵn, đây cũng là một yêu cầu bắt buộc nếu muốn theme của bạn được WordPress đánh giá cao.

Leave your comment