wordpress - (T_ENDFOREACH) php error -
creating wordpress website , i'm getting following php error: parse error: syntax error, unexpected 'endforeach' (t_endforeach) in /home/soralmedia/public_html/wp-content/themes/soral media/woocommerce/myaccount/my-orders.php on line 98
here's code file:
<?php /** * orders * * shows recent orders on account page. * * template can overridden copying yourtheme/woocommerce/myaccount/my-orders.php. * * however, on occasion woocommerce need update template files , (the theme developer). * need copy new files theme maintain compatibility. try this. * little possible, happen. when occurs version of template file will. * bumped , readme list important changes. * * @see http://docs.woothemes.com/document/template-structure/ * @author woothemes * @package woocommerce/templates * @version 2.5.0 */ if ( ! defined( 'abspath' ) ) { exit; } $my_orders_columns = apply_filters( 'woocommerce_my_account_my_orders_columns', array( 'order-number' => esc_html__( 'order', 'burst' ), 'order-date' => esc_html__( 'date', 'burst' ), 'order-status' => esc_html__( 'status', 'burst' ), 'order-total' => esc_html__( 'total', 'burst' ), 'order-actions' => ' ', ) ); $customer_orders = get_posts( apply_filters( 'woocommerce_my_account_my_orders_query', array( 'numberposts' => $order_count, 'meta_key' => '_customer_user', 'meta_value' => get_current_user_id(), 'post_type' => wc_get_order_types( 'view-orders' ), 'post_status' => array_keys( wc_get_order_statuses() ) ) ) ); if ( $customer_orders ) : ?> <h2><?php echo apply_filters( 'woocommerce_my_account_my_orders_title', esc_html__( 'recent orders', 'burst' ) ); ?></h2> <table class="shop_table my_account_orders"> <thead> <tr> <?php foreach ( $my_orders_columns $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 ( $customer_orders $customer_order ) { $order = wc_get_order( $customer_order ); $item_count = $order->get_item_count(); ?> <tr class="order"> <?php foreach ( $my_orders_columns $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 esc_html($order->get_order_number()); ?> </a> <?php elseif ( 'order-date' === $column_id ) : ?> <time datetime="<?php echo esc_html(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 %s item', '%s %s items', $item_count, 'burst' ), $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' => esc_html__( 'pay', 'burst' ) ), 'view' => array( 'url' => $order->get_view_order_url(), 'name' => esc_html__( 'view', 'burst' ) ), 'cancel' => array( 'url' => $order->get_cancel_order_url( wc_get_page_permalink( 'myaccount' ) ), 'name' => esc_html__( 'cancel', 'burst' ) ) ); if ( in_array( $order->get_status(), apply_filters( 'woocommerce_valid_order_statuses_for_payment', array( 'pending', 'failed' ), $order ) ) ) { 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 $key => $action ) { echo '<a href="' . esc_url( $action['url'] ) . '" class="qbutton small ' . sanitize_html_class( $key ) . '">' . esc_html( $action['name'] ) . '</a>'; } } ?> <?php endif; ?> </td> <?php endforeach; ?> </tr> <?php endforeach; ?> </tbody> </table> <?php endif; ?>
as have use curly braces {
foreach of $customer_orders
array, close foreach braces instead of endforeach
foreach ( $customer_orders $customer_order ) { ... } // use braces foreach instead of endforeach;
use either of these 2 ways:
<? foreach ($array $arr): ?> ... <? endforeach; ?>
or
<? foreach ($array $arr){ ?> ... <? } ?>
dont combine them else through error.
Comments
Post a Comment