我想限制在woocommerce单个产品页面中出现的类别数量。目前,"单一产品"文件夹中的meta.php
正在抓取所有类别以显示。我想把它限制在4或5。
我看不懂文件中的$product->get_categories()
。
您可以回显以下短代码来显示模板文件中的类别列表,6是显示的类别数量:
<?php echo do_shortcode("[product_categories number='6' parent='0']"); ?>
你既可以制作自己的模板,也可以跳过woocommerce使用的臃肿代码。
您可以通过使用一些默认的php函数来实现这一点。逻辑是使用implode() php函数从$product->get_categories(', ')默认woocommerce函数生成的字符串创建一个数组。在此之后,通过使用array_slice() php函数获取数组的切片来限制结果的数量。设置第二个参数将是结果的数量(在我的示例中是5)。当完成限制后,我们应该使用php函数explosion()将数组转换回逗号分隔的字符串。
短版:
echo implode(', ', (array_slice((explode(', ', $product->get_categories( ', ' ))), 0, 5, true)));
更长,说明版本:
$categories_string = $product->get_categories( ', ' );
$categories_array = explode(', ', $categories_string);
$categories_to_display_array = array_slice($categories_array, 0, 5, true);
$categories_to_display_string = implode(', ', $categories_to_display_array);
echo $categories_to_display;