2016-01-20 20:13:17 +00:00
< ? php
/**
* Payment methods
*
* Shows customer payment methods on the account page .
*
* This template can be overridden by copying it to yourtheme / woocommerce / myaccount / payment - methods . php .
*
2016-02-16 16:11:50 +00:00
* HOWEVER , on occasion WooCommerce will need to update template files and you
* ( the theme developer ) will need to copy the new files to your theme to
* maintain compatibility . We try to do this as little as possible , but it does
* happen . When this occurs the version of the template file will be bumped and
* the readme will list any important changes .
2016-01-20 20:13:17 +00:00
*
2019-04-23 16:04:11 +00:00
* @ see https :// docs . woocommerce . com / document / template - structure /
2016-01-20 20:13:17 +00:00
* @ package WooCommerce / Templates
* @ version 2.6 . 0
*/
2019-04-23 16:04:11 +00:00
defined ( 'ABSPATH' ) || exit ;
2016-01-20 20:13:17 +00:00
$saved_methods = wc_get_customer_saved_methods_list ( get_current_user_id () );
$has_methods = ( bool ) $saved_methods ;
2016-02-16 19:48:04 +00:00
$types = wc_get_account_payment_methods_types ();
2016-01-20 20:13:17 +00:00
2016-06-06 11:05:37 +00:00
do_action ( 'woocommerce_before_account_payment_methods' , $has_methods ); ?>
2016-05-30 13:16:26 +00:00
2016-06-06 11:05:37 +00:00
< ? php if ( $has_methods ) : ?>
2016-01-20 20:13:17 +00:00
2016-06-06 11:05:37 +00:00
< table class = " woocommerce-MyAccount-paymentMethods shop_table shop_table_responsive account-payment-methods-table " >
< thead >
< tr >
< ? php foreach ( wc_get_account_payment_methods_columns () as $column_id => $column_name ) : ?>
< th class = " woocommerce-PaymentMethod woocommerce-PaymentMethod--<?php echo esc_attr( $column_id ); ?> payment-method-<?php echo esc_attr( $column_id ); ?> " >< span class = " nobr " >< ? php echo esc_html ( $column_name ); ?> </span></th>
< ? php endforeach ; ?>
</ tr >
</ thead >
2020-06-12 13:33:28 +00:00
< ? php foreach ( $saved_methods as $type => $methods ) : // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited ?>
2016-06-06 11:05:37 +00:00
< ? php foreach ( $methods as $method ) : ?>
2018-11-22 10:37:14 +00:00
< tr class = " payment-method<?php echo ! empty( $method['is_default'] ) ? ' default-payment-method' : ''; ?> " >
2016-01-20 20:13:17 +00:00
< ? php foreach ( wc_get_account_payment_methods_columns () as $column_id => $column_name ) : ?>
2016-06-06 11:05:37 +00:00
< td class = " woocommerce-PaymentMethod woocommerce-PaymentMethod--<?php echo esc_attr( $column_id ); ?> payment-method-<?php echo esc_attr( $column_id ); ?> " data - title = " <?php echo esc_attr( $column_name ); ?> " >
< ? php
if ( has_action ( 'woocommerce_account_payment_methods_column_' . $column_id ) ) {
do_action ( 'woocommerce_account_payment_methods_column_' . $column_id , $method );
2016-09-01 20:50:14 +00:00
} elseif ( 'method' === $column_id ) {
2016-09-02 01:12:22 +00:00
if ( ! empty ( $method [ 'method' ][ 'last4' ] ) ) {
2016-10-29 20:03:28 +00:00
/* translators: 1: credit card type 2: last 4 digits */
2019-04-23 15:15:05 +00:00
echo sprintf ( esc_html__ ( '%1$s ending in %2$s' , 'woocommerce' ), esc_html ( wc_get_credit_card_type_label ( $method [ 'method' ][ 'brand' ] ) ), esc_html ( $method [ 'method' ][ 'last4' ] ) );
2016-06-06 11:05:37 +00:00
} else {
echo esc_html ( wc_get_credit_card_type_label ( $method [ 'method' ][ 'brand' ] ) );
}
2016-09-01 20:50:14 +00:00
} elseif ( 'expires' === $column_id ) {
2016-06-06 11:05:37 +00:00
echo esc_html ( $method [ 'expires' ] );
2016-09-01 20:50:14 +00:00
} elseif ( 'actions' === $column_id ) {
2020-06-12 13:33:28 +00:00
foreach ( $method [ 'actions' ] as $key => $action ) { // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
2016-06-06 11:05:37 +00:00
echo '<a href="' . esc_url ( $action [ 'url' ] ) . '" class="button ' . sanitize_html_class ( $key ) . '">' . esc_html ( $action [ 'name' ] ) . '</a> ' ;
}
}
?>
</ td >
2016-01-20 20:13:17 +00:00
< ? php endforeach ; ?>
</ tr >
< ? php endforeach ; ?>
2016-06-06 11:05:37 +00:00
< ? php endforeach ; ?>
</ table >
2016-01-20 20:13:17 +00:00
2016-06-06 11:05:37 +00:00
< ? php else : ?>
2016-01-20 20:13:17 +00:00
2016-06-06 11:05:37 +00:00
< p class = " woocommerce-Message woocommerce-Message--info woocommerce-info " >< ? php esc_html_e ( 'No saved methods found.' , 'woocommerce' ); ?> </p>
2016-01-20 20:13:17 +00:00
2016-06-06 11:05:37 +00:00
< ? php endif ; ?>
2016-01-20 20:13:17 +00:00
2016-06-06 11:05:37 +00:00
< ? php do_action ( 'woocommerce_after_account_payment_methods' , $has_methods ); ?>
2016-01-20 20:13:17 +00:00
2017-11-01 17:13:01 +00:00
< ? php if ( WC () -> payment_gateways -> get_available_payment_gateways () ) : ?>
< a class = " button " href = " <?php echo esc_url( wc_get_endpoint_url( 'add-payment-method' ) ); ?> " >< ? php esc_html_e ( 'Add payment method' , 'woocommerce' ); ?> </a>
< ? php endif ; ?>