forked from woocommerce/woocommerce
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Created my account > orders template
- Loading branch information
1 parent
ad93747
commit 02e3c63
Showing
6 changed files
with
205 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,124 @@ | ||
<?php | ||
/** | ||
* Orders | ||
* | ||
* Shows orders on the account page. | ||
* | ||
* This template can be overridden by copying it to yourtheme/woocommerce/myaccount/orders.php. | ||
* | ||
* 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. | ||
* | ||
* @see http://docs.woothemes.com/document/template-structure/ | ||
* @author WooThemes | ||
* @package WooCommerce/Templates | ||
* @version 2.6.0 | ||
*/ | ||
|
||
if ( ! defined( 'ABSPATH' ) ) { | ||
exit; | ||
} | ||
|
||
$orders = new WP_Query( wc_get_account_orders_query_args() ); | ||
$current_page = isset( $_GET['orders-page'] ) ? absint( $_GET['orders-page'] ) : 1; | ||
|
||
wc_get_template( 'myaccount/navigation.php' ); ?> | ||
|
||
<div class="my-account-content"> | ||
<?php if ( $orders->have_posts() ) : ?> | ||
<table class="shop_table shop_table_responsive my_account_orders"> | ||
<thead> | ||
<tr> | ||
<?php foreach ( wc_get_account_orders_columns() as $column_id => $column_name ) : ?> | ||
<th class="<?php echo esc_attr( $column_id ); ?>"><span class="nobr"><?php echo esc_html( $column_name ); ?></span></th> | ||
<?php endforeach; ?> | ||
</tr> | ||
</thead> | ||
|
||
<tbody> | ||
<?php foreach ( $orders->posts as $customer_order ) : | ||
$order = wc_get_order( $customer_order ); | ||
$item_count = $order->get_item_count(); | ||
?> | ||
<tr class="order"> | ||
<?php foreach ( wc_get_account_orders_columns() as $column_id => $column_name ) : ?> | ||
<td class="<?php echo esc_attr( $column_id ); ?>" data-title="<?php echo esc_attr( $column_name ); ?>"> | ||
<?php if ( has_action( 'woocommerce_my_account_my_orders_column_' . $column_id ) ) : ?> | ||
<?php do_action( 'woocommerce_my_account_my_orders_column_' . $column_id, $order ); ?> | ||
|
||
<?php elseif ( 'order-number' === $column_id ) : ?> | ||
<a href="<?php echo esc_url( $order->get_view_order_url() ); ?>"> | ||
<?php echo _x( '#', 'hash before order number', 'woocommerce' ) . $order->get_order_number(); ?> | ||
</a> | ||
|
||
<?php elseif ( 'order-date' === $column_id ) : ?> | ||
<time datetime="<?php echo date( 'Y-m-d', strtotime( $order->order_date ) ); ?>" title="<?php echo esc_attr( strtotime( $order->order_date ) ); ?>"><?php echo date_i18n( get_option( 'date_format' ), strtotime( $order->order_date ) ); ?></time> | ||
|
||
<?php elseif ( 'order-status' === $column_id ) : ?> | ||
<?php echo wc_get_order_status_name( $order->get_status() ); ?> | ||
|
||
<?php elseif ( 'order-total' === $column_id ) : ?> | ||
<?php echo sprintf( _n( '%s for %s item', '%s for %s items', $item_count, 'woocommerce' ), $order->get_formatted_order_total(), $item_count ); ?> | ||
|
||
<?php elseif ( 'order-actions' === $column_id ) : ?> | ||
<?php | ||
$actions = array( | ||
'pay' => array( | ||
'url' => $order->get_checkout_payment_url(), | ||
'name' => __( 'Pay', 'woocommerce' ) | ||
), | ||
'view' => array( | ||
'url' => $order->get_view_order_url(), | ||
'name' => __( 'View', 'woocommerce' ) | ||
), | ||
'cancel' => array( | ||
'url' => $order->get_cancel_order_url( wc_get_page_permalink( 'myaccount' ) ), | ||
'name' => __( 'Cancel', 'woocommerce' ) | ||
) | ||
); | ||
|
||
if ( ! $order->needs_payment() ) { | ||
unset( $actions['pay'] ); | ||
} | ||
|
||
if ( ! in_array( $order->get_status(), apply_filters( 'woocommerce_valid_order_statuses_for_cancel', array( 'pending', 'failed' ), $order ) ) ) { | ||
unset( $actions['cancel'] ); | ||
} | ||
|
||
if ( $actions = apply_filters( 'woocommerce_my_account_my_orders_actions', $actions, $order ) ) { | ||
foreach ( $actions as $key => $action ) { | ||
echo '<a href="' . esc_url( $action['url'] ) . '" class="button ' . sanitize_html_class( $key ) . '">' . esc_html( $action['name'] ) . '</a>'; | ||
} | ||
} | ||
?> | ||
<?php endif; ?> | ||
</td> | ||
<?php endforeach; ?> | ||
</tr> | ||
<?php endforeach; ?> | ||
</tbody> | ||
</table> | ||
|
||
<?php if ( 1 < $orders->max_num_pages ) : ?> | ||
<div class="wc-account-orders-pagination"> | ||
<?php if ( 1 !== $current_page ) : ?> | ||
<a class="button" href="?orders-page=<?php echo esc_attr( $current_page - 1 ); ?>"><?php _e( 'Previous', 'woocommerce' ); ?></a> | ||
<?php endif; ?> | ||
|
||
<?php if ( $current_page !== intval( $orders->max_num_pages ) ) : ?> | ||
<a class="button" href="?orders-page=<?php echo esc_attr( $current_page + 1 ); ?>"><?php _e( 'Next', 'woocommerce' ); ?></a> | ||
<?php endif; ?> | ||
</div> | ||
<?php endif; ?> | ||
|
||
<?php else : ?> | ||
<div class="woocommerce-info"> | ||
<a class="button" href="<?php echo esc_url( apply_filters( 'woocommerce_return_to_shop_redirect', wc_get_page_permalink( 'shop' ) ) ); ?>"> | ||
<?php _e( 'Go Shop', 'woocommerce' ) ?> | ||
</a> | ||
<?php _e( 'No order has been made yet.', 'woocommerce' ); ?> | ||
</div> | ||
<?php endif; ?> | ||
</div> |