Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
118 views
in Technique[技术] by (71.8m points)

javascript - How to add translatable string in function parameter?

I have a javascript function in a wordpress script, I need it to be compatible with WPML chain translation

ubp_show_error("<p>Inutile de l'ajouter plusieurs fois</p>");

How can I make this chain to be something like this :

ubp_show_error(_e('<p>Inutile de l'ajouter plusieurs fois</p>','mytheme'));

I've tryed :

$error = _('<p>Inutile de l'ajouter plusieurs fois</p>','mytheme');
ubp_show_error($error); 

but in javascript, this doesn't work

question from:https://stackoverflow.com/questions/65886497/how-to-add-translatable-string-in-function-parameter

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

You need to localize your script.

PHP

function custom_load_scripts() {
    wp_enqueue_script('your-script', '/your-script.js');
    wp_localize_script('your-script', 'your_js_obj_name', array(
            'error' => __("<p>Inutile de l'ajouter plusieurs fois</p>",'mytheme')
        )
    );
}
add_action('wp_enqueue_scripts', 'custom_load_scripts');

Now you have access to that data in your javascript file like:

JS

your_js_obj_name.error // --> '<p>Inutile de l'ajouter plusieurs fois</p>'

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...