http://tp4x4.v2webdesign.co.uk/products/
我想知道是否有可能找出何时类别/产品循环是最后一个。
我正在构建自定义模板并组织我使用基础网格系统的产品。
这是在文件中:content-product-cat.php&内容product.php
<?php if ($woocommerce_loop['loop']&1){ ?>
<div class="row product-grid-row"> <?php }?>
<div class="product-category product large-6 small-12 columns">
content stuff is here
</div>
<?php if ($woocommerce_loop['loop']&2) { ?></div><?php } ?>
此代码打开每个奇数的.product-grid-row,并为每个偶数关闭它,每行创建2个产品。
问题是当最后一个产品是奇数时,或者如果是产品/类别则存在奇数。
如果有办法确定该循环中的类别/产品数量,我可以简单地使用该变量:
if ($lastinloop) echo "</div>";
我也尝试过使用WooCommerce的loop_shop_columns功能,但如果最后一个产品不在一行的末尾,则会出现同样的问题。
答案 0 :(得分:0)
试试这个
global $wp_query;
echo "Total Records :".$wp_query->found_posts;
答案 1 :(得分:0)
迟到总比没有好:)我不确定“正确性”但它有效。
我的/mytheme/woocommerce/loop/loop-start.php包含
<div class="container">
所以..现在更改/mytheme/woocommerce/content-product.php中的这一行:
global $product, $woocommerce_loop;
为:
global $product, $woocommerce_loop, $wcp_last_loop;
并将其添加到结尾:
$wcp_last_loop = $woocommerce_loop; // save it globaly for use in /mytheme/woocommerce/loop/loop-end.php
我的/mytheme/woocommerce/loop/loop-end.php包含:
<?php
/**
* Product Loop End
*/
global $wcp_last_loop;
if ( 1 == $wcp_last_loop['loop'] % $wcp_last_loop['columns'] ) {
echo '</div><!-- .row -->'; // end of .row after odd product
}
?>
</div><!-- .container -->