更改 WooCommerce 可用性文本并包含原始 HTML
Changing WooCommerce availability text and include the original HTML
这是我现在拥有的:
文本未包装在标准 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?
你试过用get_field("text_stock", "option")
代替the_field("text_stock", "option")
吗?
这是我现在拥有的:
文本未包装在标准 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?
你试过用get_field("text_stock", "option")
代替the_field("text_stock", "option")
吗?