WooCommerce模板根据您的需要和/或技能以不同的方式工作。
功能:
<?php
wc_get_template_part(\'content\', \'product\');
WooCommerce是否等同于
WordPress core template function:
<?php
get_template_part(\'filename\');
重要的是要知道这与php的要求是一样的
but 不使用。最后是php扩展。
在执行下面提到的任何步骤之前,请查看功能,确保您的主题支持WooCommerce。php用于此代码行:
<?php
// After setup theme hook adds WC support
function mytheme_add_woocommerce_support() {
add_theme_support( \'woocommerce\' ); // <<<< here
}
add_action( \'after_setup_theme\', \'mytheme_add_woocommerce_support\' );
为了使用您自己的设计/模板,您有不同的选项:
1) 最简单的方法:
Create a "woocommerce.php" in your theme folder
WordPress将在主题中使用哪个文件,此文件的优先级最高。如果要使用第二种方法,请删除此文件。
2) 高级方式:
Create a "woocommerce" folder and copy the template which you want to modify into this folder.
WooCommerce/WordPress将识别它并使用此文件夹中提供的模板。此方法被调用“
template overwriting“并允许您在主题中插入和修改WooCommerce前端输出的一部分。这是WC定制的更高级方式,可能对您来说是一个挑战,但肯定是更专业的方式。
在这种情况下,您可能正在查找此文件:
woocommerce/archive-product.php
这是显示店铺主要产品概述的模板文件。创建文件夹名称并将文件复制到其中后,可以为此布局创建自己的标记。
最后,您的新文件可能如下所示:
<?php get_header(); ?>
<div class="container">
<div class="row">
<?php get_template_part(\'sidebars/sidebar-left\'); ?>
<main class="col-xs-12 col-sm-9 col-md-9 col-lg-9">
<?php
// Only run on shop archive pages, not single products or other pages
if ( is_shop() || is_product_category() || is_product_tag() ) {
// Products per page
$per_page = 24;
if ( get_query_var( \'taxonomy\' ) ) { // If on a product taxonomy archive (category or tag)
$args = array(
\'post_type\' => \'product\',
\'posts_per_page\' => $per_page,
\'paged\' => get_query_var( \'paged\' ),
\'tax_query\' => array(
array(
\'taxonomy\' => get_query_var( \'taxonomy\' ),
\'field\' => \'slug\',
\'terms\' => get_query_var( \'term\' ),
),
),
);
} else { // On main shop page
$args = array(
\'post_type\' => \'product\',
\'orderby\' => \'date\',
\'order\' => \'DESC\',
\'posts_per_page\' => $per_page,
\'paged\' => get_query_var( \'paged\' ),
);
}
// Set the query
$products = new WP_Query( $args );
// Standard loop
if ( $products->have_posts() ) :
while ( $products->have_posts() ) : $products->the_post();
// Your new HTML markup goes here
?>
<div class="col-xs-12 col-md-3">
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
<?php // more stuff here... markup, classes etc. ?>
</div>
<?php
endwhile;
wp_reset_postdata();
endif;
} else { // If not on archive page (cart, checkout, etc), do normal operations
woocommerce_content();
}
?>
</main>
</div>
</div>
</div>
<?php get_footer(); ?>
我希望这能让你了解它的工作原理。您还可以查看底部的WC后端系统页面。在那里,它将为您显示WC使用的模板。