สวัสดี - ฉันมีปัญหาที่คล้ายกัน WooCommerce ใช้ภาพแคตตาล็อกสำหรับแคตตาล็อกและภาพผลิตภัณฑ์ที่เกี่ยวข้อง ไม่เหมาะสำหรับคุณที่จะสูญเสียคุณภาพของภาพหรือความเร็ว ดังนั้นฉันจึงพยายามเพิ่มหมวดหมู่ภาพที่สี่สำหรับผลิตภัณฑ์ที่เกี่ยวข้องของฉัน Howdy McGee ได้แก้ปัญหาแล้ว โปรดดูคำตอบของ Howdy McGees:
แก้ไขขนาดภาพผลิตภัณฑ์ที่เกี่ยวข้อง: อ่านรหัสของเขา !
มันได้ผลอย่างงดงามสำหรับความต้องการของฉัน สำหรับปัญหาของคุณสามารถใช้ตรรกะเดียวกันได้ หวังว่านี่จะช่วยได้
ความนับถือ,
ธีโอ
**ส่วนที่เพิ่มเข้าไป: **
ฉันพบวิธีแก้ปัญหาที่ใช้งานได้
ขั้นตอนที่ 1:กำหนดขนาดรูปขนาดย่อใหม่ใน 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
}
หมายเหตุ: 'your-thumb' คุณจะใช้ชื่อตัวแปรนี้ในภายหลัง
ขั้นตอนที่ 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/ )
ฉันวางไว้ใน index.php (หน้าแรกของฉัน) ของ wootheme mystyle อย่าลืมใช้ 'your-thumb' ออนไลน์:
<?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>
ขั้นตอนที่ 3:สร้างภาพขนาดย่อใหม่ใช้ปลั๊กอินhttps://wordpress.org/plugins/regenerate-thumbnails/
ขั้นตอนที่ 4:รีเฟรชเบราว์เซอร์และตรวจสอบ DOM และเปรียบเทียบค่า
ตามธีมของคุณคุณสามารถเปลี่ยนชื่อมาร์กอัปและคลาสได้ ฉันทดสอบวิธีการข้างต้นและใช้งานได้ดี
สิ่งเดียวที่ฉันไม่สามารถทำได้จนถึงตอนนี้คือการเพิ่มปุ่มเพิ่มไปยังรถเข็นเพราะฉันไม่ทราบวิธีการเขียนตัวแปรลงในรหัสย่อของปุ่มเพิ่มไปยังรถเข็น นี่คือรหัส:
<?php echo do_shortcode('[add_to_cart id="variable number?"]'); ?>
ฉันหวังว่านี่จะช่วยได้.
มีวิธีที่สง่างามมากขึ้นในการทำเช่นนี้ เช่นกับฟังก์ชั่นใน functions.php
ความนับถือ,
ธีโอ