当前位置: 首页 > 知识库问答 >
问题:

使用产品标签向WooCommerce侧边栏添加小部件

聂翼
2023-03-14

我在我的Wordpress网站上使用WooCommerce作为目录(即禁用购物车),我想根据产品是否具有特定标签将小部件添加到单个产品页面侧边栏。我尝试使用“小部件逻辑”插件和条件标签,但即使我禁用了所有其他插件,我也无法让它在网站的任何地方工作(即包括带标签的帖子和主侧边栏-所以不仅仅是带标签的产品WooCommerce)。

然后我添加了“PHP代码小部件”,并在其中添加了以下代码:

    <?php
if (is_product_tag( 'adexample1' )) {
echo "test1";
} elseif (is_product_tag( 'adexample2' )){
echo "test2";    
} elseif (is_product_tag( 'adexample3' )){
echo "test3";  
} elseif (is_product_tag( 'adexample4' )){
echo "test4";  
} elseif (is_product_tag( 'adexample5' )){
echo "test5";  
} else {
echo "<p>test6</p>";
}
?>

我已经用标记的产品和其他产品测试了它,但是它们都在小部件中返回“测试6”。

有人能看到我做错了什么吗,或者产品标签可能因为某种原因不起作用/不被识别(也许是权限?)。这个问题在默认的2017年和基本的WooCommerce主题中复制,所以它似乎不是一个主题问题?

如能为实现这一目标提出其他建议,我们将不胜感激?

谢啦

共有1个答案

巢安澜
2023-03-14

有条件的is\u product\u tag()无法获取具有产品标签的产品,因为它在查看产品标签存档页面时用于返回true。

要实现您想要做的事情,您需要使用WordPresshas_term()条件函数,将定义的$taxonomy参数用于'product_tag',方法如下:

// Define BELOW your product tag ID, slug or name (or an array of values)
$term = 'adexample1';
$term2 = 'adexample2'; // ...

// HERE are your conditions with your code
if( has_term( $term, 'product_tag' ) ){
    echo "test1";
} elseif( has_term( $term2, 'product_tag' ) ){
    echo "test1";
} else {
    echo "<p>test6</p>";
}

这应该工作,因为它适用于产品类别与定义$分类法参数'product_cat'...

 类似资料:
  • 我想在woocommerce侧边栏中显示所有可用的产品属性。根据我使用的设计和插件,这里很难使用小部件框,所以我选择循环所有可用的产品属性,并在侧边栏中显示它们。 我尝试了以下方法,可在wooCommerce文档, 获取属性() 也尝试了一些堆栈答案。 但我仍然得到一个空数组。 我的侧边栏包含在WooCommerce存档页面中。如何获取属性名称及其值?

  • 我正在尝试向现有的WooCommerce产品添加一个具有多个值的新属性。 这是我正在使用的代码。我把它简化了一点,使它更清楚。 该属性显示在产品的属性列表中。然而,条款没有添加。 数据库中也有这些术语: 我做错了什么?我做了很多研究,读了一些其他的问题,但它们对我没有帮助。 在WooCommerce中以编程方式创建新产品属性

  • 这是我在woocommerce开发的网站。侧边栏不显示在类别页面的右侧,仅显示在类别页面上。在产品页面上,它显示良好。 用于显示产品存档的模板,包括作为帖子类型存档的主商店页面。 通过将此模板复制到Theme/woocommerce/archive产品来覆盖此模板。php

  • 我最初的目标是能够在侧边栏中按标题排序显示Woocommerce产品。目前,此小部件中唯一的排序选项是日期、价格、随机和销售。 我能够在wc类小部件产品的两个部分中添加标题排序选项。php: 在这里: 此自定义工作正常,但: 我的问题:我应该在哪里保存这个定制的“”文件,以防止它在下一次更新时被覆盖<或者。。。有没有更优雅的方法来实现这一点?非常感谢。

  • 作为另一个实用的功能,我们增加一个显示GtkMenuButton,GtkRevealer和GtkListBox的侧边条。 <?xml version="1.0" encoding="UTF-8"?> <interface> <!-- interface-requires gtk+ 3.8 --> <template class="ExampleAppWindow" parent="GtkA

  • 似乎WooCommerce产品的搜索功能没有检查“产品标签”分类术语,也没有检查SKU字段?我将SKU作为产品标签添加到它们各自的产品中,但当我搜索SKU时,它仍然没有返回任何内容。。。。如何使搜索功能检查产品标签术语?我尝试了很多方法,从添加tax\u查询到pre\u get\u post过滤器,再到一个全新的WP\u查询循环,由于某种原因,它无法搜索产品标签。。。。那么,产品标签的意义是什么呢