主页/WordPress笔记/博客文章/综合文章/如何在WordPress中添加Google翻译

如何在WordPress中添加Google翻译

Bug编译狮

Bug编译狮

要在WordPress中添加Google翻译功能,你可以按照以下步骤操作:

步骤1:安装Google Translate插件

首先,在WordPress后台的“插件”部分找到并点击“添加新插件”,然后搜索并安装名为“Google Translate”的插件。

步骤2:激活插件

安装完成后,找到插件,点击“激活”。

步骤3:配置插件

打开插件设置页面(通常是通过点击插件名或访问“插件设置”菜单项),在这里你可以设置一些基本的选项,比如语言偏好、是否显示翻译按钮等。

步骤4:创建翻译链接

为了方便用户使用,可以为每个页面或者特定文章创建一个翻译链接。例如,对于一个英文页面,你可以将其翻译成中文。

示例代码

<?php
// 获取当前页面的语言和URL参数
$current_language = get_query_var('language') ?: 'en';
$current_url = wp_get_original_link();

// 根据当前语言获取对应的翻译文本
$translated_text = google_translate($current_language, $current_url);

if ($translated_text) {
    // 创建翻译链接
    echo '<a href="' . esc_attr($translated_text['url']) . '">' . esc_html($translated_text['title']) . '</a>';
} else {
    // 如果没有翻译结果,则显示原始文本
    echo $current_url;
}
?>

步骤5:实现翻译逻辑

google_translate()函数用于调用Google API来获取翻译结果。你需要确保已经启用了WordPress插件API权限。

示例实现

  1. 启用插件API

    打开functions.php文件,找到以下行:

    define( 'WP_USE_THEMES', false );

    确保这一行被注释掉或修改为:

    define( 'WP_USE_THEMES', true );
  2. 注册Google Translate API

    functions.php中添加以下代码以注册Google Translate API:

    function google_translate_api() {
       if ( !function_exists( 'wp_remote_post' ) ) {
           require_once ABSPATH . 'wp-admin/includes/class-wp-remote.php';
       }
    
       $options = array(
           'headers' => array(
               'Authorization' => 'Bearer YOUR_ACCESS_TOKEN',
           ),
       );
    
       return new WP_REST_API_Client( 'https://translation.googleapis.com/language/translate/v2', $options );
    }
    add_action( 'plugins_loaded', 'google_translate_api' );

    请替换YOUR_ACCESS_TOKEN为你从Google Cloud Platform获取的API密钥。

  3. 编写翻译函数

    编写一个PHP函数来处理翻译请求:

    function translate_content($text, $source_lang, $target_lang) {
       $client = google_translate_api();
       $response = $client->request([
           'method' => 'POST',
           'path' => '/languages/en-US/translate',
           'body' => [
               'q' => $text,
               'source' => $source_lang,
               'target' => $target_lang,
           ],
       ]);
    
       if ($response['status'] == 200 && isset($response['data']['translations'][0]['translatedText'])) {
           return $response['data']['translations'][0]['translatedText'];
       } else {
           return null;
       }
    }
  4. 应用翻译到页面

    将上述翻译代码插入到你的WordPress模板中,根据需要调整参数如$text, $source_lang, $target_lang等。

效果展示

当你访问带有翻译链接的文章时,用户将会看到该页面的翻译版本。如果源语言与目标语言不匹配或无翻译结果,将显示原文。

这个过程展示了如何在WordPress中集成Google Translate功能,同时结合了自定义翻译链接的设计思路。

黑板前的Bug语法讲师

黑板前的Bug语法讲师

在WordPress中添加Google翻译是一种非常有用的功能,它可以让用户轻松地将网站的内容翻译成其他语言。下面我将详细介绍如何在WordPress中实现这一功能。

步骤1: 安装Google Translate插件

首先,你需要安装一个名为wp-translations的插件。这个插件可以帮助你在WordPress上添加Google翻译服务。你可以通过以下步骤来安装和激活该插件:

  1. 打开WordPress管理后台。
  2. 登录到WordPress账户。
  3. 点击左侧菜单中的“插件”选项卡。
  4. 在搜索框中输入“wp-translations”,然后点击搜索结果中的“Install Now”按钮。
  5. 安装完成后,点击“激活”。

步骤2: 设置Google Translate API密钥

为了使用Google Translate,你首先需要创建一个新的API密钥。这个过程可以通过以下步骤完成:

  1. 访问Google Cloud Console(https://console.cloud.google.com/)并登&#24405;。
  2. 在左侧导航栏中选择“APIs & Services” > “Credentials”。
  3. 选择“Create credentials” > “Service account key”。
  4. 为新生成的服务帐户分配适当的权限(例如:读取和写入API访问控制列表),并保存此文件。

步骤3: 配置WordPress

接下来,你需要在WordPress中配置Google Translate。这通常涉及到以下几个步骤:

  1. 设置翻译语言

    • 在WordPress主题或模板中找到lang.php文件。大多数情况下,它位于wp-content/themes/[theme-name]/lang.php的位置。
    • lang.php文件中,查找$languages变量,将其值更改为你要翻译的语言。例如,如果你要翻译为西班牙语,你可以修改如下代码:
      $languages = array(
       'es' => 'Español',
      );
    • 将上述代码替换掉原始的$languages变量。
  2. 配置翻译字段

    • 在每个需要翻译的页面上,找到相应的位置以插入翻译字段。
    • 使用<?php echo get_option('translate_field_name'); ?>输出翻译字段的名称,以便在HTML中正确显示其内容。
  3. 测试翻译

    • 检查是否可以正确地将文本从一种语言转换为另一种语言。你可以在WordPress的编辑器中尝试不同的文本,看看它们被翻译成了什么样子。

示例代码

创建lang.php文件

// lang.php
$language_codes = array(
    'en' => 'English', // 英文
    'zh' => 'Chinese', // 中文
);

add_filter( 'gettext', 'my_translation_function', 10, 2 );
function my_translation_function($message, $domain) {
    global $language_codes;
    if (isset($language_codes[$domain])) {
        return sprintf(__($message), $language_codes[$domain]);
    }
    return $message;
}

添加翻译字段

// 编辑器中
echo '<input type="text" name="your_field_name" value="' . esc_attr(get_option('your_option')) . '" />';

测试翻译

<!-- 编辑器中 -->
<script>
    window.onload = function() {
        var field = document.querySelector('#your_field_name');
        var translatedField = document.createElement('div');
        translatedField.textContent = field.value;
        field.replaceWith(translatedField);
    };
</script>

以上就是在WordPress中添加Google翻译的基本步骤和示例代码。希望这对您有所帮助!