在其他笔记里,我们已经看过WooCommerce怎么上传不同类型的产品,比如可变产品或分组产品。今天继续这个系列,我们来了解一下关于 WooCommerce外部或联盟产品的内容。
我们不单单会讲解它是什么以及如何创建(这相对简单),还会分享一些有用的技巧,帮助改善这类产品的展示和管理,特别是在联盟店铺上,这也是外部产品的主要用途。
什么是外接/关联产品?
从最基本的说,WooCommerce中的外接或关联产品是什么,其实名字本身已经很清楚地说明了。它是我们在商店上展示的产品,但我们并不直接销售这些产品,而是由外部的商家来销售,只需作为销售平台来推广产品。
那为什么我要在自己的店铺里销售其他商家的产品呢?因为这样做可以获得佣金,这就是所谓的联盟产品,国外最常见的就是亚马逊联盟。
WooCommerce添加外接/关联产品
在WooCommerce添加联盟关联产品非常简单,首先它的设置就没多少。
你需要填写的最重要字段如下:
- 产品网址:让买家进行实际购买的网页地址。通常第三方都会给你一个联盟链接,这就是你要放的地方。像https://affiliatewp.com/?ref=2478,这个是affiliatewp的联盟链接。
- 按钮文本:你可以在这里自定义“加入购物车”按钮的文本,因为实际上这类产品是不会经过你网站的购物车和结账页面的,而是直接跳转到外部/联盟产品的网页进行购买,你就算是一个“中间商”。
让外部产品在新标签页中打开
当用户点击外部/联盟产品的“加入购物车”按钮时,他们会被301重定向到我们设置的产品网址,也就是离开了我们的网站。这个链接并不会在新的浏览器标签页中打开,而是在当前的标签页中打开,这可能会导致我们失去访客。
我们这里正确的做法应该是通过新标签页打开购买网址,让用户可以购买的同时也还留着我们网站上。如果你用的是网站构建器,那么你就可以很轻松加上新窗口打开设置。
另外一种方法就是通过更改一些代码来添加这个功能,只需要去 /wp-content/plugins/woocommerce/templates/single-product/add-to-cart/external.php
文件进行小的修改。
在里面你需要找到这一行:
<form class="cart" action="<?php echo esc_url( $product_url ); ?>" method="get">
<?php do_action( 'woocommerce_before_add_to_cart_button' ); ?>
这行代码添加 target=”_blank” :
<form class="cart" action="<?php echo esc_url( $product_url ); ?>" method="get" target="_blank">
<?php do_action( 'woocommerce_before_add_to_cart_button' ); ?>
添加这个之后,当访客点击“加入购物车”按钮时,会在新标签页中打开外部产品。不过这个修改会在你更新WooCommerce之后丢失,因为新版本会覆盖你修改的文件。
你需要去你使用的主题文件夹,创建一个名为 woocommerce
的文件夹(如果还不存在的话),在里面创建与之前修改的文件相同的路径,即 /wp-content/themes/你的主题/woocommerce/templates/single-product/add-to-cart/
。
然后,将你修改后的 external.php
文件复制到这个目录中。这样,更新时就不会覆盖你的修改,外部/联盟产品的“加入购物车”按钮将始终在新标签页打开。
如果你觉得很麻烦,可以使用Improved External Products for WooCommerce插件,它的设置非常简单。