添加Woocommerce添加至购物车按钮至相关产品和产品列表

时间:2013-02-23 01:58:49

标签: wordpress wordpress-plugin cart woocommerce

我在为WooCommerce添加额外的东西时遇到了一些困难,因为我还是新手。我正在尝试为相关产品和产品列表添加“添加到购物车”按钮。

正在执行代码并被卡在下面。

<a href="<?php the_permalink(); ?>">

        <?php
            /**
             * woocommerce_before_shop_loop_item_title hook
             *
             * @hooked woocommerce_show_product_loop_sale_flash - 10
             * @hooked woocommerce_template_loop_product_thumbnail - 10
             */
            do_action( 'woocommerce_before_shop_loop_item_title' );
        ?>

        <h3><?php the_title(); ?></h3>

        <?php
            /**
             * woocommerce_after_shop_loop_item_title hook
             *
             * @hooked woocommerce_template_loop_price - 10
             */
            do_action( 'woocommerce_after_shop_loop_item_title' );
        ?>

    </a>

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

希望有人可以指导我如何添加按钮。提前谢谢。

5 个答案:

答案 0 :(得分:12)

解释每个do_action都在woocommerce-hooks.php中,并指向woocommerce-template.php中的一个Function

创建缩略图:

Function Name: woocommerce_template_loop_product_thumbnail()

do_action( 'woocommerce_before_shop_loop_item_title' );

提供价格:

Function Name: woocommerce_template_loop_price()

do_action( 'woocommerce_after_shop_loop_item_title' );

添加到购物车按钮:

Function Name: woocommerce_template_loop_add_to_cart()

do_action( 'woocommerce_after_shop_loop_item' );

答案 1 :(得分:8)

在wordpress文件夹中递归搜索woocommerce_template_loop_add_to_cart

默认情况下,WooCommerce将其挂钩到wp-content \ plugins \ woocommerce \ woocommerce-hooks.php中的woocommerce_after_shop_loop_item

add_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );

我安装的主题Mystile,在wp-content \ themes \ _melictile \ includes \ theme-woocommerce.php

中删除了此挂钩
// Remove add to cart button on archives
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10);

一旦我评论出来,就会出现“添加到购物车”按钮。

答案 2 :(得分:4)

添加&#34;添加到购物车&#34;按钮到产品列表页面,我个人复制了:

wp-content/plugins/woocommerce/templates/content-product.php

进入:

wp-content/themes/myChildTemplate/woocommerce/content-product.php
然后我替换了:

        do_action( 'woocommerce_after_shop_loop_item_title' );
    ?>

</a>

人:

        do_action( 'woocommerce_after_shop_loop_item_title' );
    ?>

</a>
    <?php do_action('woocommerce_simple_add_to_cart'); ?>

答案 3 :(得分:2)

对于遇到此问题的人来说,你也可以尝试使用这个钩子让它运转起来......

// Add add to cart button on archive page products
add_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_add_to_cart', 10 );

答案 4 :(得分:1)

在ElegantTheme wordpress主题(Divi)上使用WooCommerce,我将这一行添加到functions.php中:

add_action( 'woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_add_to_cart', 10 );

它添加了一个&#34;添加到购物车&#34;标题和价格之后的按钮(即每个产品一个&#39;添加到购物车&#39;按钮)