Repository Forums Support Expiry dates for WooCommerce PRO Hiding Expiry dates to customer cart but Not to admin

This topic contains 10 replies, has 3 voices, and was last updated by  Soft79 2 months, 2 weeks ago.

Viewing 11 posts - 1 through 11 (of 11 total)
  • Author
    Posts
  • #3831

    wan
    Participant

    Hi, I have just purchased expiry dates pro and wonder how if i would like to hide the expiry date from cart page or basically hide it from customer ?
    This expiry date would be useful for us to manage fifo of stock but to consumer it will make things more complicated.
    If i can hide it to them in cart page, packing list etc or have option to do this would be great.

    #3832

    Soft79
    Keymaster

    You can disable this on the page wp-admin > Products > Expiry Dates. It can be set for every individual type of expiry (e.g. Best before or Expiry date).

    #3845

    wan
    Participant

    Hi, I am able to hide it now in cart page for consumers but;

    I notice on orders there is still info on expiry which is good but if i can hide this on packing list is better so we just remain the record on our back end.
    having listed expiry date on packing list or invoice will trigger much deeper issue when a little mistake on picking the orders happen.

    This plugin is very good to remind date of expiry will be pleased if customer also do not see the date in their order email.

    #4895

    Hi,

    We have the same issue, we disable display of expiry date but we still have it on customer email.

    I’ve tried this, but no luck:

    add_filter( ‘woocommerce_order_item_get_formatted_meta_data’, ‘unset_specific_order_item_meta_data’, 10, 2);
    function unset_specific_order_item_meta_data($formatted_meta, $item){
    // Only on emails notifications
    if( is_admin() || is_wc_endpoint_url() )
    return $formatted_meta;

    foreach( $formatted_meta as $key => $meta ){
    if( in_array( $meta->key, array(‘_wcxd_expiry_date’) ) )
    unset($formatted_meta[$key]);
    }
    return $formatted_meta;
    }

    Can you help?

    Thanks.

    #4896

    Soft79
    Keymaster

    Yes, there is some work to do on the order meta handling.

    For now, try replacing the following line in your snippet:

    add_filter( ‘woocommerce_order_item_get_formatted_meta_data’, ‘unset_specific_order_item_meta_data’, 10, 2);

    by:

    add_filter( ‘woocommerce_order_item_get_formatted_meta_data’, ‘unset_specific_order_item_meta_data’, 20, 2);

    #4904

    Thank you it worked however wcxd_expiry_date suddenly popped up on clients emails, here is the full code to hide both expiry and wcxd:

    add_filter( ‘woocommerce_order_item_get_formatted_meta_data’, ‘unset_specific_order_item_meta_data’, 20, 2);
    function unset_specific_order_item_meta_data($formatted_meta, $item){
    // Only on emails notifications
    if( is_admin()/* || is_wc_endpoint_url() */)
    return $formatted_meta;

    foreach( $formatted_meta as $key => $meta ){
    if( in_array( $meta->key, array(‘wcxd_expiry_date’,’_wcxd_expiry_date’) ) )
    unset($formatted_meta[$key]);
    }
    return $formatted_meta;
    }

    #4908

    Soft79
    Keymaster

    Development version 1.3.0-dev.6 is available from your account page. This version respects the ‘display expiry date on order confirmation’-setting. You no longer need the PHP scripts mentioned above.

    Please let me know if there still are issues with this version.

    #4953

    Hi

    Can’t find the dev version on my account.

    We got new issue: the script doesn’t work on some emails. And for the ones that doesn’t work, the meta shown right now are 2, instead of 1, both showing the same value. E.g.:

    wcxd_expiry_date: May 15, 2019
    Expiry Date: May 15, 2019

    Here’s the function we’re using right now:

    add_filter( ‘woocommerce_order_item_get_formatted_meta_data’, ‘unset_specific_order_item_meta_data’, 20, 2);
    function unset_specific_order_item_meta_data($formatted_meta, $item){
    // Only on emails notifications
    if( is_admin() )
    return $formatted_meta;

    foreach( $formatted_meta as $key => $meta ){
    if( in_array( $meta->key, array(‘wcxd_expiry_date’,’_wcxd_expiry_date’) ) )
    unset($formatted_meta[$key]);
    }
    return $formatted_meta;
    }

    #4954

    Soft79
    Keymaster

    What is the order number of your purchase? I can’t find your license.

    #4955

    Here is the license for expiry dates : ****-********-********-********

    #4956

    Soft79
    Keymaster

    The payment of that order was unsuccesful. It has never been paid.

Viewing 11 posts - 1 through 11 (of 11 total)

You must be logged in to reply to this topic.