Change the “Quantity” text in the woocommerce cart page when 2 products from different categories











up vote
1
down vote

favorite












So i'll try to be as specific as possible,
I have 2 different categories on my woocommerce, each category has a different label:



1.Instead of "quantity" -> "LABEL1".



2.Instead of "quantity" -> "LABEL2".



I've done this by modifying the quantity-input.php :



if (is_page('cart') || is_cart()) {
// If it's the cart page do this
foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) {
// If Cart has category "CATEGORYNAME" do this
if (has_term('CATEGORYNAME', 'product_cat', $cart_item['product_id'])) {
esc_html_e('LABEL1', 'woocommerce');
} else {
esc_html_e('LABEL2', 'woocommerce');
}
}
}


So this works when the clients only adds products from one category , but when he adds a product from the other category i get LABEL1LABEL2.



Shouldn't the foreach loop , loop for through the categories and give me a different label?



I've been searching but i can't find a solution for this specific thing.










share|improve this question






















  • Do you just need to return labels based on category wise ?
    – Sudharshan Nair
    Nov 19 at 13:08












  • Yes! there are multiple categories , but only 1 of them has a different label.
    – Simo
    Nov 19 at 13:19















up vote
1
down vote

favorite












So i'll try to be as specific as possible,
I have 2 different categories on my woocommerce, each category has a different label:



1.Instead of "quantity" -> "LABEL1".



2.Instead of "quantity" -> "LABEL2".



I've done this by modifying the quantity-input.php :



if (is_page('cart') || is_cart()) {
// If it's the cart page do this
foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) {
// If Cart has category "CATEGORYNAME" do this
if (has_term('CATEGORYNAME', 'product_cat', $cart_item['product_id'])) {
esc_html_e('LABEL1', 'woocommerce');
} else {
esc_html_e('LABEL2', 'woocommerce');
}
}
}


So this works when the clients only adds products from one category , but when he adds a product from the other category i get LABEL1LABEL2.



Shouldn't the foreach loop , loop for through the categories and give me a different label?



I've been searching but i can't find a solution for this specific thing.










share|improve this question






















  • Do you just need to return labels based on category wise ?
    – Sudharshan Nair
    Nov 19 at 13:08












  • Yes! there are multiple categories , but only 1 of them has a different label.
    – Simo
    Nov 19 at 13:19













up vote
1
down vote

favorite









up vote
1
down vote

favorite











So i'll try to be as specific as possible,
I have 2 different categories on my woocommerce, each category has a different label:



1.Instead of "quantity" -> "LABEL1".



2.Instead of "quantity" -> "LABEL2".



I've done this by modifying the quantity-input.php :



if (is_page('cart') || is_cart()) {
// If it's the cart page do this
foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) {
// If Cart has category "CATEGORYNAME" do this
if (has_term('CATEGORYNAME', 'product_cat', $cart_item['product_id'])) {
esc_html_e('LABEL1', 'woocommerce');
} else {
esc_html_e('LABEL2', 'woocommerce');
}
}
}


So this works when the clients only adds products from one category , but when he adds a product from the other category i get LABEL1LABEL2.



Shouldn't the foreach loop , loop for through the categories and give me a different label?



I've been searching but i can't find a solution for this specific thing.










share|improve this question













So i'll try to be as specific as possible,
I have 2 different categories on my woocommerce, each category has a different label:



1.Instead of "quantity" -> "LABEL1".



2.Instead of "quantity" -> "LABEL2".



I've done this by modifying the quantity-input.php :



if (is_page('cart') || is_cart()) {
// If it's the cart page do this
foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) {
// If Cart has category "CATEGORYNAME" do this
if (has_term('CATEGORYNAME', 'product_cat', $cart_item['product_id'])) {
esc_html_e('LABEL1', 'woocommerce');
} else {
esc_html_e('LABEL2', 'woocommerce');
}
}
}


So this works when the clients only adds products from one category , but when he adds a product from the other category i get LABEL1LABEL2.



Shouldn't the foreach loop , loop for through the categories and give me a different label?



I've been searching but i can't find a solution for this specific thing.







php wordpress woocommerce






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 19 at 12:54









Simo

205




