Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Woocommerce-删除“添加到购物车”按钮功能并更改按钮文本_Php_Wordpress_Woocommerce_Cart_Product - Fatal编程技术网

Php Woocommerce-删除“添加到购物车”按钮功能并更改按钮文本

Php Woocommerce-删除“添加到购物车”按钮功能并更改按钮文本,php,wordpress,woocommerce,cart,product,Php,Wordpress,Woocommerce,Cart,Product,在WooCommerce中,我想替换“添加到购物车”按钮,并将其更改为“阅读更多”,但仅适用于某些产品类别 我已经尝试过使用很多不同的代码片段来实现这个目的,但是似乎没有什么能给我想要的结果 原因是我想使用我商店的某些部分作为产品目录,显示商品及其价格,但不允许用户购买 有人知道这是如何实现的吗 任何帮助都将不胜感激 以下是一些功能,它们将仅取代某些已定义产品类别的: 在商店和档案页面:按钮添加到购物车的产品链接 在单个产品页面中:通过自定义按钮添加到购物车按钮和数量 您必须在该功能中定义: 阵

在WooCommerce中,我想替换“添加到购物车”按钮,并将其更改为“阅读更多”,但仅适用于某些产品类别

我已经尝试过使用很多不同的代码片段来实现这个目的,但是似乎没有什么能给我想要的结果

原因是我想使用我商店的某些部分作为产品目录,显示商品及其价格,但不允许用户购买

有人知道这是如何实现的吗


任何帮助都将不胜感激

