自定义分类图像-输出到单个产品页面

时间:2019-08-15 03:21:37

标签: php wordpress woocommerce taxonomy custom-taxonomy

我正在尝试在各个产品页面上显示附加到自定义分类法的图像。我使用了“自定义分类法”插件(https://wordpress.org/plugins/taxonomy-images/),并使用“高级自定义字段”添加了图像。我有2个自定义分类法,分别称为“ range_logo”和“ features”,每个分类都分配有图像。我需要使用“ woocommerce_before_add_to_cart_form”钩子将图像输出到单个产品页面。

正如您在下面看到的那样,我尝试输出一行文本以测试该挂钩是否正常工作,确实如此,但是当我添加分类图像提供的代码时未显示分类图像。插件。

add_action( 
"woocommerce_before_add_to_cart_form","product_taxonomy_image");
function product_taxonomy_image () {
    echo 'Taxonomy image here';
print apply_filters( 'taxonomy-images-queried-term-image', '' );
}

预期结果是,将显示该产品的适当分类图像。相反,我收到此错误:

  

注意:term_taxonomy_id不是当前查询对象的属性。当在不受支持的模板文件中使用分类法图像查询术语图像id过滤器时,通常会发生这种情况。此过滤器设计为可在分类档案中工作,该档案传统上由以下模板文件之一提供:category.php,tag.php或taxonomy.php。了解有关模板层次结构的更多信息。在/var/sites/a/mysite.com/public_html/wpnew/wp-content/plugins/taxonomy-images/legacy/includes/public-filters.php在第398行上

我正在使用Avada主题-也许主题模板文件的布局可能是错误的原因?我想我可能需要改用archive.php,但我对PHP没有太多经验。

我已经尝试了几种可能的解决方案,并在其他地方寻求帮助,但是我已经碰壁了,但是我不确定下一步该怎么做。

1 个答案:

答案 0 :(得分:0)

欢迎社区。首先,我想提一下,您已经使用插件 Taxonomy Images Advanced custom field << / p>

如果您使用的是以前的插件,则可以执行以下操作:

add_action("woocommerce_before_add_to_cart_form","product_taxonomy_image");
function product_taxonomy_image () {
    print apply_filters( 'taxonomy-images-list-the-terms', '', array(
        'before'       => '<div class="my-custom-class-name">',
        'after'        => '</div>',
        'before_image' => '<span>',
        'after_image'  => '</span>',
        'image_size'   => 'detail',
        'taxonomy'     => 'product_cat',
    ) );
}

以上代码将为您提供与该产品关联的类别中的图像。如果这是您创建的另一个自定义分类法,请更改分类法参数中的值。

如果您使用的是ACF,则必须先获得产品条款。让我知道是否是这种情况,我将与您分享该代码。