首页 文章

Woocommerce - 将属性值显示为下拉字段

提问于
浏览
0

我有一个关于woocommerce及其属性的问题 . 我有大约10个属性,如:速度,重量,颜色,引擎等 . 我要做的是在一个页面上创建一个搜索表单,用户填写/通过选择字段选择适当的选项后将搜索产品 .

然而,我已经坚持使用一段代码来假设创建这样的下拉列表(将显示特定属性的所有值) .

码:

<?php
$subheadingvalues = get_the_terms( $product->id, 'pa_naped');
if ($subheadingvalues): ?>
<select>
    <?php foreach ( $subheadingvalues as $subheadingvalue ): ?>
        <option value="<?php echo $subheadingvalue->name; ?>">
            <?php echo $subheadingvalue->name; ?>
        </option>
    <?php endforeach; ?>
</select>

<?php endif; ?>

这段代码的主要问题?根本不起作用 - 什么都不显示 . 我在woocommerce仪表板中仔细检查了属性名称,其名称确实是pa_naped(引擎) . 为什么不工作?

其次,如果我想做同样的事情,但我所选择的所有属性(如上所述),该怎么办?我应该制作一种阵列还是某种?

1 回答

  • 1

    要获取术语的所有值,您需要使用 get_terms()

    所以你的功能应如下所示:

    $subheadingvalues = get_terms('pa_naped', array(
    'hide_empty' => false,
    ));
    ?> <select>
        <?php foreach ($subheadingvalues as $subheadingvalue): ?>
        <option value="<?php echo $subheadingvalue->name; ?>">
            <?php echo $subheadingvalue->name; ?>
        </option>
        <?php endforeach;?>
    </select>
    

    Reference

相关问题