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

use*_*141 5 wordpress cart wordpress-plugin 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' ); ?>  
Run Code Online (Sandbox Code Playgroud)

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

Rob*_*Lee 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' );
Run Code Online (Sandbox Code Playgroud)

提供价格:

Function Name: woocommerce_template_loop_price()

do_action( 'woocommerce_after_shop_loop_item_title' );
Run Code Online (Sandbox Code Playgroud)

加入购物车按钮:

Function Name: woocommerce_template_loop_add_to_cart()

do_action( 'woocommerce_after_shop_loop_item' );
Run Code Online (Sandbox Code Playgroud)


小智 8

woocommerce_template_loop_add_to_cart在wordpress文件夹中递归搜索.

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

add_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart', 10 );
Run Code Online (Sandbox Code Playgroud)

我安装的主题Mystile在wp-content\themes\mystile\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);
Run Code Online (Sandbox Code Playgroud)

一旦我评论出来,就会出现"添加到购物车"按钮.


Ala*_*blo 5

为了将“添加到购物车”按钮添加到产品列表页面,我亲自复制了:

wp-content/plugins/woocommerce/templates/content-product.php
Run Code Online (Sandbox Code Playgroud)

进入 :

wp-content/themes/myChildTemplate/woocommerce/content-product.php
Run Code Online (Sandbox Code Playgroud)

然后我替换:

        do_action( 'woocommerce_after_shop_loop_item_title' );
    ?>

</a>
Run Code Online (Sandbox Code Playgroud)

经过:

        do_action( 'woocommerce_after_shop_loop_item_title' );
    ?>

</a>
    <?php do_action('woocommerce_simple_add_to_cart'); ?>
Run Code Online (Sandbox Code Playgroud)