嗨,我也有类似的问题。WooCommerce将目录图像用于目录和相关产品图像。这是不理想的,因为你失去了图像质量或速度。因此,我尝试为我的相关产品添加第四个图像类别。Howdy McGee解决了这个问题。请看Howdy McGees的回答:
修改相关产品图像大小:read his code!
它非常适合我的需要。对于您的问题,可以应用相同的逻辑。希望这有帮助。
当做
西奥
**添加内容:**
我找到了一个有效的解决方案。
Step 1: 在函数中指定新的缩略图大小。php。检查参考号:wp codex!
/*add your custom size*/
add_action( \'after_setup_theme\', \'your_theme_setup\' );
function your_theme_setup() {
add_image_size( \'your-thumb\', 123, 123, true );//insert your values
}
注意:“您的拇指”,稍后将使用此变量名
Step 2: 然后,在要显示特色产品的任何位置添加以下代码:
<h1>featured products</h1>
<div class="woocommerce">
<ul class= "products">
<?php
$args = array( \'post_type\' => \'product\', \'meta_key\' => \'_featured\',\'posts_per_page\' => 4,\'columns\' => \'4\', \'meta_value\' => \'yes\' );
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); global $product; ?>
<li class="product post-<?php echo get_the_ID(); ?>">
<a href="<?php echo get_permalink( $loop->post->ID ) ?>" title="<?php echo esc_attr($loop->post->post_title ? $loop->post->post_title : $loop->post->ID); ?>">
<?php woocommerce_show_product_sale_flash( $post, $product ); ?>
<?php if (has_post_thumbnail( $loop->post->ID )) echo get_the_post_thumbnail($loop->post->ID, \'your-thumb\'); else echo \'<img src="\'.woocommerce_placeholder_img_src().\'" alt="Placeholder" width="123px" height="123px" />\'; ?></a>
<h3><?php the_title(); ?></h3><span class="price"><?php echo $product->get_price_html(); ?></span>
</li>
<?php endwhile; ?>
<?php wp_reset_query(); ?>
</ul>
</div>
参考和信息:(
www.haloseeker.com/display-woocommerce-featured-products-without-a-shortcode/)
我把它放在索引中。wootheme mystyle的php(我的主页)。不要忘记在网上使用“拇指”:
<?php if (has_post_thumbnail( $loop->post->ID )) echo get_the_post_thumbnail($loop->post->ID, \'your-thumb\'); else echo \'<img src="\'.woocommerce_placeholder_img_src().\'" alt="Placeholder" width="123px" height="123px" />\'; ?></a>
Step 3: 重新生成缩略图,使用插件
https://wordpress.org/plugins/regenerate-thumbnails/Step 4: 刷新浏览器,检查DOM并比较值
根据您的主题,您可以更改标记和类名。我测试了上述方法,效果很好。
到目前为止,我唯一做不到的就是添加“添加到购物车”按钮,因为我不知道如何将变量写入“添加到购物车”按钮的快捷代码中。代码如下:
<?php echo do_shortcode(\'[add_to_cart id="variable number?"]\'); ?>
我希望这有帮助。
当然,有一种更优雅的方法可以做到这一点。例如,函数中有一个函数。php
当做
西奥