Woodmart主题年龄验证弹窗按钮文本修改方法咨询
Woodmart主题年龄验证弹窗按钮文本修改方案
以下是几种可行的解决方法,按优先级排序:
1. 通过主题过滤器钩子修改(推荐)
Woodmart主题提供了专门的过滤器用于修改年龄验证按钮文本,直接在子主题的functions.php文件中添加以下代码即可:
单语言站点代码
// 修改年龄验证确认按钮文本 add_filter( 'woodmart_age_verification_confirm_text', 'custom_age_confirm_btn_text' ); function custom_age_confirm_btn_text( $default_text ) { return 'I AM 21 OR OLDER'; } // 修改年龄验证拒绝按钮文本 add_filter( 'woodmart_age_verification_decline_text', 'custom_age_decline_btn_text' ); function custom_age_decline_btn_text( $default_text ) { return 'I AM UNDER 18'; }
双语站点适配代码(结合WPML)
如果需要针对不同语言显示对应文本,可使用以下代码判断当前语言:
// 多语言环境下修改确认按钮文本 add_filter( 'woodmart_age_verification_confirm_text', 'custom_multilang_age_confirm_text' ); function custom_multilang_age_confirm_text( $default_text ) { if ( function_exists( 'wpml_current_language' ) ) { $current_lang = apply_filters( 'wpml_current_language', null ); // 英文语言下显示目标文本 if ( $current_lang === 'en' ) { return 'I AM 21 OR OLDER'; } // 其他语言可自行添加判断,比如中文 elseif ( $current_lang === 'zh' ) { return '我已满21岁'; } } return $default_text; } // 多语言环境下修改拒绝按钮文本 add_filter( 'woodmart_age_verification_decline_text', 'custom_multilang_age_decline_text' ); function custom_multilang_age_decline_text( $default_text ) { if ( function_exists( 'wpml_current_language' ) ) { $current_lang = apply_filters( 'wpml_current_language', null ); if ( $current_lang === 'en' ) { return 'I AM UNDER 18'; } elseif ( $current_lang === 'zh' ) { return '我未满18岁'; } } return $default_text; }
注意:一定要修改子主题的
functions.php,避免主题更新后代码丢失。
2. 使用Loco Translate插件修改
如果不想写代码,可通过Loco Translate插件直接编辑主题语言文件:
- 安装并启用Loco Translate插件
- 进入插件后台,选择Woodmart主题,打开对应语言的翻译文件
- 搜索原按钮文本(比如默认的"Yes"或"Confirm"),替换为你需要的文本
- 保存并生成新的.mo翻译文件,清除缓存后生效
3. 检查主题隐藏设置项
再次检查Woodmart主题的年龄验证设置页面:
- 进入WordPress后台 > 主题设置 > 商城 > 年龄验证
- 仔细查看所有选项,部分版本的主题可能将按钮文本设置放在弹窗内容编辑区的下方或单独的折叠面板中
内容的提问来源于stack exchange,提问作者Dvir Hamami
相关产品推荐
相关产品推荐

