我使用的是高级自定义字段插件,有几个自定义字段显示在WooCommerce产品类别编辑屏幕上(您可以在其中添加/编辑产品类别),然后在archive-product.php
类别模板。我已设法在前端产品类别档案中显示我的所有自定义字段,但ACF插件提供的“分类自定义字段”除外(它允许您在产品类别分类中选择要在前端显示的特定类别)。
我想做的是让用户从多个产品类别中进行选择,然后在前端只显示指向其他产品类别的链接;多个简单文本链接。
我使用的不成功代码是:
$terms = get_field(\'quick_links\');
if( $terms ): ?>
<ul>
<?php foreach( $terms as $term ): ?>
<a href="<?php echo get_term_link( $term ); ?>"><?php echo $term->name; ?></a>
<?php endforeach; ?>
</ul>
<?php endif;
我在一个常规页面模板上测试了上述代码,它可以按照我的要求工作。但是,我无法将其显示在我的产品类别存档模板上。我认为这是因为我缺少在WooCommerce的产品类别分类中打印此信息所需的一些逻辑。
为了在product category archive模板上显示其他自定义字段,我必须使用以下代码,这与通常使用ACF显示自定义字段的方式略有不同。
$queried_object = get_queried_object();
$taxonomy = $queried_object->taxonomy;
$term_id = $queried_object->term_id;
echo \'<div class="top-content-block">\';
the_field( \'top_content_block\', $taxonomy . \'_\' . $term_id );
echo \'</div>\';
echo \'<div class="center-content-block">\';
the_field( \'center_content_block\', $taxonomy . \'_\' . $term_id );
echo \'</div>\';
echo \'<div class="featured-product-block">\';
the_field( \'featured_products\', $taxonomy . \'_\' . $term_id );
echo \'</div>\';
有人有什么建议吗?我认为我需要包括
$taxonomy
和
$term_id
在我上面包含的第一段代码中,我只是不知道如何编写它。