Я настраиваю сайт WooCommerce и хотел бы изменить сообщение «нет в наличии», чтобы добавить форму для пользователей, чтобы они оставляли свои контактные данные (система инвентаризации этого магазина невелика, и продукт может действительно быть в наличии в физическом месте).
Мне удалось отредактировать сообщение "нет в наличии" с помощью следующей функции:
function no_stock_form( $availability, $_product ) {
if ( ! $_product->is_in_stock() ) {
$availability['availability'] = 'New out of stock message';
}
return $availability;
}
add_filter( 'woocommerce_get_availability', 'no_stock_form', 1, 2);
Однако, когда я пытаюсь добавить форму с чем-то вроде этого, весь текст и вводимые данные удаляются, текстовая область, однако, отображается правильно:
function no_stock_form( $availability, $_product ) {
if ( ! $_product->is_in_stock() ) {
$availability['availability'] = do_shortcode('[contact-form-7 id="288" title="Producto sin stock"]');
}
return $availability;
}
add_filter( 'woocommerce_get_availability', 'no_stock_form', 1, 2);
Это скриншот того, что я получаю:
![enter image description here](https://i.stack.imgur.com/R7vqo.jpg)
Я думал, что это может быть конфликт с Контактной формой 7, который является плагином, который я использую для генерации формы, но то же самое происходит, если я не использую плагин и собираю форму в обычном HTML, поэтому я Я предполагаю, что это должно быть проблемой с тем, как хранится переменная $availability['availability']
.