Dịch (thay text) nhanh trong WordPress với file functions.php

Có đôi khi anh em muốn dịch nhanh hoặc thay thế text nào đó trong WordPress mà không muốn cài cả bộ Loco Translate hoặc đụng tới file PO/MO, mình cũng như thế và đây là cách mình xử lý:

Bạn nhập đoạn code này vào file functions.php và thay thế Text Cũ và Text Mới theo nhu cầu là được.

/**
 * Hàm multi_change_translate_text thay đổi nhiều chuỗi văn bản đã được dịch.
 *
 * @param string $translated Chuỗi văn bản đã được dịch.
 * @return string Chuỗi văn bản sau khi đã được thay đổi.
 */
function multi_change_translate_text($translated) {
    // Mảng chứa các chuỗi văn bản cũ và mới tương ứng
    $text = array(
        'Text Cũ 1' => 'Text Mới 1',
        'Text Cũ 2' => 'Text Mới 2',
        'Text Cũ 3' => 'Text Mới 3',
    );

    // Thay thế các chuỗi văn bản cũ trong chuỗi đã dịch bằng chuỗi văn bản mới tương ứng
    $translated = str_ireplace(array_keys($text), $text, $translated);

    // Trả về chuỗi văn bản sau khi đã được thay đổi
    return $translated;
}

// Thêm hàm multi_change_translate_text vào filter 'gettext' với mức độ ưu tiên là 20
add_filter('gettext', 'multi_change_translate_text', 20);

Done, đơn giản chỉ thế thôi. Hy vọng tut nhỏ này sẽ giúp được bạn.

Discuss