我正在尝试在各个产品页面上显示附加到自定义分类法的图像。我使用了“自定义分类法”插件(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没有太多经验。
我已经尝试了几种可能的解决方案,并在其他地方寻求帮助,但是我已经碰壁了,但是我不确定下一步该怎么做。
答案 0 :(得分:0)
欢迎社区。首先,我想提一下,您已经使用插件 Taxonomy Images 和 Advanced custom field << / p>
如果您使用的是以前的插件,则可以执行以下操作: 以上代码将为您提供与该产品关联的类别中的图像。如果这是您创建的另一个自定义分类法,请更改分类法参数中的值。 如果您使用的是ACF,则必须先获得产品条款。让我知道是否是这种情况,我将与您分享该代码。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',
) );
}