[英]Auto-populate input form field from URL parameters
我在woocommerce页面( http://.../product/abcd/
)上有一个按钮,该按钮上有一个“立即预订书”按钮,该按钮链接到包含表单字段以提交的另一页面( http://.../booking-appointments/?id=1238&sku=1
),该产品在上一页的产品URL上具有ProductID
和SKU
。
我希望它每次从URL参数加载此页面时自动自动填充ProductID
字段。
任何帮助表示赞赏。
您可以在URL中传递产品ID和SKU,并通过$_GET
。 然后将其加载到输入字段中。 这是一个例子:
http://www.example.com/?product-id=123&sku=abcd456
然后使用$_GET
获取URL参数:
$productId = $_GET['product-id'];
$sku = $_GET['sku'];
您的输入字段如下所示:
<label for="product-id">Product ID:</label> <input type="text" name="product-id" id="product-id" value="<?php echo $productId; ?>" disabled>
我什至添加了disabled
属性,以防止用户/客户编辑产品ID。 提交表单后,您可以使用PHP从后端保护它。
要在您的预订表格(页面)中自动填充产品ID和产品SKU,您应该尝试这样做(没有任何保证,因为可以在您的页面表格中对其进行真实测试) :
add_action( 'wp_footer', 'autopopulate_product_id_script' );
function autopopulate_product_id_script() {
if( isset( $_GET['id'] ) ):
?>
<script type="text/javascript">
(function($){
$('input[name="productid"]').val("<?php echo $_GET['id']; ?>");
$('input[name="productsku"]').val("<?php echo $_GET['sku']; ?>");
})(jQuery);
</script>
<?php
endif;
}
代码在您的活动子主题(或主题)的function.php文件中,或者在任何插件文件中。
产品ID和产品sku需要在url中传递,例如:
http//www.example.com/booking-page/?id=124&&sku=AH1584
并且您的<imput>
文本字段应类似于:
<input type="text" name="productid" val="">
<input type="text" name="productsku" val="">
因此,对于产品sku来说,它是相似的,您可以轻松添加…
但是,由于javascript在您“轻松约会”预订表中已经非常活跃,我不知道这是否行得通。
该答案与以下内容有关: 向WooCommerce产品单页添加自定义“预订”按钮
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.