Tổng quan
Khi bạn dùng CMS WordPress kết hợp cùng plugin Polyang để làm tính năng đa ngôn ngữ thì đôi lúc bạn viết thêm template mới nhưng không biết làm như thế nào để define string đó ra và dịch được từ đó trong phần Translations của Polylang. Đây là bài viết giúp bạn có thể thực hiện việc Translate custom string with Polylang rất dễ dàng.
Cách thực hiện Translate custom string with Polylang
Thay đổi hoặc thêm pll_e ở mục cần translate
Đầu tiên khi bạn phải thay thế các dòng echo string thành pll_e(‘string’) ở đây string là nội dung của bạn.
Với trường hợp bạn dùng plugin Advance Custom Fields Pro (ACF) thì bạn hãy xem thêm bài viết Polylang with ACF: https://polylang.pro/doc/working-with-acf-pro/
<?php pll_e('Dự án'); ?>
Thêm “String translation” vào functions.php
Tiếp đến bạn cần thêm “String translation” vào functions.php của bạn
add_action('init', function() { pll_register_string('flatsome', 'Dự án'); });
Với flatsome là domain name template cần thay đổi nó tùy vào giao diện bạn sử dụng để phù hợp.
***Cách tìm domain template: vào style.css của theme tìm mục Template: flatsome trong đoạn /* */
/* Theme Name: Flatsome Child Description: This is a child theme for Flatsome Theme Author: UX Themes Template: flatsome Version: 3.0 */
Lưu lại và filter string
Sau khi thêm code ở template và functions.php bạn cần lưu lại cả hai và tiến hành Filter trong mục Translations của Polylang.

Kết luận
Như vậy chúng ta đã giải quyết được vấn đề thêm string translation và có thể dịch tại admin dashboard.
Ngoài ra, có thể xem thêm tài liệu từ Polylang: https://polylang.pro/doc/function-reference/#pll_register_string để có thể xử lý dữ các vấn đề khác.
Chúc bạn xử lý thành công!