文章目录
- 插件 费用 特点 适用场景 WPML 付费 功能强大 商业网站 Polylang 免费 轻量简洁 中小站点 TranslatePress 免费+付费 可视化翻译 所有人
-
- 插件 → 安装Polylang 设置语言
- 设置 → 语言: - 添加语言: 中文(简体)、English - 设为默认: 中文 - URL修改: /zh/, /en/
- 编辑文章 → 语言面板 点击"+"创建翻译 编写翻译内容 保存
- 在导航菜单中添加: 外观 → 菜单: - 添加自定义链接 - 标签: 中文 - URL: /zh/ - 重复为English, URL: /en/
- // 显示语言切换器 <?php pll_the_languages(array('dropdown' => 0)); ?> // 获取当前语言 $lang = pll_current_language(); // 获取翻译链接 $en_link = pll_get_post(123, 'en'); // 语言选择器 echo pll_lang_switcher();
-
- 安装WPML Multilingual CMS 安装WPML String Translation 注册API Key
- // wp-config.php define('ICL_LANGUAGE_LOCALE', 'zh_CN'); define('ICL_DONT_LOAD_LANGUAGE_SELECTOR', false);
- // 获取分类翻译 $term_id = pll_get_term($term_id, 'en'); // 获取自定义字段翻译 $value = apply_filters('wpml_translate_string', $value, 'custom_field_key');
-
- .language-switcher { position: relative; display: inline-block; } .language-switcher ul { display: none; position: absolute; background: #fff; box-shadow: 0 2px 8px rgba(0,0,0,0.15); list-style: none; margin: 0; padding: 0; } .language-switcher:hover ul { display: block; }
- .flag-icon { display: inline-block; width: 20px; height: 14px; background: url(flags.png); } .flag-icon.zh { background-position: 0 0; } .flag-icon.en { background-position: -20px 0; }
-
- <head> <link rel="alternate" hreflang="zh" href="https://example.com/zh/"> <link rel="alternate" hreflang="en" href="https://example.com/en/"> <link rel="alternate" hreflang="x-default" href="https://example.com/"> </head>
- 设置 → Polylang → SEO: ☑ 为分类、标签添加hreflang ☑ 为文章添加hreflang ☑ 生成 sitemap.xml
- 在Yoast SEO中设置: - 网站语言 - 默认语言 - 各语言版本的SEO标题和描述
- 步骤 说明 1. 添加语言 配置支持的语言 2. 翻译界面 菜单、小工具 3. 翻译内容 文章、页面、分类 4. 翻译字符串 主题、插件文本 5. 测试 切换语言检查
- 问题 解决方案 404错误 刷新固定链接 翻译丢失 检查内存限制 切换慢 使用缓存插件
- [ ] 先设计后翻译 [ ] 使用专业翻译 [ ] 保持语言一致 [ ] 测试所有页面 [ ] SEO每个语言版本
本文介绍使用WPML和Polylang插件为WordPress网站配置多语言支持,实现国际化网站建设。
| 插件 | 费用 | 特点 | 适用场景 |
|---|---|---|---|
| WPML | 付费 | 功能强大 | 商业网站 |
| Polylang | 免费 | 轻量简洁 | 中小站点 |
| TranslatePress | 免费+付费 | 可视化翻译 | 所有人 |
- 插件 → 安装Polylang
- 设置语言
设置 → 语言:
- 添加语言: 中文(简体)、English
- 设为默认: 中文
- URL修改: /zh/, /en/
设置 → 语言:
- 添加语言: 中文(简体)、English
- 设为默认: 中文
- URL修改: /zh/, /en/
- 编辑文章 → 语言面板
- 点击"+"创建翻译
- 编写翻译内容
- 保存
在导航菜单中添加:
外观 → 菜单:
- 添加自定义链接
- 标签: 中文
- URL: /zh/
- 重复为English, URL: /en/
// 显示语言切换器
<?php pll_the_languages(array('dropdown' => 0)); ?>
// 获取当前语言
$lang = pll_current_language();
// 获取翻译链接
$en_link = pll_get_post(123, 'en');
// 语言选择器
echo pll_lang_switcher();
// 显示语言切换器
<?php pll_the_languages(array('dropdown' => 0)); ?>
// 获取当前语言
$lang = pll_current_language();
// 获取翻译链接
$en_link = pll_get_post(123, 'en');
// 语言选择器
echo pll_lang_switcher();
- 安装WPML Multilingual CMS
- 安装WPML String Translation
- 注册API Key
// wp-config.php
define('ICL_LANGUAGE_LOCALE', 'zh_CN');
define('ICL_DONT_LOAD_LANGUAGE_SELECTOR', false);
// wp-config.php
define('ICL_LANGUAGE_LOCALE', 'zh_CN');
define('ICL_DONT_LOAD_LANGUAGE_SELECTOR', false);
// 获取分类翻译
$term_id = pll_get_term($term_id, 'en');
// 获取自定义字段翻译
$value = apply_filters('wpml_translate_string', $value, 'custom_field_key');
// 获取分类翻译
$term_id = pll_get_term($term_id, 'en');
// 获取自定义字段翻译
$value = apply_filters('wpml_translate_string', $value, 'custom_field_key');
.language-switcher {
position: relative;
display: inline-block;
}
.language-switcher ul {
display: none;
position: absolute;
background: #fff;
box-shadow: 0 2px 8px rgba(0,0,0,0.15);
list-style: none;
margin: 0;
padding: 0;
}
.language-switcher:hover ul {
display: block;
}
.language-switcher {
position: relative;
display: inline-block;
}
.language-switcher ul {
display: none;
position: absolute;
background: #fff;
box-shadow: 0 2px 8px rgba(0,0,0,0.15);
list-style: none;
margin: 0;
padding: 0;
}
.language-switcher:hover ul {
display: block;
}
.flag-icon {
display: inline-block;
width: 20px;
height: 14px;
background: url(flags.png);
}
.flag-icon.zh { background-position: 0 0; }
.flag-icon.en { background-position: -20px 0; }
.flag-icon {
display: inline-block;
width: 20px;
height: 14px;
background: url(flags.png);
}
.flag-icon.zh { background-position: 0 0; }
.flag-icon.en { background-position: -20px 0; }
<head>
<link rel="alternate" hreflang="zh" href="https://example.com/zh/">
<link rel="alternate" hreflang="en" href="https://example.com/en/">
<link rel="alternate" hreflang="x-default" href="https://example.com/">
</head>
<head>
<link rel="alternate" hreflang="zh" href="https://example.com/zh/">
<link rel="alternate" hreflang="en" href="https://example.com/en/">
<link rel="alternate" hreflang="x-default" href="https://example.com/">
</head>
设置 → Polylang → SEO:
☑ 为分类、标签添加hreflang
☑ 为文章添加hreflang
☑ 生成 sitemap.xml
设置 → Polylang → SEO:
☑ 为分类、标签添加hreflang
☑ 为文章添加hreflang
☑ 生成 sitemap.xml
在Yoast SEO中设置:
- 网站语言
- 默认语言
- 各语言版本的SEO标题和描述
| 步骤 | 说明 |
|---|---|
| 1. 添加语言 | 配置支持的语言 |
| 2. 翻译界面 | 菜单、小工具 |
| 3. 翻译内容 | 文章、页面、分类 |
| 4. 翻译字符串 | 主题、插件文本 |
| 5. 测试 | 切换语言检查 |
| 问题 | 解决方案 |
|---|---|
| 404错误 | 刷新固定链接 |
| 翻译丢失 | 检查内存限制 |
| 切换慢 | 使用缓存插件 |
- [ ] 先设计后翻译
- [ ] 使用专业翻译
- [ ] 保持语言一致
- [ ] 测试所有页面
- [ ] SEO每个语言版本
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)