Wordpress 网页模板上的电子商务

Wordpress 网页模板上的电子商务,wordpress,woocommerce,Wordpress,Woocommerce,我制作了一个新的页面模板,并将woocommerce archive-product.php复制到其中,但是虽然商店页面可以工作,但定制页面不能,有没有办法使其功能与商店页面相同?注意到它也没有从visual composer或普通内容中提取任何其他内容。对于那些想要定制woocommerce商店模板(归档产品)的人,这里有一个示例模板,可以在任何程度上进行定制 <?php if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if acce

我制作了一个新的页面模板,并将woocommerce archive-product.php复制到其中,但是虽然商店页面可以工作,但定制页面不能,有没有办法使其功能与商店页面相同?注意到它也没有从visual composer或普通内容中提取任何其他内容。

对于那些想要定制woocommerce商店模板(归档产品)的人,这里有一个示例模板,可以在任何程度上进行定制

<?php

if ( ! defined( 'ABSPATH' ) ) {
    exit; // Exit if accessed directly
}

get_header( 'shop' ); ?>

<?php
/**
 * woocommerce_before_main_content hook
*
* @hooked woocommerce_output_content_wrapper - 10 (outputs opening divs for the content)
* @hooked woocommerce_breadcrumb - 20
*/
do_action( 'woocommerce_before_main_content' ); ?>

<?php if ( apply_filters( 'woocommerce_show_page_title', true ) ) : ?>

    <h1 class="page-title"><?php woocommerce_page_title(); ?></h1>

<?php endif; ?>

<?php do_action( 'woocommerce_archive_description' ); ?>

<?php

global $post, $product;

$args = array( 
    'post_type'=>'product', 
    'posts_per_page'=>-1, 
    'orderby'=>'date', 
    'order'=>'ASC'      
);
// get all the posts ( here it would be all the wc products )
$posts = get_posts( $args );

/**
 * woocommerce_before_shop_loop hook
 *
 * @hooked woocommerce_result_count - 20
 * @hooked woocommerce_catalog_ordering - 30
 */
do_action( 'woocommerce_before_shop_loop' );

if( count( $posts ) > 0 ) { 

    woocommerce_product_loop_start();

    woocommerce_product_subcategories();

    foreach( $posts as $post ) {
        // this will put the current post into the GLOBAL $post object
        setup_postdata( $post );
        // this will put the product data into GLOBAL $product object
        wc_setup_product_data( $post ); ?>

        <!-- Now you have valid WP loop, put the content-product template here -->
        <?php wc_get_template_part( 'content', 'product' ); ?>

        <?php 
    }

    woocommerce_product_loop_end(); 

} else {
    wc_get_template( 'loop/no-products-found.php' );
}

/**
 * woocommerce_after_shop_loop hook
 *
 * @hooked woocommerce_pagination - 10
 */
do_action( 'woocommerce_after_shop_loop' );

/**
 * woocommerce_sidebar hook
 *
 * @hooked woocommerce_get_sidebar - 10
 */
do_action( 'woocommerce_sidebar' );

get_footer( 'shop' ); ?>


谢谢这真的很有用。但还有一个问题,产品加载很好,但任何页面内容都不会加载,例如,我在VisualComposer中有一些组件在该页面上不会加载。我需要一个wp循环来显示这些内容吗?是的,这是可能的,把内容放在
获取页脚('shop')之前