205












  • Do you just need to return labels based on category wise ?
    – Sudharshan Nair
    Nov 19 at 13:08












  • Yes! there are multiple categories , but only 1 of them has a different label.
    – Simo
    Nov 19 at 13:19


















  • Do you just need to return labels based on category wise ?
    – Sudharshan Nair
    Nov 19 at 13:08












  • Yes! there are multiple categories , but only 1 of them has a different label.
    – Simo
    Nov 19 at 13:19
















Do you just need to return labels based on category wise ?
– Sudharshan Nair
Nov 19 at 13:08






Do you just need to return labels based on category wise ?
– Sudharshan Nair
Nov 19 at 13:08














Yes! there are multiple categories , but only 1 of them has a different label.
– Simo
Nov 19 at 13:19




Yes! there are multiple categories , but only 1 of them has a different label.
– Simo
Nov 19 at 13:19












1 Answer
1






active

oldest

votes

















up vote
0
down vote













Alright i fixed this , i was wrong trying to loop in the quantity-input.php file ,



I fixed it by modifying the cart.php . Here is what i did:



echo apply_filters('woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item); 


//Add this after this line:



if ($_product->get_category_ids()[0] == 99) {
echo '<div>';
esc_html_e('LABEL1', 'woocommerce');
echo '</div>';
} else {
echo '<div>';
esc_html_e('LABEL2', 'woocommerce');
echo '</div>';
}


Thanks for the help!






share|improve this answer





















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














     

    draft saved


    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53375097%2fchange-the-quantity-text-in-the-woocommerce-cart-page-when-2-products-from-dif%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote













    Alright i fixed this , i was wrong trying to loop in the quantity-input.php file ,



    I fixed it by modifying the cart.php . Here is what i did:



    echo apply_filters('woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item); 


    //Add this after this line:



    if ($_product->get_category_ids()[0] == 99) {
    echo '<div>';
    esc_html_e('LABEL1', 'woocommerce');
    echo '</div>';
    } else {
    echo '<div>';
    esc_html_e('LABEL2', 'woocommerce');
    echo '</div>';
    }


    Thanks for the help!






    share|improve this answer

























      up vote
      0
      down vote













      Alright i fixed this , i was wrong trying to loop in the quantity-input.php file ,



      I fixed it by modifying the cart.php . Here is what i did:



      echo apply_filters('woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item); 


      //Add this after this line:



      if ($_product->get_category_ids()[0] == 99) {
      echo '<div>';
      esc_html_e('LABEL1', 'woocommerce');
      echo '</div>';
      } else {
      echo '<div>';
      esc_html_e('LABEL2', 'woocommerce');
      echo '</div>';
      }


      Thanks for the help!






      share|improve this answer























        up vote
        0
        down vote










        up vote
        0
        down vote









        Alright i fixed this , i was wrong trying to loop in the quantity-input.php file ,



        I fixed it by modifying the cart.php . Here is what i did:



        echo apply_filters('woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item); 


        //Add this after this line:



        if ($_product->get_category_ids()[0] == 99) {
        echo '<div>';
        esc_html_e('LABEL1', 'woocommerce');
        echo '</div>';
        } else {
        echo '<div>';
        esc_html_e('LABEL2', 'woocommerce');
        echo '</div>';
        }


        Thanks for the help!






        share|improve this answer












        Alright i fixed this , i was wrong trying to loop in the quantity-input.php file ,



        I fixed it by modifying the cart.php . Here is what i did:



        echo apply_filters('woocommerce_cart_item_quantity', $product_quantity, $cart_item_key, $cart_item); 


        //Add this after this line:



        if ($_product->get_category_ids()[0] == 99) {
        echo '<div>';
        esc_html_e('LABEL1', 'woocommerce');
        echo '</div>';
        } else {
        echo '<div>';
        esc_html_e('LABEL2', 'woocommerce');
        echo '</div>';
        }


        Thanks for the help!







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 20 at 13:23









        Simo

        205




        205






























             

            draft saved


            draft discarded



















































             


            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53375097%2fchange-the-quantity-text-in-the-woocommerce-cart-page-when-2-products-from-dif%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            404 Error Contact Form 7 ajax form submitting

            How to know if a Active Directory user can login interactively

            TypeError: fit_transform() missing 1 required positional argument: 'X'