PHP inside jQuery 用于使用 WPML 进行 Wordpress 翻译
PHP inside jQuery for Wordpress translation with WPML
是否可以在 jQuery 中实现 wordpress 函数 ( _e
) 以使用 WPML 翻译字符串?
我想用 jQuery 将一些文本放在 div 中,并能够用 WPML 翻译这个字符串。
$('#MyDiv').html(<?php _e('Text to translate', 'woocommerce'); ?>);
不行,请问有什么办法吗??
提前致谢
[答案]
@Mukesh Ram,感谢您的回答,但我不太理解,顺便说一句,我有这段代码;
$(function() {
var left = 35,
$engraved = $('#MyDiv');
$engraved.closest('li').append('<span id="engraved_counter"></span>');
$('#engraved_counter').html("<?php __('Text to translate', 'woocommerce'); ?> <strong>" + left + "</strong>");
$engraved.keyup(function () {
left = 35 - $(this).val().length;
if(left < 0){
$('#engraved_counter').addClass("overlimit");
left = 0;
}if(left >= 0){
$('#engraved_counter').removeClass("overlimit");
}
$('#engraved_counter').html("<?php __('Text to translate', 'woocommerce'); ?> <strong>" + left + "</strong>");
});
});
你能告诉我如何实现你给我的代码吗?
$translation_array = array( 'some_string' => __( 'Some string to translate' ), 'a_value' => '10' );
wp_localize_script( 'some_handle', 'object_name', $translation_array );
谢谢你的闪电。
[已解决]
只需将代码放入您的 child function.php 中,如前所述:
function add_scripts_to_head() {
wp_enqueue_script( 'custom-js', 'www.mysite.com/js/custom.js' );
$translation_array = array(
'remain_text' => __( 'Maximum number of characters : ', 'woocommerce' )
);
wp_localize_script( 'custom-js', 'count_text', $translation_array );
}
add_action( 'wp_enqueue_scripts', 'add_scripts_to_head' );
然后将其调用到 js 文件,如下所示:
$('#MyDiv').html(count_text.remain_text);
谢谢!
如果你想用 jQuery 翻译一些东西,你需要本地化脚本。
$translation_array = array( 'some_string' => __( 'Some string to translate' ), 'a_value' => '10' );
wp_localize_script( 'some_handle', 'object_name', $translation_array );
是否可以在 jQuery 中实现 wordpress 函数 ( _e
) 以使用 WPML 翻译字符串?
我想用 jQuery 将一些文本放在 div 中,并能够用 WPML 翻译这个字符串。
$('#MyDiv').html(<?php _e('Text to translate', 'woocommerce'); ?>);
不行,请问有什么办法吗?? 提前致谢
[答案]
@Mukesh Ram,感谢您的回答,但我不太理解,顺便说一句,我有这段代码;
$(function() {
var left = 35,
$engraved = $('#MyDiv');
$engraved.closest('li').append('<span id="engraved_counter"></span>');
$('#engraved_counter').html("<?php __('Text to translate', 'woocommerce'); ?> <strong>" + left + "</strong>");
$engraved.keyup(function () {
left = 35 - $(this).val().length;
if(left < 0){
$('#engraved_counter').addClass("overlimit");
left = 0;
}if(left >= 0){
$('#engraved_counter').removeClass("overlimit");
}
$('#engraved_counter').html("<?php __('Text to translate', 'woocommerce'); ?> <strong>" + left + "</strong>");
});
});
你能告诉我如何实现你给我的代码吗?
$translation_array = array( 'some_string' => __( 'Some string to translate' ), 'a_value' => '10' );
wp_localize_script( 'some_handle', 'object_name', $translation_array );
谢谢你的闪电。
[已解决]
只需将代码放入您的 child function.php 中,如前所述:
function add_scripts_to_head() {
wp_enqueue_script( 'custom-js', 'www.mysite.com/js/custom.js' );
$translation_array = array(
'remain_text' => __( 'Maximum number of characters : ', 'woocommerce' )
);
wp_localize_script( 'custom-js', 'count_text', $translation_array );
}
add_action( 'wp_enqueue_scripts', 'add_scripts_to_head' );
然后将其调用到 js 文件,如下所示:
$('#MyDiv').html(count_text.remain_text);
谢谢!
如果你想用 jQuery 翻译一些东西,你需要本地化脚本。
$translation_array = array( 'some_string' => __( 'Some string to translate' ), 'a_value' => '10' );
wp_localize_script( 'some_handle', 'object_name', $translation_array );