这就是我现在所拥有的:
文本未包装在标准WooCommerce HTML中。
这就是我要的:
此处的文本正确包装在标准WooCommerce HTML中。
这就是我所做的
我已经将此添加到functions.php中。我使用的是”高级自定义字段”, 因此我将该字段的内容(纯文本)存储在$ availability变量中。
add_filter( 'woocommerce_get_availability', 'wcs_custom_get_availability', 1, 2);
function wcs_custom_get_availability( $availability, $_product ) {
// Change Out of Stock Text
if ( ! $_product->is_in_stock() ) {
$availability['availability'] = the_field("text_stock", "option");
}
return $availability;
}
文本正确显示在产品页面上, 但通常不会包装商品信息的HTML(可在WooCommerce / templates / single-product / stock.php中找到)。
我已经试过了:
add_filter( 'woocommerce_get_availability', 'wcs_custom_get_availability', 1, 2);
function wcs_custom_get_availability( $availability, $_product ) {
// Change Out of Stock Text
if ( ! $_product->is_in_stock() ) {
$availability['availability'] = '<p class="stock ' . esc_attr( $availability['class'] ) . '">' . the_field("text_stock", "option") . '</p>';
}
return $availability;
}
但是, 这给我留下了这个奇怪的输出:
我的问题
- 如何仍输出相同的HTML?
- 如果上述选项不可行, 如何输出自己的HTML?
#1
你是否尝试过使用get_field(” text_stock”, ” option”)而不是the_field(” text_stock”, ” option”)?
评论前必须登录!
注册