我想在WooCommerce的产品模板上移动我的缩略图,将它们放在大产品图片旁边,价格下方并添加到购物车按钮。 (作为标准,它们直接位于大型产品图片下方)
模板似乎使用了钩子,我之前没有尝试过使用过。我找到了一个'content-single-product.php'似乎可以做的事情,但我找不到该文件中缩略图的任何内容。
有人能指出我正确的方向吗?
谢谢!
答案 0 :(得分:5)
首先,请确保在此文件夹结构中覆盖主题目录中的WooCommerce模板:/ woocommerce / templates /(即yourtheme / woocommerce / templates /)。这样,如果Woo有更新,您的自定义代码将不会被覆盖。
我对此并非100%肯定,但通常使用Woo模板覆盖,这应该会让你走得很远。
缩略图实际上非常深。
他们在这里:templates/single-product/product-thumbnails.php
它在第43行加载:woocommerce / templates / single-product / product-image.php
这里加载了product-image.php部分:
woocommerce / templates / content-single-product.php
" woocommerce_before_single_product_summary"
因此,您需要将其从product-image.php的第43行中删除,然后将其放入" woocommerce_single_product_summary"部分。您应该尝试将此操作添加到您自己的自定义函数文件中(显然将其删除 - 操作 - 从现在开始)
add_action( 'woocommerce_product_thumbnails', 'woocommerce_show_product_thumbnails', 20 );
并改为
add_action('woocommerce_after_single_product_summary','woocommerce_show_product_thumbnails', 20 );
此处引用了动作列表:
woocommerce / includes / wc-template-hooks.php
订单已开启
woocommerce / templates / content-single-product.php
答案 1 :(得分:1)
正如Woocommerce建议你将任何覆盖放在/ your-theme-folder / woocommerce /下的新文件夹中。对于我来说,This就是我对“框架”的看法。是我主题的名称。
现在,在/your-theme-folder/woocommerce/single-product/product-image.php下我注释掉原来的缩略图钩子。
<?php //do_action( 'woocommerce_product_thumbnails' ); ?>
接下来,我在woocommerce_single_product_summary hook中的content-single-product.php文件中的/ your-theme-folder / woocommerce /下的模板中添加了一个do_action。
<div class="summary entry-summary">
<?php
/**
* woocommerce_single_product_summary hook
*
* @hooked woocommerce_template_single_title - 5
* @hooked woocommerce_template_single_rating - 10
* @hooked woocommerce_template_single_price - 10
* @hooked woocommerce_template_single_excerpt - 20
* @hooked woocommerce_template_single_add_to_cart - 30
* @hooked woocommerce_template_single_meta - 40
* @hooked woocommerce_template_single_sharing - 50
*/
do_action( 'woocommerce_single_product_summary' );
do_action( 'woocommerce_product_thumbnails' );
?>
</div><!-- .summary -->
现在,您应该在div中看到缩略图,其中包含类摘要和条目摘要。