wordpress 如何在WooCommerce商店中创建包含某些产品的页面?

b4lqfgs4  于 11个月前  发布在  WordPress
关注(0)|答案(1)|浏览(186)

我想在我的网站上创建一个页面,在那里我只能显示我的网上商店的某些产品。(指定产品)尝试使用ID添加我想要的产品,然后,我创建了一个名为我的产品的页面,我选择了之前创建的模板(指定产品).在它我选择产品的'ID',我不知道是否有其他方法来做到这一点.你可以看到模板代码,他们会告诉我我做错了什么.有问题的页面显示一个产品每行,它占据了整个屏幕的宽度,只显示产品图片,占据了整个屏幕的宽度。
你不可能看到这个例子,因为我在一个本地项目中,你能看到我在这段代码中犯的错误吗?谢谢。

<?php
     /*
      * Template Name: Specific Products Page
      * Description: Template to display specific products from different categories
      */
    
     // Include WordPress header
     get_header();
    
     // Get products from different categories by their ID or slug
     $product_ids = array(23, 45, 67); // ID of desired products
     $args = array(
         'post_type' => 'product',
         'post__in' => $product_ids,
         'posts_per_page' => -1, // Show all products
     );
    
     // Consult the products
     $products_query = new WP_Query($args);
    
     // Show products
     if ($products_query->have_posts()) :
         while ($products_query->have_posts()) :
             $products_query->the_post();
             global $product;
             ?>
             <div class="product-item">
                 <h2><?php the_title(); ?></h2>
                 <?php echo $product->get_price_html(); ?>
                 <?php the_excerpt(); ?>
                
             </div>
             <?php
         endwhile;
         wp_reset_postdata();
     else :
         echo 'No products found.';
     endif;
    
     // Include the WordPress footer
     get_footer();

字符串
我做了几个测试,但产品总是不成比例.我可以展示一些测试,但我做了很多.我没有台面通知的东西是不允许我创建像WooCommerce一个布局

<?php
     if ( ! defined( 'ABSPATH' ) ) {
         exit; // Exit if not accessed from WordPress
     }
    
     /*
      * Template Name: Specific Products Page
      * Description: Template to display specific products from different categories
      */
    
     // Include WordPress header
     get_header();
    
     // Get products from different categories by their ID or slug
     $product_ids = array(23, 45, 67); // ID of desired products
    
     // Show products with WooCommerce loop
     if ( ! empty( $product_ids ) ) {
         echo '<div class="woocommerce">';
         woocommerce_product_loop_start();
         foreach ( $product_ids as $product_id ) {
             $post_object = get_post( $product_id );
             setup_postdata( $GLOBALS['post'] =& $post_object );
             wc_get_template_part( 'content', 'product' );
         }
         woocommerce_product_loop_end();
         echo '</div>';
     }
    
     // Restore data from the original loop
     wp_reset_postdata();
    
     // Include the WordPress footer
     get_footer();
     ?>


0tdrvxhp

0tdrvxhp1#

$args = array(
    'type' => 'product',
    'include' => array( 23, 45, 67 )
);
$products = wc_get_products( $args );

字符串
请查看此链接了解更多信息:https://github.com/woocommerce/woocommerce/wiki/wc_get_products-and-WC_Product_Query

相关问题