我需要有关此代码的帮助

博克登

有人可以向我解释这段代码到底是做什么的吗?我对“额外的帖子类”部分特别困惑。我想要实现的唯一目标是每 4 节课都会增加一堂课。

global $product, $woocommerce_loop;

$PHT_shopID = get_option('woocommerce_shop_page_id');
$PHT_shopID = get_permalink($PHT_shopID);

// Store loop count we're currently on
if (empty($woocommerce_loop['loop'])) {
  $woocommerce_loop['loop'] = 0;
}

// Store column count for displaying the grid
if (empty($woocommerce_loop['columns'])) {
  $woocommerce_loop['columns'] = apply_filters( 'loop_shop_columns', 4 );
}

// Ensure visibility
if (!$product || !$product->is_visible()) {
  return;
}

// Increase loop count
$woocommerce_loop['loop']++;

// Extra post classes
$PHTclasses = array();
if ( 0 === ( $woocommerce_loop['loop'] ) % $woocommerce_loop['columns'] || 1 === $woocommerce_loop['columns'] )
  $PHTclasses[] = 'first';
if ( 0 === ($woocommerce_loop['loop'] ) % $woocommerce_loop['columns'] )
  $PHTclasses[] = 'last';

    $PHTclasses[] = 'primary-product-block';
?>
詹姆士

我在你的 ifs 中添加了一些评论来解释它们

// Extra post classes
$PHTclasses = array();

// if iterator is evenly divisible by # columns, or if there is only one column, add "first"
if ( 0 === ($woocommerce_loop['loop']) % $woocommerce_loop['columns'] || 1 === $woocommerce_loop['columns'] )
  $PHTclasses[] = 'first';

// if iterator is evenly divisible by # columns, add "last"
if ( 0 === ($woocommerce_loop['loop']) % $woocommerce_loop['columns'] )
  $PHTclasses[] = 'last';

所以添加另一个类似的 if 块似乎是合乎逻辑的:

// if iterator is evenly divisible by 4
if ( 0 === ($woocommerce_loop['loop']) % 4 )
  $PHTclasses[] = 'mynewclass';

请注意,模运算符%返回除法运算的其余部分,因此如果它正在工作但没有获得“正确”的列集,请尝试将0to更改123

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章