【问题标题】:PHP inside jQuery for Wordpress translation with WPMLjQuery 中的 PHP 用于使用 WPML 进行 Wordpress 翻译
【发布时间】:2016-05-11 14:11:33
【问题描述】:

是否可以在 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 );

感谢您的启发。

[已解决]

只需按照提到的顺序将代码按顺序放入您的子 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);

谢谢!

【问题讨论】:

  • 只要把本地化放到你的functions.php,把它和你的句柄放在你设置js代码的地方。因此,如果您使用句柄 'my_custom_script' 将名为 custom.js 的脚本排入队列,那么您将使用此句柄来本地化您的脚本 wp_localize_script('my_custom_script', ...)

标签: php jquery wordpress wpml


【解决方案1】:

如果你想用 jQuery 翻译一些东西,你需要本地化脚本。

 $translation_array = array( 'some_string' => __( 'Some string to translate' ), 'a_value' => '10' );
 wp_localize_script( 'some_handle', 'object_name', $translation_array );

【讨论】:

  • 能不能顶一下,我回答你了,谢谢
猜你喜欢
  • 1970-01-01
  • 2014-06-08
  • 1970-01-01
  • 2013-07-24
  • 1970-01-01
  • 2012-09-20
  • 1970-01-01
  • 1970-01-01
  • 2016-08-15
相关资源
最近更新 更多