/** * Outputs a saved payment method's title based on the passed token. * @since 2.6.0 * @param WC_Payment_Token $token Payment Token * @return string Generated payment method title HTML */ public function saved_payment_method_title($token) { if ('CC' == $token->get_type() && is_callable(array($token, 'get_card_type'))) { $type = esc_html__(wc_get_credit_card_type_label($token->get_card_type()), 'woocommerce'); } else { if ('eCheck' === $token->get_type()) { $type = esc_html__('eCheck', 'woocommerce'); } } $type = apply_filters('wc_payment_gateway_form_saved_payment_method_title_type_html', $type, $token, $this); $title = $type; if (is_callable(array($token, 'get_last4'))) { $title .= ' ' . sprintf(esc_html__('ending in %s', 'woocommerce'), $token->get_last4()); } if (is_callable(array($token, 'get_expiry_month')) && is_callable(array($token, 'get_expiry_year'))) { $title .= ' ' . sprintf(esc_html__('(expires %s)', 'woocommerce'), $token->get_expiry_month() . '/' . substr($token->get_expiry_year(), 2)); } return apply_filters('wc_payment_gateway_form_saved_payment_method_title_html', $title, $token, $this); }
/** * Controls the output for credit cards on the my account page. * * @since 2.6 * @param array $item Individual list item from woocommerce_saved_payment_methods_list * @param WC_Payment_Token $payment_token The payment token associated with this method entry * @return array Filtered item */ function wc_get_account_saved_payment_methods_list_item_cc($item, $payment_token) { if ('cc' !== strtolower($payment_token->get_type())) { return $item; } $card_type = $payment_token->get_card_type(); $item['method']['last4'] = $payment_token->get_last4(); $item['method']['brand'] = !empty($card_type) ? ucfirst($card_type) : esc_html__('Credit Card', 'woocommerce'); $item['expires'] = $payment_token->get_expiry_month() . '/' . substr($payment_token->get_expiry_year(), -2); return $item; }