='); } function before_container() { global $post; global $wp_query; if (is_shop()) { $pageID = get_option('woocommerce_shop_page_id'); } elseif (class_exists('Woocommerce') && (is_product_category() || is_product_tag())) { $pageID = ''; } else { $pageID = $post->ID; } $custom_fields = get_post_custom_values('_wp_page_template', $pageID); if (is_array($custom_fields) && !empty($custom_fields)) { $page_template = $custom_fields[0]; } else { $page_template = ''; } $evolve_layout = evolve_get_option('evl_layout', '2cl'); $evolve_post_layout = evolve_get_option('evl_post_layout', 'two'); $evolve_opt1_width_content = evolve_get_option('evl_opt1_width_content', '8'); $evolve_opt2_width_content = evolve_get_option('evl_opt2_width_content', '6'); $layout_css = ''; echo'
'; } function shop_title() { return false; } function after_container() { echo '
'; } function add_sidebar_2() { global $wp_query, $post; if (is_shop()) { $pageID = get_option('woocommerce_shop_page_id'); } elseif (class_exists('Woocommerce') && (is_product_category() || is_product_tag())) { $pageID = ''; } else { $pageID = $post->ID; } $get_sidebar = false; $evolve_layout = evolve_get_option('evl_layout', '2cl'); $evolve_opt2_width_sidebar2 = evolve_get_option('evl_opt2_width_sidebar2', '3'); if ($evolve_layout == "3cm" || $evolve_layout == "3cl" || $evolve_layout == "3cr") { $get_sidebar = true; } $sidebar_css = ''; if ($get_sidebar) { //get_sidebar('2'); if (class_exists('Woocommerce')) { if (is_cart() || is_checkout() || is_account_page() || (get_option('woocommerce_thanks_page_id') && is_page(get_option('woocommerce_thanks_page_id')))) { $sidebar_css = ''; } } echo '
'; wp_reset_query(); if (dynamic_sidebar('sidebar-2')) : endif; echo '
'; } } function add_sidebar() { global $post; if (is_shop()) { $pageID = get_option('woocommerce_shop_page_id'); } elseif (class_exists('Woocommerce') && (is_product_category() || is_product_tag())) { $pageID = ''; } else { $pageID = $post->ID; } $evolve_layout = evolve_get_option('evl_layout', '2cl'); $evolve_opt1_width_sidebar1 = evolve_get_option('evl_opt1_width_sidebar1', '4'); $evolve_opt2_width_sidebar1 = evolve_get_option('evl_opt2_width_sidebar1', '3'); $sidebar_css = ''; if (class_exists('Woocommerce')) { if (is_cart() || is_checkout() || is_account_page() || (get_option('woocommerce_thanks_page_id') && is_page(get_option('woocommerce_thanks_page_id')))) { $sidebar_css = ''; } } echo '
'; wp_reset_query(); if (!dynamic_sidebar('sidebar-1')) : endif; echo '
'; } function before_shop_item_buttons() { echo '
'; } function after_shop_item_buttons() { echo '
'; } function add_product_border() { echo '
'; } function shop_breadcrumb() { $evolve_breadcrumbs = evolve_get_option('evl_breadcrumbs', '1'); $evolve_pagetitlebar_layout = evolve_get_option('evl_pagetitlebar_layout', '0'); if ($evolve_breadcrumbs == "1" && $evolve_pagetitlebar_layout == '0'): woocommerce_breadcrumb(); endif; } } // end t4pTemplateWoo() class new t4pTemplateWoo(); } add_filter('get_product_search_form', 'evolve_product_search_form'); function evolve_product_search_form($form) { $form = ''; return $form; } remove_action('woocommerce_before_shop_loop', 'woocommerce_result_count', 20); /* * Category page show shorting order */ function evolve_woocommerce_catalog_ordering() { $woo_items = evolve_get_option('evl_woo_items', '12'); if (isset($_SERVER['QUERY_STRING'])) { parse_str($_SERVER['QUERY_STRING'], $params); $query_string = '?' . $_SERVER['QUERY_STRING']; } else { $query_string = ''; } // replace it with theme option if ($woo_items) { $per_page = $woo_items; } else { $per_page = 12; } $pob = !empty($params['product_orderby']) ? $params['product_orderby'] : 'default'; $po = !empty($params['product_order']) ? $params['product_order'] : 'asc'; $pc = !empty($params['product_count']) ? $params['product_count'] : $per_page; $html = ''; $html .= '
'; $html .= '
'; $html .= ''; $html .= ''; $html .= '
'; $html .= ''; $html .= '
'; echo $html; } function evolve_woocommerce_get_catalog_ordering_args($args) { global $woocommerce; if (isset($_SERVER['QUERY_STRING'])) { parse_str($_SERVER['QUERY_STRING'], $params); } $pob = !empty($params['product_orderby']) ? $params['product_orderby'] : 'default'; $po = !empty($params['product_order']) ? $params['product_order'] : 'asc'; switch ($pob) { case 'date': $orderby = 'date'; $order = 'asc'; $meta_key = ''; break; case 'price': $orderby = 'meta_value_num'; $order = 'asc'; $meta_key = '_price'; break; case 'popularity': $orderby = 'meta_value_num'; $order = 'asc'; $meta_key = 'total_sales'; break; case 'rating': $orderby = 'meta_value_num'; $order = 'asc'; $meta_key = 'average_rating'; break; case 'name': $orderby = 'title'; $order = 'asc'; $meta_key = ''; break; case 'default': return $args; break; } switch ($po) { case 'desc': $order = 'desc'; break; case 'asc': $order = 'asc'; break; default: $order = 'asc'; break; } $args['orderby'] = $orderby; $args['order'] = $order; $args['meta_key'] = $meta_key; if ($pob == 'rating') { $args['orderby'] = 'menu_order title'; $args['order'] = $po == 'desc' ? 'desc' : 'asc'; $args['order'] = strtoupper($args['order']); $args['meta_key'] = ''; add_filter('posts_clauses', 't4p_order_by_rating_post_clauses'); } return $args; } /** * t4p_order_by_rating_post_clauses function. * * @access public * @param array $args * @return array */ function t4p_order_by_rating_post_clauses($args) { global $wpdb; $args['fields'] .= ", AVG( $wpdb->commentmeta.meta_value ) as average_rating "; $args['where'] .= " AND ( $wpdb->commentmeta.meta_key = 'rating' OR $wpdb->commentmeta.meta_key IS null ) "; $args['join'] .= " LEFT OUTER JOIN $wpdb->comments ON($wpdb->posts.ID = $wpdb->comments.comment_post_ID) LEFT JOIN $wpdb->commentmeta ON($wpdb->comments.comment_ID = $wpdb->commentmeta.comment_id) "; if (isset($_SERVER['QUERY_STRING'])) { parse_str($_SERVER['QUERY_STRING'], $params); } $order = !empty($params['product_order']) ? $params['product_order'] : 'desc'; $order = strtoupper($order); $args['orderby'] = "sum_of_comments_approved DESC, average_rating {$order}, $wpdb->posts.post_date DESC"; $args['groupby'] = "$wpdb->posts.ID"; return $args; } add_filter('loop_shop_per_page', 'evolve_loop_shop_per_page'); function evolve_loop_shop_per_page() { $woo_items = evolve_get_option('evl_woo_items', '12'); if (isset($_SERVER['QUERY_STRING'])) { parse_str($_SERVER['QUERY_STRING'], $params); } if ($woo_items) { $per_page = $woo_items; } else { $per_page = 12; } $pc = !empty($params['product_count']) ? $params['product_count'] : $per_page; return $pc; } add_action('woocommerce_before_shop_loop_item_title', 'evolve_woocommerce_thumbnail', 10); remove_action('woocommerce_before_shop_loop_item_title', 'woocommerce_template_loop_product_thumbnail', 10); function evolve_woocommerce_thumbnail() { global $product, $woocommerce; $items_in_cart = array(); if ($woocommerce->cart->get_cart() && is_array($woocommerce->cart->get_cart())) { foreach ($woocommerce->cart->get_cart() as $cart) { $items_in_cart[] = $cart['product_id']; } } $id = get_the_ID(); $in_cart = in_array($id, $items_in_cart); $size = 'shop_catalog'; $gallery = get_post_meta($id, '_product_image_gallery', true); $attachment_image = ''; if (!empty($gallery)) { $gallery = explode(',', $gallery); $first_image_id = $gallery[0]; $attachment_image = wp_get_attachment_image($first_image_id, $size, false, array('class' => 'hover-image')); } $thumb_image = get_the_post_thumbnail($id, $size); if ($attachment_image) { $classes = 'crossfade-images'; } else { $classes = ''; } echo ''; echo $attachment_image; echo $thumb_image; if ($in_cart) { echo ''; } else { echo ''; } echo '' . __('Show details', 'evolve') . ''; echo ''; } add_filter('add_to_cart_fragments', 'evolve_woocommerce_header_add_to_cart_fragment'); function evolve_woocommerce_header_add_to_cart_fragment($fragments) { global $woocommerce; ob_start(); $evolve_header_type = evolve_get_option('evl_header_type', 'none'); if ($evolve_header_type == 'h1') { ?>
  • cart->cart_contents_count): ?> cart->cart_contents_total); ?>
    cart->cart_contents_total); ?>
    cart->cart_contents as $cart_item): //var_dump($cart_item); ?>
    cart->cart_contents_count): ?>
  • cart->cart_contents_count): ?> cart->cart_contents_total); ?>
    cart->cart_contents_total); ?>
    cart->cart_contents as $cart_item): //var_dump($cart_item); ?>
    cart->cart_contents_count): ?>
  • cart->cart_contents_count): ?> cart->cart_contents_total); ?>
    cart->cart_contents_count; ?> item(s)
    cart->cart_contents as $cart_item): //var_dump($cart_item); ?>
    cart->cart_contents_count): ?>
  • cart->cart_contents_count): ?>
    cart->cart_contents_count; ?> - cart->subtotal); ?>
    cart->cart_contents as $cart_item): ?>
  • '; $full_image = wp_get_attachment_image_src(get_post_thumbnail_id(), 'full'); $social .= '
  • '; endif; $social .= '
    '; echo $social; } remove_action('woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20); add_action('woocommerce_after_single_product_summary', 'evolve_woocommerce_output_related_products', 15); function evolve_woocommerce_output_related_products() { $args = array( 'posts_per_page' => 4, 'columns' => 4, 'orderby' => 'rand' ); woocommerce_related_products(apply_filters('woocommerce_output_related_products_args', $args)); } /* variations hooks */ /* end variations hooks */ /* cart hooks */ add_action('woocommerce_before_cart_table', 'evolve_woocommerce_before_cart_table', 20); function evolve_woocommerce_before_cart_table($args) { global $woocommerce; $html = '
    '; $html .= '

    ' . sprintf(__('You Have %d Items In Your Cart', 'evolve'), $woocommerce->cart->cart_contents_count) . '

    '; echo $html; } add_action('woocommerce_after_cart_table', 'evolve_woocommerce_after_cart_table', 20); function evolve_woocommerce_after_cart_table($args) { $html = '
    '; echo $html; } function woocommerce_cross_sell_display($posts_per_page = 3, $columns = 3, $orderby = 'rand') { wc_get_template('cart/cross-sells.php', array( 'posts_per_page' => $posts_per_page, 'orderby' => $orderby, 'columns' => $columns )); } function cart_shipping_calc() { global $woocommerce; if (get_option('woocommerce_enable_shipping_calc') === 'no' || !WC()->cart->needs_shipping()) { return; } do_action('woocommerce_before_shipping_calculator'); ?>

    customer->get_shipping_country(); $current_r = WC()->customer->get_shipping_state(); $states = WC()->countries->get_states($current_cc); // Hidden Input if (is_array($states) && empty($states)) { ?>

    cart->coupons_enabled()) { ?>

    cart->get_cross_sells(); if (sizeof($crosssells) == 0) return; $number_of_columns = 4; woocommerce_cross_sell_display(apply_filters('woocommerce_cross_sells_total', -1), $number_of_columns); } /* end cart hooks */ /* begin checkout hooks */ remove_action('woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10); add_action('woocommerce_before_checkout_form', 'evolve_woocommerce_checkout_coupon_form', 10); function evolve_woocommerce_checkout_coupon_form($args) { global $woocommerce; if (!WC()->cart->coupons_enabled()) return; ?>

    cart->needs_shipping() && !WC()->cart->ship_to_billing_address_only() || apply_filters('woocommerce_enable_order_notes_field', get_option('woocommerce_enable_order_comments', 'yes') === 'yes') && (!WC()->cart->needs_shipping() || WC()->cart->ship_to_billing_address_only() ) ) { return; } else { ?>
    cart->needs_shipping() && !WC()->cart->ship_to_billing_address_only() || apply_filters('woocommerce_enable_order_notes_field', get_option('woocommerce_enable_order_comments', 'yes') === 'yes') && (!WC()->cart->needs_shipping() || WC()->cart->ship_to_billing_address_only() ) ) { ?>
    cart->needs_shipping() && !WC()->cart->ship_to_billing_address_only() || apply_filters('woocommerce_enable_order_notes_field', get_option('woocommerce_enable_order_comments', 'yes') === 'yes') && (!WC()->cart->needs_shipping() || WC()->cart->ship_to_billing_address_only() ) ) { $data_name = 'col-2'; } else { $data_name = '#order_review'; } $evolve_woocommerce_option = get_option('evl_options'); $woocommerce_one_page_checkout = $evolve_woocommerce_option['evl_woocommerce_one_page_checkout']; if (!$woocommerce_one_page_checkout) { ?>
    7438 882 764'); $woo_acc_msg_2 = evolve_get_option('evl_woo_acc_msg_2', 'Email us - contact@example.com'); ?>

    display_name ); ?>

    7438 882 764'); $woo_acc_msg_2 = evolve_get_option('evl_woo_acc_msg_2', 'Email us - contact@example.com'); ?>
    >

    ', esc_html($current_user->display_name), '', '', ''); ?>

    ', '', '', ''); ?>

    __('Order', 'evolve'), 'order-date' => __('Date', 'evolve'), 'order-status' => __('Status', 'evolve'), 'order-total' => __('Total', 'evolve'), '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) : ?>

    $column_name) : ?> get_item_count(); ?> $column_name) : ?>
    customer->get_downloadable_products()) : do_action('woocommerce_before_available_downloads'); ?>

    >

    >

    __('Billing Address', 'evolve'), 'shipping' => __('Shipping Address', 'evolve') ), $customer_id); } else { $get_addresses = apply_filters('woocommerce_my_account_get_addresses', array( 'billing' => __('Billing Address', 'evolve') ), $customer_id); } $oldcol = 1; $col = 1; ?>

    '; foreach ($get_addresses as $name => $title) : ?>

    get_user_meta($customer_id, $name . '_first_name', true), 'last_name' => get_user_meta($customer_id, $name . '_last_name', true), 'company' => get_user_meta($customer_id, $name . '_company', true), 'address_1' => get_user_meta($customer_id, $name . '_address_1', true), 'address_2' => get_user_meta($customer_id, $name . '_address_2', true), 'city' => get_user_meta($customer_id, $name . '_city', true), 'state' => get_user_meta($customer_id, $name . '_state', true), 'postcode' => get_user_meta($customer_id, $name . '_postcode', true), 'country' => get_user_meta($customer_id, $name . '_country', true) ), $customer_id, $name); $formatted_address = WC()->countries->get_formatted_address($address); if (!$formatted_address) _e('You have not set up this type of address yet.', 'evolve'); else echo $formatted_address; ?>
    '; $load_address = 'billing'; $current_user = wp_get_current_user(); $address = WC()->countries->get_address_fields(get_user_meta(get_current_user_id(), $load_address . '_country', true), $load_address . '_'); // Prepare values foreach ($address as $key => $field) { $value = get_user_meta(get_current_user_id(), $key, true); if (!$value) { switch ($key) { case 'billing_email' : case 'shipping_email' : $value = $current_user->user_email; break; case 'billing_country' : case 'shipping_country' : $value = WC()->countries->get_base_country(); break; case 'billing_state' : case 'shipping_state' : $value = WC()->countries->get_base_state(); break; } } $address[$key]['value'] = apply_filters('woocommerce_my_account_edit_address_field_value', $value, $key, $load_address); $addressform_session = ''; if (isset($_SESSION['formvalue']) && !empty($field['required']) && isset($_POST[$key])) { $addressform_session = 'style=display:block'; } elseif (isset($_SESSION['formvalue'])) { $addressform_session = 'style=display:none'; } } ?>

    >

    >
    $field) : woocommerce_form_field($key, $field, !empty($_POST[$key]) ? wc_clean($_POST[$key]) : $field['value'] ); endforeach; ?>

    countries->get_address_fields(get_user_meta(get_current_user_id(), $load_address . '_country', true), $load_address . '_'); // Prepare values foreach ($address as $key => $field) { $value = get_user_meta(get_current_user_id(), $key, true); if (!$value) { switch ($key) { case 'billing_email' : case 'shipping_email' : $value = $current_user->user_email; break; case 'billing_country' : case 'shipping_country' : $value = WC()->countries->get_base_country(); break; case 'billing_state' : case 'shipping_state' : $value = WC()->countries->get_base_state(); break; } } $address[$key]['value'] = apply_filters('woocommerce_my_account_edit_address_field_value', $value, $key, $load_address); $addressform_session = ''; if (isset($_SESSION['formvalue']) && !empty($field['required']) && isset($_POST[$key])) { $addressform_session = 'style=display:block'; } elseif (isset($_SESSION['formvalue'])) { $addressform_session = 'style=display:none'; } } ?>

    >

    >
    $field) : woocommerce_form_field($key, $field, !empty($_POST[$key]) ? wc_clean($_POST[$key]) : $field['value'] ); endforeach; ?>

    countries->get_address_fields(esc_attr($_POST[$load_address . '_country']), $load_address . '_'); foreach ($address as $key => $field) { if (!isset($field['type'])) { $field['type'] = 'text'; } // Get Value. switch ($field['type']) { case 'checkbox' : $_POST[$key] = isset($_POST[$key]) ? 1 : 0; break; default : $_POST[$key] = isset($_POST[$key]) ? wc_clean($_POST[$key]) : ''; break; } // Hook to allow modification of value. $_POST[$key] = apply_filters('woocommerce_process_myaccount_field_' . $key, $_POST[$key]); // Validation: Required fields. if (!empty($field['required']) && empty($_POST[$key])) { wc_add_notice($field['label'] . ' ' . __('is a required field.', 'evolve'), 'error'); } if (!empty($_POST[$key])) { // Validation rules if (!empty($field['validate']) && is_array($field['validate'])) { foreach ($field['validate'] as $rule) { switch ($rule) { case 'postcode' : $_POST[$key] = strtoupper(str_replace(' ', '', $_POST[$key])); if (!WC_Validation::is_postcode($_POST[$key], $_POST[$load_address . '_country'])) { wc_add_notice(__('Please enter a valid postcode/ZIP.', 'evolve'), 'error'); } else { $_POST[$key] = wc_format_postcode($_POST[$key], $_POST[$load_address . '_country']); } break; case 'phone' : $_POST[$key] = wc_format_phone_number($_POST[$key]); if (!WC_Validation::is_phone($_POST[$key])) { wc_add_notice('' . $field['label'] . ' ' . __('is not a valid phone number.', 'evolve'), 'error'); } break; case 'email' : $_POST[$key] = strtolower($_POST[$key]); if (!is_email($_POST[$key])) { wc_add_notice('' . $field['label'] . ' ' . __('is not a valid email address.', 'evolve'), 'error'); } break; } } } } } if (wc_notice_count('error') == 0) { foreach ($address as $key => $field) { update_user_meta($user_id, $key, $_POST[$key]); } wc_add_notice(__('Address changed successfully.', 'evolve')); do_action('woocommerce_customer_save_address', $user_id, $load_address); wp_safe_redirect(wc_get_page_permalink('myaccount')); exit; } } } evolve_WC_Form_Handler::init(); add_action('woocommerce_account_editaccount', 'evolve_woocommerce_after_my_account'); function evolve_woocommerce_after_my_account($args) { global $woocommerce, $wp; $user = wp_get_current_user(); ?>

    get_order_item_totals()) foreach ($totals as $total) : ?> get_items()) > 0) { foreach ($order->get_items() as $item) { $_product = apply_filters('woocommerce_order_item_product', $order->get_product_from_item($item), $item); $product = apply_filters( 'woocommerce_order_item_product', $item->get_product(), $item ); ?> has_status( apply_filters( 'woocommerce_purchase_note_order_statuses', array( 'completed', 'processing' ) ) ); $purchase_note = $product ? $product->get_purchase_note() : ''; if ( $show_purchase_note && $purchase_note ) { ?>
     
    get_image(), $cart_item, $cart_item_key); if (!$_product->is_visible()) echo $thumbnail; else printf('%s', $_product->get_permalink(), $thumbnail); ?>
    is_visible()) echo apply_filters('woocommerce_order_item_name', $item['name'], $item); else echo apply_filters('woocommerce_order_item_name', sprintf('%s', get_permalink($item['product_id']), $item['name']), $item); wc_display_item_meta($item); if ($_product && $_product->exists() && $_product->is_downloadable() && $order->is_download_permitted()) { $download_files = $order_item_product->get_item_downloads(); $i = 0; $links = array(); foreach ($download_files as $download_id => $file) { $i++; $links[] = '' . sprintf(__('Download file%s', 'evolve'), ( count($download_files) > 1 ? ' ' . $i . ': ' : ': ')) . esc_html($file['name']) . ''; } echo '
    ' . implode('
    ', $links); } ?>
    get_formatted_line_subtotal($item); ?>

    get_customer_note()) echo '
    ' . __('Note:', 'evolve') . '
    ' . $order->get_customer_note() . '
    '; if ($order->get_billing_email()) echo '
    ' . __('Email:', 'evolve') . '
    ' . $order->get_billing_email() . '
    '; if ($order->get_billing_phone()) echo '
    ' . __('Telephone:', 'evolve') . '
    ' . $order->get_billing_phone() . '
    '; // Additional customer details hook do_action('woocommerce_order_details_after_customer_details', $order); ?>

    get_formatted_billing_address()) _e('N/A', 'evolve'); else echo $order->get_formatted_billing_address(); ?>

    get_formatted_shipping_address()) _e('N/A', 'evolve'); else echo $order->get_formatted_shipping_address(); ?>