寻求Fairy WordPress主题中‘read more’按钮文本的多语言翻译方案
解决Fairy主题“Read More”按钮多语言翻译问题
方法1:自定义代码实现语言动态切换
找到主题中输出“Read More”按钮的模板文件(通常是content.php、archive.php或主题专属模板文件),将原按钮文本输出逻辑替换为根据当前语言切换的代码。以Polylang多语言插件为例,代码示例如下:
// 获取主题设置的默认按钮文本 $default_read_more = get_theme_mod('fairy_read_more_text', 'Read More'); // 根据当前语言切换显示文本 if (function_exists('pll_current_language')) { switch (pll_current_language()) { case 'zh': $read_more_text = '阅读更多'; break; case 'en': $read_more_text = 'Read More'; break; default: $read_more_text = $default_read_more; break; } } else { $read_more_text = $default_read_more; } // 输出按钮 echo '<a href="' . get_permalink() . '" class="read-more">' . $read_more_text . '</a>';
注意:务必使用子主题修改文件,避免主题更新时代码丢失;若使用WPML插件,可替换为
icl_get_current_language()函数判断当前语言。
方法2:修改主题语言文件(针对支持翻译函数的场景)
检查主题输出按钮文本时是否使用了WordPress标准翻译函数(如__()或_e()),若是则可通过编辑语言文件添加翻译:
- 找到主题目录下的
languages文件夹,复制默认语言文件(如en_US.po),重命名为目标语言文件(如zh_CN.po); - 用Poedit软件打开该文件,搜索“Read More”并添加对应语言的翻译;
- 保存后自动生成
.mo文件,将两个文件上传回languages文件夹即可。
方法3:自定义字段适配单篇文章(非开发者友好)
若不想修改主题代码,可给每篇文章添加自定义字段实现差异化文本:
- 在文章编辑页开启“自定义字段”面板,添加
read_more_zh(中文文本)、read_more_en(英文文本)这类字段; - 修改主题模板文件,替换按钮文本输出逻辑为优先读取对应语言的自定义字段,无则使用主题默认设置:
$default_text = get_theme_mod('fairy_read_more_text', 'Read More'); $current_lang = function_exists('pll_current_language') ? pll_current_language() : 'en'; $custom_text = get_post_meta(get_the_ID(), 'read_more_' . $current_lang, true); $final_text = $custom_text ?: $default_text; echo '<a href="' . get_permalink() . '" class="read-more">' . $final_text . '</a>';
内容的提问来源于stack exchange,提问作者Hannahh
相关产品推荐
相关产品推荐

