0

I followed THIS tutorial to change the coupon field and button text, using the following script in a Code Snippet:

/**
 * Change the CartFlows Coupon Field text and Button text.
 *
 * @param array $coupon_field array of field strings/texts.
 * @return array
 */
add_filter( 'cartflows_coupon_field_options', 'change_cartFlows_coupon_field_strings', 10, 1 );

function change_cartFlows_coupon_field_strings( $coupon_field ){

    $coupon_field = array(
        'field_text'  => __( 'Coupon Code', 'cartflows' ), // Coupon input field text/placeholder.
        'button_text' => __( 'Apply', 'cartflows' ), // Apply coupon button text.
        'class'       => '', // Coupon input field class.
    );

    return $coupon_field; // Returning the modified data with new strings.
}

This script worked as expected. However, the coupon codes are collapsible when clicking on "Have a coupon?". To change the title "Have a coupon?" to another language, I attempted to use this code:

// Attempted script to change the coupon title
function cartFlows_rename_coupon_message_on_checkout() {
    return 'Have a Promo Code?' . ' <a href="#" class="showcoupon">' . __( 'Click here to enter your code', 'cartFlows' ) . '</a>';
}
add_filter( 'cartFlows_checkout_coupon_message', 'cartFlows_rename_coupon_message_on_checkout' );

However, this script doesn't seem to work in this scenario. I'm unable to determine the cause of this issue. Below, I'm including a snippet of the HTML for reference:

<div class="wcf-custom-coupon-field wcf-hide-field" id="wcf_custom_coupon_field"><a href="#" id="wcf_optimized_wcf_custom_coupon_field"><div class="dashicons dashicons-arrow-right"></div> Have a coupon?</a>
            <div class="wcf-coupon-col-1">
                <span>
                    <input type="text" name="coupon_code" class="input-text wcf-coupon-code-input" placeholder="Coupon code" id="coupon_code" value="">
                </span>
            </div>
            <div class="wcf-coupon-col-2">
                <span>
                    <button type="button" class="button wcf-submit-coupon wcf-btn-small" name="apply_coupon" value="Apply">Apply</button>
                </span>
            </div>
        </div>

1 Answer 1

1

There is no 'cartFlows_checkout_coupon_message' filter in CartFlows.

I think you meant to use the 'woocommerce_checkout_coupon_message' filter

add_filter( 'woocommerce_checkout_coupon_message', 'cartFlows_rename_coupon_message_on_checkout' );

function cartFlows_rename_coupon_message_on_checkout( $html ){

    return 'Have a Promo Code?' . ' <a href="#" class="showcoupon">' . __( 'Click here to enter your code', 'cartFlows' ) . '</a>';

}
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.