Ali*_*eda 0 php wordpress product gettext woocommerce
在 Wordpress 中,我正在使用 Woocommerce v3.3.5 并在可变产品的单个产品页面中,当我单击添加到购物车按钮而我没有选择变体选项时,它会弹出一个警报,上面写着:
在将此产品添加到您的购物车之前,请选择一些产品选项。
到目前为止这是合乎逻辑的..
我的问题是如何将警报文本更改为其他内容以适合我的业务?
小智 8
WooCommerce 有一个过滤器“woocommerce_get_script_data”,用于发送到 JavaScript 的所有数据,包括翻译文本。所以这是更改此文本的正确方法:
add_filter( 'woocommerce_get_script_data', 'change_alert_text', 10, 2 );
function change_alert_text( $params, $handle ) {
if ( $handle === 'wc-add-to-cart-variation' )
$params['i18n_unavailable_text'] = __( 'Your new alert text', 'domain' );
return $params;
}
Run Code Online (Sandbox Code Playgroud)
如果 WooCommerce 更改此翻译,您将遇到接受答案的问题,您的条件将是错误的。
小智 5
对于那些无法让代码工作的人来说,这是因为 Keylies 代码调用的变量使用了错误的变量。
正确的变量遵循相同的编码约定,并且具有令人难以置信的适应性。
要么你可以编辑 public_html/YOURDOMAIN/wp-content/plugins/woocommerce/includes/class-wc-frontend-scripts.php
或者将以下代码片段(带有相关变量)放入您的主题functions.php
文件中。
add_filter( 'woocommerce_get_script_data', 'change_alert_text', 10, 2 );
function change_alert_text( $params, $handle ) {
if ( $handle === 'wc-add-to-cart-variation' )
$params['###INSERT YOUR VARIABLE HERE###'] = __( 'Your new alert text', 'domain' );
return $params;
}
Run Code Online (Sandbox Code Playgroud)
替换###INSERT YOUR VARIABLE HERE###
为以下任何内容(变量 => 默认消息/错误/文本):
您可以使用以下方法复制代码以替换多个全店错误:
自定义错误 1: $params['i18n_make_a_selection_text'] = __( 'Hey, you... yeah you... make a selection!', 'domain' );
自定义错误 2: $params['i18n_unavailable_text'] = __( 'Oh no we've run out of that product but it's not the end of the world it'll be back soon', 'domain' );