【发布时间】:2022-01-17 09:53:13
【问题描述】:
我有一个电子商务商店,其购物车页面显示了一个名为“运费报价(给我们发送电子邮件)”的自定义运输选项。但是,我想在我的网站上执行一些简短的代码,该代码将显示一个联系表格,以便用户可以轻松填写所需的详细信息以获得运费报价。以下是我的页面目前的样子:
在我的插件中添加代码 sn-p 后,我设法让表单触发,但它会在页面加载后立即触发,然后在 任何 其他选项时消失已选中。
这是我添加的代码 sn-p 以显示上述内容:
<?php
add_action( 'woocommerce_after_shipping_rate', 'checkout_shipping_additional_field', 20, 2 );
function checkout_shipping_additional_field( $method, $index )
{
if( $method->get_id() == 'request_shipping_quote' ){
echo do_shortcode('[ws_form id="1"]');
}
}
?>
为了重申这个问题,我可以执行简短的代码来显示我的联系表单,但它只会在购物车页面加载后显示,然后在选择任何运输选项时立即消失。我只希望它在选择“运费报价(向我们发送电子邮件)”时执行,并在每次用户再次点击关闭/重新打开时重新显示。
【问题讨论】:
-
您确定该表单有效吗?我的意思是您是否尝试提交表单或继续结帐?因为在 woo-commerce 中,结帐已经包含在
form标记中,并且您还添加了我认为具有form标记的表单,这不是有效的 HTML,您可以在此处阅读更多信息 - Is it valid to have an HTML form inside another HTML form? -
我实际上什至没有尝试提交。它确实在测试后工作/发送,但在单击时.. 它实际上导航到显示 JSON 的随机页面 (mysite.com/wp-json/ws-form/v1/submit)。
标签: php wordpress woocommerce