【发布时间】:2017-09-21 05:28:09
【问题描述】:
我有一个 wordpress 应用程序,当我需要回显需要翻译的内容时,我通常使用 PHP 函数 <?php _e('foo', 'bar') ?>。但是,现在我正在实现一个新功能,在我的 .js 文件中我有类似
var confirmation = confirm("Are you sure you want to quit");
if(confirmation){
...
}
上面代码的问题是我不能使用PHP函数_e()来翻译它,因为这是一个JS脚本。
有没有办法为 JS 中回显的文本启用翻译?
赏金之后
我正在悬赏,因为给出的问题是通用的,而我正在寻找可以解决我的问题的解决方案。
我正在从事以前由某人构建的 WP 项目。我应该只对存在于名为 functions.js 路径的 js 文件中的代码添加翻译:C:\Users\meskerem\foo.com\wp-content\themes\foo\assets\scripts\functions.js 假设函数内部存在以下代码。
var confirmation = confirm("Are you sure you want to quit");
if(confirmation){
...
}
现在的目标是使英语句子可翻译。上面的 js 代码是在点击该文件内的按钮时执行的。
C:\Users\meskerem\foo.com\wp-content\plugins\wp-jobhunt\templates\dashboards\candidate\templates_ajax_functions.php
触发翻译的html代码很简单:
<h1> <?= _e('good morning', 'jobhunt') ?> </h1>
<div> <i class='icon-trash' onclick="askConfirmation()"> x </i> </div>
所以,脚本很简单,但翻译是我遇到的一些问题。
【问题讨论】:
-
您的
confirm("text")应该在 if 语句 (if(confirm("text")) { /*code*/ }) 内。剩下的我无能为力,因为我几乎没有 wordpress 知识。 -
@Pyromonk 否,否则永远不会触发 if 语句。
-
@Pyromonk 啊,您的消息在“if 语句内部”中读取,意思是如果满足“if”条件。而你的意思是让它成为条款本身的一部分。例如
if(confirm){var confirmation = confirm("Are you sure you want to quit"); } -
对不起,我是想说
if(confirmation){} -
没有问题@Pyromonk 一个小提琴总是有利于清理事情。
标签: javascript php wordpress