以下是一些功能,它们将仅取代某些已定义产品类别的

  • 在商店和档案页面:按钮添加到购物车的产品链接
  • 在单个产品页面中:通过自定义按钮添加到购物车按钮和数量
  • 您必须在该功能中定义:

  • 阵列中的产品类别(2次)
  • “阅读更多”按钮产品链接(用于简单的产品页面)
  • 代码如下:

    // Replacing the button add to cart by a link to the product in Shop and archives pages
    add_filter( 'woocommerce_loop_add_to_cart_link', 'replacing_conditionally_loop_add_to_cart_button', 10, 2 );
    function replacing_conditionally_loop_add_to_cart_button( $button, $product  ) {
        // Set HERE your product categories in the array
        $categories = array( 't-shirts', 'gloves' );
    
        if( has_term( $categories, 'product_cat', $product->get_id() ) ){
            $button_text = __( "View product", "woocommerce" );
            $button = '<a class="button" href="' . $product->get_permalink() . '">' . $button_text . '</a>';
        }
        return $button;
    }
    
    
    // Button replacement function for Single product pages (SET the link below)
    function custom_button_read_more( $product_link ){
        global $product;
    
        // Set HERE your product link
        $product_link = home_url( '/some-link-to-define/' );
    
        $button_text = __('Read more', 'woocommerce');
        echo '<a href="'.$product_link.'" class="button">'.$button_text.'</a>';
    }
    
    
    // replacing add to cart button and quantities by your custom button in Single product pages
    add_action( 'woocommerce_single_product_summary', 'replacing_conditionally_template_single_add_to_cart', 1, 0 );
    function replacing_conditionally_template_single_add_to_cart() {
        global $product;
    
        // Set HERE your product categories in the array
        $categories = array( 't-shirts', 'gloves' );
    
        if( has_term( $categories, 'product_cat', $product->get_id()) ){
    
            // For variable product types
            if( $product->is_type( 'variable' ) ){
                // Removing add to cart button and quantities
                remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 );
    
                // The button replacement
                add_action( 'woocommerce_single_variation', 'custom_button_read_more', 20 );
            }
            else // For all other product types
            {
                // Removing add to cart button and quantities
                remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
    
                // The button replacement
                add_action( 'woocommerce_single_product_summary', 'custom_button_read_more', 30 );
            }
        }
    }
    
    //将“添加到购物车”按钮替换为指向“商店和归档”页面中产品的链接
    添加过滤器('woocommerce\u loop\u add\u to\u cart\u link','replacement\u conditionally\u loop\u add\u to\u cart\u button',10,2);
    函数有条件地替换循环添加到购物车按钮($button,$product){
    //在此设置阵列中的产品类别
    $categories=数组(‘t恤’、‘手套’);
    if(有_术语($categories,$product\u cat',$product->get\u id()){
    $button_text=uuuuuuuuuuuuu(“查看产品”、“woocommerce”);
    $button='';
    }
    返回$按钮;
    }
    //单个产品页面的按钮更换功能(设置下面的链接)
    功能自定义按钮读取更多($product链接){
    全球$产品;
    //在此处设置产品链接
    $product_link=home_url('/some link to define/');
    $button_text=uuuu('Read more','woocommerce');
    回声';
    }
    //将“添加到购物车”按钮和“数量”替换为单个产品页面中的自定义按钮
    添加操作('woocommerce\u single\u product\u summary'、'Replacement\u Conditional\u template\u single\u add\u to\u cart',1,0);
    函数有条件地替换模板单个添加到购物车(){
    全球$产品;
    //在此设置阵列中的产品类别
    $categories=数组(‘t恤’、‘手套’);
    if(有_术语($categories,$product\u cat',$product->get\u id()){
    //用于可变产品类型
    如果($product->is_类型('variable')){
    //删除“添加到购物车”按钮和数量
    删除操作('woocommerce\u single\u variation'、'woocommerce\u single\u variation\u add\u to\u cart\u button',20);
    //按钮的更换
    添加操作('woocommerce\u single\u variation'、'custom\u button\u read\u more',20);
    }
    else//适用于所有其他产品类型
    {
    //删除“添加到购物车”按钮和数量
    删除操作('woocommerce\u single\u product\u summary'、'woocommerce\u template\u single\u add\u to\u cart',30);
    //按钮的更换
    添加操作('woocommerce\u single\u product\u summary'、'custom\u button\u read\u more',30);
    }
    }
    }
    
    代码位于活动子主题(或主题)的function.php文件或任何插件文件中

    所有代码都在Woocommerce 3+上进行了测试,可以正常工作



    类似的回答:

    以下是一些功能,它们将仅取代某些已定义产品类别的

  • 在商店和档案页面:按钮添加到购物车的产品链接
  • 在单个产品页面中:通过自定义按钮添加到购物车按钮和数量
  • 您必须在该功能中定义:

  • 阵列中的产品类别(2次)
  • “阅读更多”按钮产品链接(用于简单的产品页面)
  • 代码如下:

    // Replacing the button add to cart by a link to the product in Shop and archives pages
    add_filter( 'woocommerce_loop_add_to_cart_link', 'replacing_conditionally_loop_add_to_cart_button', 10, 2 );
    function replacing_conditionally_loop_add_to_cart_button( $button, $product  ) {
        // Set HERE your product categories in the array
        $categories = array( 't-shirts', 'gloves' );
    
        if( has_term( $categories, 'product_cat', $product->get_id() ) ){
            $button_text = __( "View product", "woocommerce" );
            $button = '<a class="button" href="' . $product->get_permalink() . '">' . $button_text . '</a>';
        }
        return $button;
    }
    
    
    // Button replacement function for Single product pages (SET the link below)
    function custom_button_read_more( $product_link ){
        global $product;
    
        // Set HERE your product link
        $product_link = home_url( '/some-link-to-define/' );
    
        $button_text = __('Read more', 'woocommerce');
        echo '<a href="'.$product_link.'" class="button">'.$button_text.'</a>';
    }
    
    
    // replacing add to cart button and quantities by your custom button in Single product pages
    add_action( 'woocommerce_single_product_summary', 'replacing_conditionally_template_single_add_to_cart', 1, 0 );
    function replacing_conditionally_template_single_add_to_cart() {
        global $product;
    
        // Set HERE your product categories in the array
        $categories = array( 't-shirts', 'gloves' );
    
        if( has_term( $categories, 'product_cat', $product->get_id()) ){
    
            // For variable product types
            if( $product->is_type( 'variable' ) ){
                // Removing add to cart button and quantities
                remove_action( 'woocommerce_single_variation', 'woocommerce_single_variation_add_to_cart_button', 20 );
    
                // The button replacement
                add_action( 'woocommerce_single_variation', 'custom_button_read_more', 20 );
            }
            else // For all other product types
            {
                // Removing add to cart button and quantities
                remove_action( 'woocommerce_single_product_summary', 'woocommerce_template_single_add_to_cart', 30 );
    
                // The button replacement
                add_action( 'woocommerce_single_product_summary', 'custom_button_read_more', 30 );
            }
        }
    }
    
    //将“添加到购物车”按钮替换为指向“商店和归档”页面中产品的链接
    添加过滤器('woocommerce\u loop\u add\u to\u cart\u link','replacement\u conditionally\u loop\u add\u to\u cart\u button',10,2);
    函数有条件地替换循环添加到购物车按钮($button,$product){
    //在此设置阵列中的产品类别
    $categories=数组(‘t恤’、‘手套’);
    if(有_术语($categories,$product\u cat',$product->get\u id()){
    $button_text=uuuuuuuuuuuuu(“查看产品”、“woocommerce”);
    $button='';
    }
    返回$按钮;
    }
    //单个产品页面的按钮更换功能(设置下面的链接)
    功能自定义按钮读取更多($product链接){
    全球$产品;
    //在此处设置产品链接
    $product_link=home_url('/some link to define/');
    $button_text=uuuu('Read more','woocommerce');
    回声';
    }
    //将“添加到购物车”按钮和“数量”替换为单个产品页面中的自定义按钮
    添加操作('woocommerce\u single\u product\u summary'、'Replacement\u Conditional\u template\u single\u add\u to\u cart',1,0);
    函数有条件地替换模板单个添加到购物车(){
    全球$产品;
    //在此设置阵列中的产品类别
    $categories=数组(‘t恤’、‘手套’);
    if(有_术语($categories,$product\u cat',$product->get\u id()){
    //用于可变产品类型
    如果($product->is_类型('variable')){
    //删除“添加到购物车”按钮和数量
    删除操作('woocommerce\u single\u variation'、'woocommerce\u single\u variation\u add\u to\u cart\u button',20);
    //按钮的更换
    添加操作('woocommerce\u single\u variation'、'custom\u button\u read\u more',20);
    }
    else//适用于所有其他产品类型
    {
    //删除“添加到购物车”按钮和数量
    删除操作('woocommerce\u single\u product\u summary'、'woocommerce\u template\u single\u add\u to\u cart',30);
    //按钮的更换
    添加操作('woocommerce\u single\u product\u summary'、'custom\u button\u read\u more',30);