问题描述
我向我的 woocommerce 网站添加了一个自定义片段,现在我无法将字符串翻译成 polylang。
我需要使用代码段在付款方式上方添加文本,而且效果很好,它是通过代码段插件 (https://wordpress.org/plugins/code-snippets/) 添加的
add_action( 'woocommerce_review_order_before_payment','wc_privacy_message_below_checkout_button' );
function wc_privacy_message_below_checkout_button() {
echo __('<h3>Metodo di pagamento</h3>','text-domain');
}
现在我插入了一个额外的片段来将字符串添加到 polylang,但是一旦更新了翻译,什么也没有发生
add_action('init',function() {
pll_register_string('Metodo di pagamento','Metodo di pagamento');
});
解决方法
你可以尝试使用 "pll_e(' " 而不是 "__(' "
喜欢:
function wc_privacy_message_below_checkout_button() {
pll_e('<h3>Metodo di pagamento</h3>');
}
此外,如果我没记错的话,字符串内容必须与回显的内容相同:
pll_register_string('the_string_name','<h3>Metodo di pagamento</h3>');
然后更改 Polylang 管理页面中的字符串。
如果这与“h3”标题标签相呼应,您可以删除它们并在 Polylang 中设置注册字符串的样式。
您也可以尝试保留函数原样(您如何编写它)并更正注册代码中的字符串内容,将其更改如下:
pll_register_string('the_string_name','<h3>Metodo di pagamento</h3>');
我自己还没有在函数内部做过这件事,希望这对你有用,但如果不是,我仍然认为“pll_e()”可能是你需要的。