こんにちは–私は同様の問題がありました。Woocommerceは、カタログおよび関連製品の画像にカタログ画像を使用します。画質や速度が低下するため、これは理想的ではありません。そこで、関連商品の4番目の画像カテゴリを追加しようとしました。ハウディマクジーは問題を解決しました。ハウディ・マギーズの回答をご覧ください。
関連製品の画像サイズを変更する:彼のコードを読んでください!
それは私のニーズに見事にうまくいきました。あなたの問題については、同じロジックを適用できます。お役に立てれば。よろしく-テオ
私はうまくいく解決策を見つけました。1.step:functions.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
}
注:「あなたの親指」、後でこの変数名を使用します
ステップ:次に、注目の商品を表示する場所に次のコードを追加します。
<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>
参照と情報:3番目のリンクの評判が良くない、申し訳ありません(www.haloseeker.com/display-woocommerce-featured-products-without-a-shortcode/)私はwootheme mystileのindex.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>
ステップ:サムネイルを再生成し、プラグインhttps://wordpress.org/plugins/regenerate-thumbnails/を使用します
ブラウザを更新してdomを検査し、値を比較します
テーマに応じて、マークアップとクラス名を変更できます。私は上記の方法をテストし、それはうまくいきます。これまでできなかった唯一のことは、カートに追加ボタンを追加することです。カートに追加ボタンのショートコードに変数を書き込む方法がわかりません。これはコードです:
<?php echo do_shortcode('[add_to_cart id="variable number?"]'); ?>
これがお役に立てば幸いです。これを行うためのよりエレガントな方法は確かにあります。たとえば、functions.phpの関数
テオについて