Woocommerce - 如何链接到产品变化?

MrM*_*rMo 10 wordpress woocommerce

我试图找到一种方法来链接到特定的产品变体.

我以为我用这个插件解决了它... https://wordpress.org/plugins/woocommerce-direct-variation-link/

但是,我有两个字的产品属性名称,似乎无法让它工作?我把_, - ,&和+放在两个单词之间但不去.

这是文档...在我的情况下,我会有"颜色样式"而不仅仅是"颜色" mysite.com/product/happy-ninja/?color=blue

mysite.com/product/happy-ninja/?color=blue&size=small(其他变体应以'&'分隔)

mysite.com/product/happy-ninja/?color=blue+green(其中变化值为"Blue Green",空格替换为"+")

小智 12

在上一个发布者之后,我无法使他的代码正常工作,但是我确实发现WooCommerce大部分时间为购物车生成了这些代码:

  1. 亲自访问变体产品
  2. 向购物车添加变化
  3. 打开购物车并将鼠标悬停在项目上->状态栏中的链接(或右键单击>复制链接地址)就可以了!

它应该有这样的后缀:http : //website.com/product/product-name/? attribute_colours =Grey

请注意,这colours是小写字母,因为它是子句,而GreyVariation是实际名称。

对于您的变体名称中的空格,请使用a +代替空格。

为了选择多个变体属性,我相信您可以从头开始&?attribute_[slug]=Variation再次吐出。

  • 是的,添加到购物车,然后单击链接,然后从地址栏中获取它,生成这些自动选择属性的链接的超级简单可靠的方法。谢谢! (3认同)

GDY*_*GDY 9

我认为许多人会寻找通过 url 参数链接特定变体的解决方案,因此这里是该主题的更长答案。

正如这里提到的许多其他人一样,您可以使用属性参数访问任何变体。您在产品详细信息页面上选择变体的方式是选择菜单。该选择的名称属性是参数名称,选项值属性是参数值。这是一个例子:

在此输入图像描述

如果您想链接突出显示的变体,您的链接将类似于https://example.com/some_product/?attribute_pa_size=small

当然你可以添加多个参数,例如https://example.com/some_product/?attribute_pa_size=small&attribute_pa_color=red

问题是,使用开发工具来挖掘这些信息并不是一个非常方便的解决方案。下面是一个代码片段,您可以添加到主题functions.php(或简单的单文件插件内),它在特定产品变体选项卡/手风琴的WordPress管理中显示变体永久链接。

add_action( 'woocommerce_product_after_variable_attributes', 'gdy_add_wc_varition_permalink', 100, 3 ); 
 
function gdy_add_wc_varition_permalink( $loop, $variation_data, $variation ) {
    
    echo '<a href="' . get_permalink( $variation->ID ) . '" target="_blank">' . __( 'Permalink for this variation' ) . '</a>';

}
Run Code Online (Sandbox Code Playgroud)


use*_*555 6

我自己尝试了很多解决方案和插件,但我找到了一种方法,可以在没有插件的情况下轻松完成.我不确定这是否在2015年的oktober中有效,但现在确实有效.

我已在此YouTube视频中对其进行了解释https://www.youtube.com/watch?v=Y_hMI4bXN6A

你想要做的是在你的产品后添加'/?attribute_color = red'之类的东西.

website.com/shop/product1/?attribute_color=red
website.com/shop/product1/?attribute_length=10m
Run Code Online (Sandbox Code Playgroud)

然而,我通过反复试验发现的是重要的是您使用的属性类型.您可以通过两种方式添加属性,即预制的(文本/选择)或自定义属性.直接链接此方法仅适用于创建自定义产品属性的情况.

要使它工作,你必须注意,如果你使用国会大厦字母.对于自定义产品属性的名称,如果在后端使用capitols,则无关紧要(只要您不在URL中使用主题).但是对于值,你只能在后端和url本身使用普通字母和没有capitols.

名称:颜色

值:红色| 黑色,绿色

website.com/shop/product1/?attribute_color=red > will work
website.com/shop/product1/?attribute_Color=red > will not work
website.com/shop/product1/?attribute_color=Red > will not work
website.com/shop/product1/?attribute_color=Black > will work
website.com/shop/product1/?attribute_color=black > will not work
Run Code Online (Sandbox Code Playgroud)

我已在此YouTube视频中对其进行了解释https://www.youtube.com/watch?v=Y_hMI4bXN6A

  • 请完整说明解决方案,而不要包括可能会破坏链接的链接 (2认同)
  • YOUTUBE链接已损坏!!!!Kinda很高兴看到您的最后评论。 (2认同)

Uni*_*cco 5

你可以:

$variation_product_url = $variation_product->get_permalink();
Run Code Online (Sandbox Code Playgroud)

WooCommerce 处理其余的事情;将正确的参数添加到 url 中。


小智 1

我还没有对此进行测试,但尝试将变体名称中的空格替换为 %20,这是空格字符的 url 编码版本。