如何禁用运送到另一个地址选项
已发表: 2022-01-01WooCommerce 是一个很棒的免费电子商务解决方案,它具有一组非常有用的功能。 突出的是 WooCommerce 在开发时考虑了可扩展性,类似于 WordPress 的模块化。
这篇文章包含两个不同的部分。 在第一部分中,我将与您分享如何完全删除所有运输字段,迫使客户将其订单运送到帐单地址。 在第二部分中,我将向您展示如何删除“运送到另一个地址选项”并强制客户同时输入账单地址和送货地址。
禁用运送到另一个地址选项
如果您的 WooCommerce 商店只允许运送到客户的帐单地址,则不需要输入运送字段的其他选项。 但是,默认情况下,WooCommerce 有一个选项可以轻松删除运输字段,而无需代码片段。
但是,这里是先决条件:
- WordPress(假设您已经安装了它)。
- WooCommerce 插件(已安装并激活)。
说了这么多,让我们深入了解这篇文章的本质。 这些步骤非常简单,您不会很难实施这些解决方案。
a) 完全删除运输字段的步骤
以下是您需要遵循的步骤:
- 登录您的 WordPress 站点并以管理员用户身份访问仪表板。
- 从仪表板菜单中,单击WooCommerce > 设置。 这将打开“设置”页面。 单击“运输”选项卡,然后单击“运输选项”,您将在此处看到“计算”和“运输目的地”等选项。
- 在运送目的地设置中,使用“强制运送到客户帐单地址”选项完全删除运送字段,并将帐单字段用于帐单和运送。 此选项允许您控制应使用哪些结帐字段。
确保保存所做的更改。
- 要查看结果,请转到结帐页面,您将看到帐单详细信息将用于运输。 这将是结果:
b) 删除“运送到另一个地址”选项并强制使用运送地址的步骤
默认情况下,WooCommerce 有一个设置。 它不强制用户单独添加送货地址。 要隐藏“运送到另一个地址”选项,您可以强制客户购买产品以输入他们的帐单地址和送货地址。
在本节中,我将分享一些简单的步骤来做到这一点。 我们将使用 PHP 代码
- 隐藏“运送到不同地址”复选框并添加自定义标题。
- 在结帐验证时强制收货地址。
以下是您需要遵循的步骤:
- 登录您的 WordPress 站点并以管理员用户身份访问仪表板。
- 从仪表板菜单中,单击外观菜单 > 主题编辑器菜单。 当主题编辑器页面打开时,查找主题函数文件,我们将在其中添加将在结帐页面显示产品图像的函数。 隐藏“运送到不同地址”复选框并添加自定义标题。
- 将以下代码添加到php文件中:
/** * 隐藏“运送到不同地址”复选框。 */ /** *隐藏“运送到不同地址”复选框/添加自定义标题。 * 如果需要,您可以在此处替换文本。 */ 功能 njengah_js_force_shipping_address() { ?><script type="text/javascript"> var diffAddress = document.querySelector('#ship-to-different-address'); diffAddress.outerHTML = '<h3>发货详情</h3><input type="checkbox" checked="checked" value="1" name="ship_to_different_address" class="hidden" style="display: none;" />'; </script><?php } add_action('wp_footer', 'njengah_js_force_shipping_address'); /** * 在结帐验证时强制收货地址 */ 功能 njengah_force_posted_data_ship_to_different_address( $posted_data ) { $posted_data['ship_to_different_address'] = true; 返回 $posted_data; } add_filter('woocommerce_checkout_posted_data','njengah_force_posted_data_ship_to_different_address'); // 请注意,这会覆盖 Woo 设置中的“运送目的地”选项 add_filter('woocommerce_ship_to_different_address_checked', '__return_true'); // 如果你有可能只有虚拟订单,你可能想把它注释掉 add_filter('woocommerce_cart_needs_shipping_address', '__return_true'); // 订单总是有运费(例如,即使是本地取货) add_filter('woocommerce_order_needs_shipping_address', '__return_true');
- 要查看结果,请转到结帐页面,您将看到添加了包含送货地址详细信息的新部分。 这将是结果:
代码如何运作
首先,此代码隐藏了“运送到不同地址”复选框,您可以添加自己的自定义标题。 然后它在结帐验证时强制输入送货地址。 此外,我添加了一个过滤器来覆盖 Woo 设置中的“运送目的地”选项。 此外,我添加了一个过滤器以确保订单始终发货,即使它是本地取货。
结论
在这个简短的教程中,我分享了如何完全删除运输字段。 我已经与您分享了实现此目标所需遵循的简单步骤。 此外,我还分享了一个自定义 PHP 代码片段,您需要将其添加到 functions.php 文件中以删除运送到另一个地址选项并强制使用运送地址。 我希望这篇文章为您提供了一个完美的解决方案。
类似文章
- 如何在 WooCommerce 商店页面中更改添加到购物车按钮文本
- 如何按类别显示 WooCommerce 产品
- 如何向 WooCommerce 产品添加类别
- 如何在 WooCommerce 中添加自定义运输方式
- 如何删除默认产品排序 WooCommerce
- 如何对 WooCommerce 类别进行排序以获得更好的用户体验
- 如何使用 WooCommerce 销售数字产品
- 如何隐藏 WooCommerce 优惠券代码字段
- 从 WooCommerce 产品页面隐藏或删除数量字段
- 如何在 WooCommerce 中的产品上添加 GTIN 编号
- 如何在 WooCommerce 的商店页面中隐藏所有产品
- 如何添加产品图片 WooCommerce 结帐页面
- 如何禁用特定类别的付款方式
- 如何在 WooCommerce 中重命名订单状态消息