首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >WooCommerce在添加到购物车按钮上显示价格

WooCommerce在添加到购物车按钮上显示价格
EN

Stack Overflow用户
提问于 2014-07-28 22:32:56
回答 3查看 6.5K关注 0票数 3

我正在尝试将价格添加到循环中的add to cart按钮。

100美元添加到购物车,而不是添加到购物车

add_to_cart.php模板:

代码语言:javascript
复制
echo apply_filters( 'woocommerce_loop_add_to_cart_link',
    sprintf( '<a href="%s" rel="nofollow" data-product_id="%s" data-product_sku="%s" class="tiny button %s product_type_%s">%s</a>',
        esc_url( $product->add_to_cart_url() ),
        esc_attr( $product->id ),
        esc_attr( $product->get_sku() ),
        $product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button' : '',
        esc_attr( $product->product_type ),
        esc_html( $product->add_to_cart_text() )
    ),
$product );

price.php模板:

代码语言:javascript
复制
<?php if ( $price_html = $product->get_price_html() ) : ?>
    <span class="price"><?php echo $price_html; ?></span>
<?php endif; ?>

我如何将这两者结合起来?在网上找不到任何东西。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-07-28 22:51:06

这应该是可行的:修改add_to_cart.php文件以

代码语言:javascript
复制
echo apply_filters( 'woocommerce_loop_add_to_cart_link',
sprintf( '<a href="%s" rel="nofollow" data-product_id="%s" data-product_sku="%s" class="button %s product_type_%s">%s %s</a>',
    esc_url( $product->add_to_cart_url() ),
    esc_attr( $product->id ),
    esc_attr( $product->get_sku() ),
    $product->is_purchasable() ? 'add_to_cart_button' : '',
    esc_attr( $product->product_type ),
    $product->get_price_html(),
    esc_html( $product->add_to_cart_text() )
),
$product );

价格将显示在“添加到购物车”文本的前面。

编辑:您应该注意到,更新woocommerce插件将撤消该操作以及您对任何文件所做的任何其他修改。

票数 6
EN

Stack Overflow用户

发布于 2017-07-11 01:20:50

WooCommerce 3.1.0更新了添加到购物车按钮的功能

代码语言:javascript
复制
apply_filters( 'woocommerce_loop_add_to_cart_link',
sprintf( '<li><a href="%s" rel="nofollow" data-product_id="%s"
    data-product_sku="%s" class="btn-filled cart add-to-cart %s
    product_type_%s"><i class="fa fa-shopping-cart" ></i></a></li>',
    esc_url( $product->add_to_cart_url() ),
    esc_attr( isset( $quantity ) ? $quantity : 1 ),
    esc_attr( $product->get_id() ),
    esc_attr( $product->get_sku() ),
    esc_attr( isset( $class ) ? $class : 'button' ),
    esc_html( $product->add_to_cart_text() )
),
$product ); 
票数 3
EN

Stack Overflow用户

发布于 2019-05-14 03:12:21

如果你想在未来的Woocommerce升级中保持(某种程度上)安全,那就关注the official safe way to do it (谢谢Felix)。

add-to-cart.php复制到名为/woocommerce的主题中的目录中,保持相同的文件结构,但删除/templates/子目录。

示例:要覆盖管理员订单通知,请将:wp-content/plugins/woocommerce/templates/emails/admin-new-order.php复制到wp-content/themes/yourtheme/woocommerce/emails/admin-new-order.php

以下是Woocommerce 3.3.0的更新文件:

代码语言:javascript
复制
<?php
/**
 * Loop Add to Cart
 *
 * This template can be overridden by copying it to yourtheme/woocommerce/loop/add-to-cart.php.
 *
 * HOWEVER, on occasion WooCommerce will need to update template files and you
 * (the theme developer) will need to copy the new files to your theme to
 * maintain compatibility. We try to do this as little as possible, but it does
 * happen. When this occurs the version of the template file will be bumped and
 * the readme will list any important changes.
 *
 * @see         https://docs.woocommerce.com/document/template-structure/
 * @author      WooThemes
 * @package     WooCommerce/Templates
 * @version     3.3.0
 */
if ( ! defined( 'ABSPATH' ) ) {
    exit;
}
global $product;
echo apply_filters( 'woocommerce_loop_add_to_cart_link', // WPCS: XSS ok.
    sprintf( '<a href="%s" data-quantity="%s" class="%s" %s><span style="color:#bb0d00;">%s</span> &nbsp;&nbsp;<span style="color:#999;">|</span>&nbsp;&nbsp; %s</a>',
        esc_url( $product->add_to_cart_url() ),
        esc_attr( isset( $args['quantity'] ) ? $args['quantity'] : 1 ),
        esc_attr( isset( $args['class'] ) ? $args['class'] : 'button' ),
        isset( $args['attributes'] ) ? wc_implode_html_attributes( $args['attributes'] ) : '',
        $product->get_price_html(),
        esc_html( $product->add_to_cart_text() )
    ),
$product, $args );
?>

当然,设置按钮的样式或修改其内容完全由您决定,并不限于显示产品价格。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24997599

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档