Version Description
Download this release
Release Info
Developer | cartflowswp |
Plugin | Funnel Builder by CartFlows – Create High Converting Sales Funnels For WordPress |
Version | 1.6.7 |
Comparing to | |
See all releases |
Code changes from version 1.6.6 to 1.6.7
- admin-core/ajax/flows-stats.php +4 -4
- admin-core/ajax/importer.php +12 -6
- admin-core/assets/build/settings-app-rtl.css +1 -1
- admin-core/assets/build/settings-app.asset.php +1 -1
- admin-core/assets/build/settings-app.css +1 -1
- admin-core/inc/step-meta.php +3 -3
- cartflows.php +1 -1
- changelog.txt +4 -0
- classes/class-cartflows-loader.php +1 -1
- languages/cartflows.pot +40 -14
- readme.txt +5 -1
- theme-support/astra/class-cartflows-astra-compatibility.php +30 -0
- woocommerce/template/cart/cart-shipping.php +12 -8
- woocommerce/template/checkout/form-billing.php +8 -14
- woocommerce/template/checkout/form-checkout.php +9 -7
- woocommerce/template/checkout/form-coupon.php +2 -2
- woocommerce/template/checkout/form-login.php +5 -5
- woocommerce/template/checkout/form-shipping.php +2 -2
- woocommerce/template/checkout/payment-method.php +1 -1
- woocommerce/template/checkout/payment.php +2 -1
- woocommerce/template/checkout/review-order.php +25 -29
- woocommerce/template/checkout/thankyou.php +25 -25
- woocommerce/template/global/form-login.php +7 -13
- woocommerce/template/notices/error.php +7 -9
- woocommerce/template/notices/notice.php +7 -9
- woocommerce/template/notices/success.php +7 -9
- woocommerce/template/order/order-details.php +13 -11
admin-core/ajax/flows-stats.php
CHANGED
@@ -87,7 +87,7 @@ class FlowsStats extends AjaxBase {
|
|
87 |
$cartflows_offer = 0;
|
88 |
$visits = 0;
|
89 |
$currency_symbol = function_exists( 'get_woocommerce_currency_symbol' ) ? get_woocommerce_currency_symbol() : '';
|
90 |
-
$cf_pro_status
|
91 |
|
92 |
if ( ! empty( $orders ) ) {
|
93 |
|
@@ -102,7 +102,7 @@ class FlowsStats extends AjaxBase {
|
|
102 |
$gross_sale += (float) $order_total;
|
103 |
}
|
104 |
|
105 |
-
if( ! $cf_pro_status ){
|
106 |
continue;
|
107 |
}
|
108 |
|
@@ -162,8 +162,8 @@ class FlowsStats extends AjaxBase {
|
|
162 |
|
163 |
}
|
164 |
|
165 |
-
if( $cf_pro_status ){
|
166 |
-
|
167 |
/* Get the Flow IDs. */
|
168 |
$flow_ids = array_column( $orders, 'meta_value' );
|
169 |
|
87 |
$cartflows_offer = 0;
|
88 |
$visits = 0;
|
89 |
$currency_symbol = function_exists( 'get_woocommerce_currency_symbol' ) ? get_woocommerce_currency_symbol() : '';
|
90 |
+
$cf_pro_status = _is_cartflows_pro();
|
91 |
|
92 |
if ( ! empty( $orders ) ) {
|
93 |
|
102 |
$gross_sale += (float) $order_total;
|
103 |
}
|
104 |
|
105 |
+
if ( ! $cf_pro_status ) {
|
106 |
continue;
|
107 |
}
|
108 |
|
162 |
|
163 |
}
|
164 |
|
165 |
+
if ( $cf_pro_status ) {
|
166 |
+
|
167 |
/* Get the Flow IDs. */
|
168 |
$flow_ids = array_column( $orders, 'meta_value' );
|
169 |
|
admin-core/ajax/importer.php
CHANGED
@@ -597,14 +597,20 @@ class Importer extends AjaxBase {
|
|
597 |
$cta = '';
|
598 |
$btn = '';
|
599 |
if ( 'not-installed' === $cf_pro_status ) {
|
600 |
-
|
601 |
-
$
|
|
|
|
|
602 |
} elseif ( 'inactive' === $cf_pro_status ) {
|
603 |
-
|
604 |
-
$
|
|
|
|
|
605 |
} elseif ( 'active' === $cf_pro_status ) {
|
606 |
-
|
607 |
-
$
|
|
|
|
|
608 |
}
|
609 |
|
610 |
wp_send_json_error(
|
597 |
$cta = '';
|
598 |
$btn = '';
|
599 |
if ( 'not-installed' === $cf_pro_status ) {
|
600 |
+
/* translators: %1$s: link html start, %2$s: link html end*/
|
601 |
+
$btn = sprintf( __( 'CartFlows Pro Required! %1$sUpgrade to CartFlows Pro%2$s', 'cartflows' ), '<a target="_blank" href="https://cartflows.com/">', '</a>' );
|
602 |
+
/* translators: %1$s: link html start, %2$s: link html end*/
|
603 |
+
$cta = sprintf( __( 'To import the premium flow %1$supgrade to CartFlows Pro%2$s.', 'cartflows' ), '<a target="_blank" href="https://cartflows.com/">', '</a>' );
|
604 |
} elseif ( 'inactive' === $cf_pro_status ) {
|
605 |
+
/* translators: %1$s: link html start, %2$s: link html end*/
|
606 |
+
$btn = sprintf( __( 'Activate the CartFlows Pro to import the flow! %1$sActivate CartFlows Pro%2$s', 'cartflows' ), '<a target="_blank" href="' . admin_url( 'plugins.php?plugin_status=search&paged=1&s=CartFlows+Pro' ) . '">', '</a>' );
|
607 |
+
/* translators: %1$s: link html start, %2$s: link html end*/
|
608 |
+
$cta = sprintf( __( 'To import the premium flow %1$sactivate Cartflows Pro%2$s and validate the license key.', 'cartflows' ), '<a target="_blank" href="' . admin_url( 'plugins.php?plugin_status=search&paged=1&s=CartFlows+Pro' ) . '">', '</a>' );
|
609 |
} elseif ( 'active' === $cf_pro_status ) {
|
610 |
+
/* translators: %1$s: link html start, %2$s: link html end*/
|
611 |
+
$btn = sprintf( __( 'Invalid License Key! %1$sActivate CartFlows Pro%2$s', 'cartflows' ), '<a target="_blank" href="' . admin_url( 'plugins.php?cartflows-license-popup' ) . '">', '</a>' );
|
612 |
+
/* translators: %1$s: link html start, %2$s: link html end*/
|
613 |
+
$cta = sprintf( __( 'To import the premium flow %1$sactivate CartFlows Pro%2$s.', 'cartflows' ), '<a target="_blank" href="' . admin_url( 'plugins.php?cartflows-license-popup' ) . '">', '</a>' );
|
614 |
}
|
615 |
|
616 |
wp_send_json_error(
|
admin-core/assets/build/settings-app-rtl.css
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
:root{--primary-color: #f06434;--primary-hv-color: #EE4710;--primary-border-color: #f06434;--secondary-color: #f5f6f7;--secondary-border-color: #ddd;--secondary-hv-color: #edeff1}.wcf-hide{display:none !important}.wcf-button{border-width:1px;border-style:solid;border-radius:2px;text-decoration:none;text-shadow:none;font-size:14px;min-height:36px;line-height:1;line-height:1.5;padding:7px 18px;display:inline;display:inline-block;vertical-align:middle;align-items:center;cursor:pointer;margin:0;font-weight:400;box-sizing:border-box}.wcf-button--small{min-height:26px;padding:0 8px;font-size:11px;border-width:1px;border-style:solid;border-radius:2px;text-decoration:none;text-shadow:none;line-height:2;display:inline-block;vertical-align:middle;align-items:center;cursor:pointer;margin:0}.wcf-button--primary{background:#f06434;background:var(--primary-color);border-color:#f06434;border-color:var(--primary-border-color);color:#fff}.wcf-button--primary:focus,.wcf-button--primary:hover{background:#EE4710;background:var(--primary-hv-color);border-color:#f06434;border-color:var(--primary-border-color);color:#fff;box-shadow:none;outline:none}.wcf-button--secondary{background:#f5f6f7;background:var(--secondary-color);border-color:#ddd;border-color:var(--secondary-border-color);color:#3a3a3a}.wcf-button--secondary:focus,.wcf-button--secondary:hover{background:#edeff1;background:var(--secondary-hv-color);border-color:#ddd;border-color:var(--secondary-border-color);color:#3a3a3a;box-shadow:none}.wcf-popup-header-title{display:flex;align-items:center;font-size:15px;font-weight:500;color:#444;letter-spacing:0;text-transform:none;text-decoration:none}.wcf-popup-header-title .cartflows-logo-icon{padding:15px}.wcf-popup-header-action{display:inline-block;display:flex;align-items:center;padding:15px;border-right:1px solid #ddd;position:relative;color:#ccc;cursor:pointer}.wcf-popup-header-action .dashicons{line-height:1}.wcf-popup-header-action:after{font-size:25px}.wcf-popup-header-action:hover{color:#aaa}.wcf-message,.wcf-error-message--toggle,.wcf-error--info{padding:5px;display:block;font-size:12px}.wcf-message--error{color:#f06434;color:var(--primary-color)}.wcf-error-message--toggle{cursor:pointer}.wcf-error--info{background-color:#f2f2f2;border-radius:3px;padding:10px;border:1px #ccc dashed}
|
4 |
|
5 |
|
6 |
-
.wcf-global-nav-menu{margin:0px;padding:2px 20px 0 20px;display:flex;background:#ffffff;align-items:center;border-bottom:1px solid #ddd;box-shadow:none}.wcf-global-nav-menu .wcf-title{max-width:170px}.wcf-global-nav-menu .wcf-title a:focus,.wcf-global-nav-menu .wcf-title a:hover{box-shadow:none;outline:0}.wcf-global-nav-menu .wcf-title .wcf-logo{width:120px}.wcf-global-nav-menu .wcf-global-nav__items{display:flex;align-items:center}.wcf-global-nav-menu .wcf-global-nav-menu__tab{background:transparent;border:none;color:#444;cursor:pointer;padding:25px 30px 23px 30px;font-size:14px;line-height:1;letter-spacing:0.225px;font-weight:400;margin:0 0 -1px 0;max-width:100%;text-align:center;text-decoration:none;outline:none;box-shadow:none;border-bottom:2px solid #ffffff00}.wcf-global-nav-menu .wcf-global-nav-menu__tab:hover{color:#f06335;border-bottom:2px solid #f06335}.wcf-global-nav-menu .wcf-global-nav-menu__tab.wcf-global-nav-menu__tab--active{background:none;color:#f06335;border-bottom:2px solid #f06335}.wcf-menu-page-content{margin:0 auto;width:100%;font-size:14px;font-weight:400}.wcf-global-nav-menu .wcf-title{max-width:140px;border-left:1px solid #dddddd;display:flex;align-items:center}.wcf-global-nav-menu{position:fixed;width:calc(100% - 160px);right:160px;top:32px;z-index:2}
|
7 |
|
8 |
.wcf-home-page-wrapper{display:block}.wcf-home-page-wrapper P{margin:0 0 0.5em}.wcf-home-page-wrapper .wcf-col--row{display:flex;width:100%;padding:0}.wcf-home-page-wrapper .wcf-col--20{width:20%}.wcf-home-page-wrapper .wcf-col--30{width:30%}.wcf-home-page-wrapper .wcf-col--33{width:33.33%}.wcf-home-page-wrapper .wcf-col--50{width:50%}.wcf-home-page-wrapper .wcf-col--70{width:70%;margin:0 0px 0px 25px}.wcf-home-page-wrapper .wcf-col--100{width:100%}.wcf-home-page-wrapper .wcf-col--flex{display:flex}.wcf-home-page-wrapper .wcf-button--action-button{background:#fff;border-radius:0;vertical-align:top}.wcf-home-page-wrapper .wcf-button--primary{color:#fff;border-color:#0071a1;background:#0071a1}.wcf-home-page-wrapper .wcf-display--none{display:none}.wcf-metabox{background:#fff;box-shadow:none;margin-bottom:20px;border:0;padding:30px 20px;border-radius:2px}.wcf-metabox h2{font-size:18px;margin:0px;font-weight:400}.wcf-metabox__header,.wcf-metabox__body,.wcf-metabox__footer{padding:10px;border-bottom:0}.wcf-metabox__footer{padding-bottom:0px}.wcf-metabox__footer p{margin-top:10px;font-size:14px}
|
9 |
|
3 |
:root{--primary-color: #f06434;--primary-hv-color: #EE4710;--primary-border-color: #f06434;--secondary-color: #f5f6f7;--secondary-border-color: #ddd;--secondary-hv-color: #edeff1}.wcf-hide{display:none !important}.wcf-button{border-width:1px;border-style:solid;border-radius:2px;text-decoration:none;text-shadow:none;font-size:14px;min-height:36px;line-height:1;line-height:1.5;padding:7px 18px;display:inline;display:inline-block;vertical-align:middle;align-items:center;cursor:pointer;margin:0;font-weight:400;box-sizing:border-box}.wcf-button--small{min-height:26px;padding:0 8px;font-size:11px;border-width:1px;border-style:solid;border-radius:2px;text-decoration:none;text-shadow:none;line-height:2;display:inline-block;vertical-align:middle;align-items:center;cursor:pointer;margin:0}.wcf-button--primary{background:#f06434;background:var(--primary-color);border-color:#f06434;border-color:var(--primary-border-color);color:#fff}.wcf-button--primary:focus,.wcf-button--primary:hover{background:#EE4710;background:var(--primary-hv-color);border-color:#f06434;border-color:var(--primary-border-color);color:#fff;box-shadow:none;outline:none}.wcf-button--secondary{background:#f5f6f7;background:var(--secondary-color);border-color:#ddd;border-color:var(--secondary-border-color);color:#3a3a3a}.wcf-button--secondary:focus,.wcf-button--secondary:hover{background:#edeff1;background:var(--secondary-hv-color);border-color:#ddd;border-color:var(--secondary-border-color);color:#3a3a3a;box-shadow:none}.wcf-popup-header-title{display:flex;align-items:center;font-size:15px;font-weight:500;color:#444;letter-spacing:0;text-transform:none;text-decoration:none}.wcf-popup-header-title .cartflows-logo-icon{padding:15px}.wcf-popup-header-action{display:inline-block;display:flex;align-items:center;padding:15px;border-right:1px solid #ddd;position:relative;color:#ccc;cursor:pointer}.wcf-popup-header-action .dashicons{line-height:1}.wcf-popup-header-action:after{font-size:25px}.wcf-popup-header-action:hover{color:#aaa}.wcf-message,.wcf-error-message--toggle,.wcf-error--info{padding:5px;display:block;font-size:12px}.wcf-message--error{color:#f06434;color:var(--primary-color)}.wcf-error-message--toggle{cursor:pointer}.wcf-error--info{background-color:#f2f2f2;border-radius:3px;padding:10px;border:1px #ccc dashed}
|
4 |
|
5 |
|
6 |
+
.wcf-global-nav-menu{margin:0px;padding:2px 20px 0 20px;display:flex;background:#ffffff;align-items:center;border-bottom:1px solid #ddd;box-shadow:none}.wcf-global-nav-menu .wcf-title{max-width:170px}.wcf-global-nav-menu .wcf-title a:focus,.wcf-global-nav-menu .wcf-title a:hover{box-shadow:none;outline:0}.wcf-global-nav-menu .wcf-title .wcf-logo{width:120px}.wcf-global-nav-menu .wcf-global-nav__items{display:flex;align-items:center}.wcf-global-nav-menu .wcf-global-nav-menu__tab{background:transparent;border:none;color:#444;cursor:pointer;padding:25px 30px 23px 30px;font-size:14px;line-height:1;letter-spacing:0.225px;font-weight:400;margin:0 0 -1px 0;max-width:100%;text-align:center;text-decoration:none;outline:none;box-shadow:none;border-bottom:2px solid #ffffff00}.wcf-global-nav-menu .wcf-global-nav-menu__tab:hover{color:#f06335;border-bottom:2px solid #f06335}.wcf-global-nav-menu .wcf-global-nav-menu__tab.wcf-global-nav-menu__tab--active{background:none;color:#f06335;border-bottom:2px solid #f06335}.wcf-menu-page-content{margin:0 auto;width:100%;font-size:14px;font-weight:400}.wcf-global-nav-menu .wcf-title{max-width:140px;border-left:1px solid #dddddd;display:flex;align-items:center}body.folded .wcf-global-nav-menu{position:fixed;width:calc(100% - 75px);right:55px;top:32px;z-index:2}.wcf-global-nav-menu{position:fixed;width:calc(100% - 160px);right:160px;top:32px;z-index:2}
|
7 |
|
8 |
.wcf-home-page-wrapper{display:block}.wcf-home-page-wrapper P{margin:0 0 0.5em}.wcf-home-page-wrapper .wcf-col--row{display:flex;width:100%;padding:0}.wcf-home-page-wrapper .wcf-col--20{width:20%}.wcf-home-page-wrapper .wcf-col--30{width:30%}.wcf-home-page-wrapper .wcf-col--33{width:33.33%}.wcf-home-page-wrapper .wcf-col--50{width:50%}.wcf-home-page-wrapper .wcf-col--70{width:70%;margin:0 0px 0px 25px}.wcf-home-page-wrapper .wcf-col--100{width:100%}.wcf-home-page-wrapper .wcf-col--flex{display:flex}.wcf-home-page-wrapper .wcf-button--action-button{background:#fff;border-radius:0;vertical-align:top}.wcf-home-page-wrapper .wcf-button--primary{color:#fff;border-color:#0071a1;background:#0071a1}.wcf-home-page-wrapper .wcf-display--none{display:none}.wcf-metabox{background:#fff;box-shadow:none;margin-bottom:20px;border:0;padding:30px 20px;border-radius:2px}.wcf-metabox h2{font-size:18px;margin:0px;font-weight:400}.wcf-metabox__header,.wcf-metabox__body,.wcf-metabox__footer{padding:10px;border-bottom:0}.wcf-metabox__footer{padding-bottom:0px}.wcf-metabox__footer p{margin-top:10px;font-size:14px}
|
9 |
|
admin-core/assets/build/settings-app.asset.php
CHANGED
@@ -1 +1 @@
|
|
1 |
-
<?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-compose', 'wp-data', 'wp-element', 'wp-i18n', 'wp-polyfill'), 'version' => '
|
1 |
+
<?php return array('dependencies' => array('react', 'react-dom', 'wp-api-fetch', 'wp-compose', 'wp-data', 'wp-element', 'wp-i18n', 'wp-polyfill'), 'version' => 'e2ee91af960eb72c02e8d0d19ba2351e');
|
admin-core/assets/build/settings-app.css
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
:root{--primary-color: #f06434;--primary-hv-color: #EE4710;--primary-border-color: #f06434;--secondary-color: #f5f6f7;--secondary-border-color: #ddd;--secondary-hv-color: #edeff1}.wcf-hide{display:none !important}.wcf-button{border-width:1px;border-style:solid;border-radius:2px;text-decoration:none;text-shadow:none;font-size:14px;min-height:36px;line-height:1;line-height:1.5;padding:7px 18px;display:inline;display:inline-block;vertical-align:middle;align-items:center;cursor:pointer;margin:0;font-weight:400;box-sizing:border-box}.wcf-button--small{min-height:26px;padding:0 8px;font-size:11px;border-width:1px;border-style:solid;border-radius:2px;text-decoration:none;text-shadow:none;line-height:2;display:inline-block;vertical-align:middle;align-items:center;cursor:pointer;margin:0}.wcf-button--primary{background:#f06434;background:var(--primary-color);border-color:#f06434;border-color:var(--primary-border-color);color:#fff}.wcf-button--primary:focus,.wcf-button--primary:hover{background:#EE4710;background:var(--primary-hv-color);border-color:#f06434;border-color:var(--primary-border-color);color:#fff;box-shadow:none;outline:none}.wcf-button--secondary{background:#f5f6f7;background:var(--secondary-color);border-color:#ddd;border-color:var(--secondary-border-color);color:#3a3a3a}.wcf-button--secondary:focus,.wcf-button--secondary:hover{background:#edeff1;background:var(--secondary-hv-color);border-color:#ddd;border-color:var(--secondary-border-color);color:#3a3a3a;box-shadow:none}.wcf-popup-header-title{display:flex;align-items:center;font-size:15px;font-weight:500;color:#444;letter-spacing:0;text-transform:none;text-decoration:none}.wcf-popup-header-title .cartflows-logo-icon{padding:15px}.wcf-popup-header-action{display:inline-block;display:flex;align-items:center;padding:15px;border-left:1px solid #ddd;position:relative;color:#ccc;cursor:pointer}.wcf-popup-header-action .dashicons{line-height:1}.wcf-popup-header-action:after{font-size:25px}.wcf-popup-header-action:hover{color:#aaa}.wcf-message,.wcf-error-message--toggle,.wcf-error--info{padding:5px;display:block;font-size:12px}.wcf-message--error{color:#f06434;color:var(--primary-color)}.wcf-error-message--toggle{cursor:pointer}.wcf-error--info{background-color:#f2f2f2;border-radius:3px;padding:10px;border:1px #ccc dashed}
|
4 |
|
5 |
|
6 |
-
.wcf-global-nav-menu{margin:0px;padding:2px 20px 0 20px;display:flex;background:#ffffff;align-items:center;border-bottom:1px solid #ddd;box-shadow:none}.wcf-global-nav-menu .wcf-title{max-width:170px}.wcf-global-nav-menu .wcf-title a:focus,.wcf-global-nav-menu .wcf-title a:hover{box-shadow:none;outline:0}.wcf-global-nav-menu .wcf-title .wcf-logo{width:120px}.wcf-global-nav-menu .wcf-global-nav__items{display:flex;align-items:center}.wcf-global-nav-menu .wcf-global-nav-menu__tab{background:transparent;border:none;color:#444;cursor:pointer;padding:25px 30px 23px 30px;font-size:14px;line-height:1;letter-spacing:0.225px;font-weight:400;margin:0 0 -1px 0;max-width:100%;text-align:center;text-decoration:none;outline:none;box-shadow:none;border-bottom:2px solid #ffffff00}.wcf-global-nav-menu .wcf-global-nav-menu__tab:hover{color:#f06335;border-bottom:2px solid #f06335}.wcf-global-nav-menu .wcf-global-nav-menu__tab.wcf-global-nav-menu__tab--active{background:none;color:#f06335;border-bottom:2px solid #f06335}.wcf-menu-page-content{margin:0 auto;width:100%;font-size:14px;font-weight:400}.wcf-global-nav-menu .wcf-title{max-width:140px;border-right:1px solid #dddddd;display:flex;align-items:center}.wcf-global-nav-menu{position:fixed;width:calc(100% - 160px);left:160px;top:32px;z-index:2}
|
7 |
|
8 |
.wcf-home-page-wrapper{display:block}.wcf-home-page-wrapper P{margin:0 0 0.5em}.wcf-home-page-wrapper .wcf-col--row{display:flex;width:100%;padding:0}.wcf-home-page-wrapper .wcf-col--20{width:20%}.wcf-home-page-wrapper .wcf-col--30{width:30%}.wcf-home-page-wrapper .wcf-col--33{width:33.33%}.wcf-home-page-wrapper .wcf-col--50{width:50%}.wcf-home-page-wrapper .wcf-col--70{width:70%;margin:0 25px 0px 0px}.wcf-home-page-wrapper .wcf-col--100{width:100%}.wcf-home-page-wrapper .wcf-col--flex{display:flex}.wcf-home-page-wrapper .wcf-button--action-button{background:#fff;border-radius:0;vertical-align:top}.wcf-home-page-wrapper .wcf-button--primary{color:#fff;border-color:#0071a1;background:#0071a1}.wcf-home-page-wrapper .wcf-display--none{display:none}.wcf-metabox{background:#fff;box-shadow:none;margin-bottom:20px;border:0;padding:30px 20px;border-radius:2px}.wcf-metabox h2{font-size:18px;margin:0px;font-weight:400}.wcf-metabox__header,.wcf-metabox__body,.wcf-metabox__footer{padding:10px;border-bottom:0}.wcf-metabox__footer{padding-bottom:0px}.wcf-metabox__footer p{margin-top:10px;font-size:14px}
|
9 |
|
3 |
:root{--primary-color: #f06434;--primary-hv-color: #EE4710;--primary-border-color: #f06434;--secondary-color: #f5f6f7;--secondary-border-color: #ddd;--secondary-hv-color: #edeff1}.wcf-hide{display:none !important}.wcf-button{border-width:1px;border-style:solid;border-radius:2px;text-decoration:none;text-shadow:none;font-size:14px;min-height:36px;line-height:1;line-height:1.5;padding:7px 18px;display:inline;display:inline-block;vertical-align:middle;align-items:center;cursor:pointer;margin:0;font-weight:400;box-sizing:border-box}.wcf-button--small{min-height:26px;padding:0 8px;font-size:11px;border-width:1px;border-style:solid;border-radius:2px;text-decoration:none;text-shadow:none;line-height:2;display:inline-block;vertical-align:middle;align-items:center;cursor:pointer;margin:0}.wcf-button--primary{background:#f06434;background:var(--primary-color);border-color:#f06434;border-color:var(--primary-border-color);color:#fff}.wcf-button--primary:focus,.wcf-button--primary:hover{background:#EE4710;background:var(--primary-hv-color);border-color:#f06434;border-color:var(--primary-border-color);color:#fff;box-shadow:none;outline:none}.wcf-button--secondary{background:#f5f6f7;background:var(--secondary-color);border-color:#ddd;border-color:var(--secondary-border-color);color:#3a3a3a}.wcf-button--secondary:focus,.wcf-button--secondary:hover{background:#edeff1;background:var(--secondary-hv-color);border-color:#ddd;border-color:var(--secondary-border-color);color:#3a3a3a;box-shadow:none}.wcf-popup-header-title{display:flex;align-items:center;font-size:15px;font-weight:500;color:#444;letter-spacing:0;text-transform:none;text-decoration:none}.wcf-popup-header-title .cartflows-logo-icon{padding:15px}.wcf-popup-header-action{display:inline-block;display:flex;align-items:center;padding:15px;border-left:1px solid #ddd;position:relative;color:#ccc;cursor:pointer}.wcf-popup-header-action .dashicons{line-height:1}.wcf-popup-header-action:after{font-size:25px}.wcf-popup-header-action:hover{color:#aaa}.wcf-message,.wcf-error-message--toggle,.wcf-error--info{padding:5px;display:block;font-size:12px}.wcf-message--error{color:#f06434;color:var(--primary-color)}.wcf-error-message--toggle{cursor:pointer}.wcf-error--info{background-color:#f2f2f2;border-radius:3px;padding:10px;border:1px #ccc dashed}
|
4 |
|
5 |
|
6 |
+
.wcf-global-nav-menu{margin:0px;padding:2px 20px 0 20px;display:flex;background:#ffffff;align-items:center;border-bottom:1px solid #ddd;box-shadow:none}.wcf-global-nav-menu .wcf-title{max-width:170px}.wcf-global-nav-menu .wcf-title a:focus,.wcf-global-nav-menu .wcf-title a:hover{box-shadow:none;outline:0}.wcf-global-nav-menu .wcf-title .wcf-logo{width:120px}.wcf-global-nav-menu .wcf-global-nav__items{display:flex;align-items:center}.wcf-global-nav-menu .wcf-global-nav-menu__tab{background:transparent;border:none;color:#444;cursor:pointer;padding:25px 30px 23px 30px;font-size:14px;line-height:1;letter-spacing:0.225px;font-weight:400;margin:0 0 -1px 0;max-width:100%;text-align:center;text-decoration:none;outline:none;box-shadow:none;border-bottom:2px solid #ffffff00}.wcf-global-nav-menu .wcf-global-nav-menu__tab:hover{color:#f06335;border-bottom:2px solid #f06335}.wcf-global-nav-menu .wcf-global-nav-menu__tab.wcf-global-nav-menu__tab--active{background:none;color:#f06335;border-bottom:2px solid #f06335}.wcf-menu-page-content{margin:0 auto;width:100%;font-size:14px;font-weight:400}.wcf-global-nav-menu .wcf-title{max-width:140px;border-right:1px solid #dddddd;display:flex;align-items:center}body.folded .wcf-global-nav-menu{position:fixed;width:calc(100% - 75px);left:55px;top:32px;z-index:2}.wcf-global-nav-menu{position:fixed;width:calc(100% - 160px);left:160px;top:32px;z-index:2}
|
7 |
|
8 |
.wcf-home-page-wrapper{display:block}.wcf-home-page-wrapper P{margin:0 0 0.5em}.wcf-home-page-wrapper .wcf-col--row{display:flex;width:100%;padding:0}.wcf-home-page-wrapper .wcf-col--20{width:20%}.wcf-home-page-wrapper .wcf-col--30{width:30%}.wcf-home-page-wrapper .wcf-col--33{width:33.33%}.wcf-home-page-wrapper .wcf-col--50{width:50%}.wcf-home-page-wrapper .wcf-col--70{width:70%;margin:0 25px 0px 0px}.wcf-home-page-wrapper .wcf-col--100{width:100%}.wcf-home-page-wrapper .wcf-col--flex{display:flex}.wcf-home-page-wrapper .wcf-button--action-button{background:#fff;border-radius:0;vertical-align:top}.wcf-home-page-wrapper .wcf-button--primary{color:#fff;border-color:#0071a1;background:#0071a1}.wcf-home-page-wrapper .wcf-display--none{display:none}.wcf-metabox{background:#fff;box-shadow:none;margin-bottom:20px;border:0;padding:30px 20px;border-radius:2px}.wcf-metabox h2{font-size:18px;margin:0px;font-weight:400}.wcf-metabox__header,.wcf-metabox__body,.wcf-metabox__footer{padding:10px;border-bottom:0}.wcf-metabox__footer{padding-bottom:0px}.wcf-metabox__footer p{margin-top:10px;font-size:14px}
|
9 |
|
admin-core/inc/step-meta.php
CHANGED
@@ -40,17 +40,17 @@ class StepMeta {
|
|
40 |
case 'checkout':
|
41 |
if ( class_exists( 'WooCommerce' ) ) {
|
42 |
$settings = \Cartflows_Checkout_Meta_Data::get_instance()->get_settings( $step_id );
|
43 |
-
}
|
44 |
break;
|
45 |
case 'optin':
|
46 |
if ( class_exists( 'WooCommerce' ) ) {
|
47 |
$settings = \Cartflows_Optin_Meta_Data::get_instance()->get_settings( $step_id );
|
48 |
-
}
|
49 |
break;
|
50 |
case 'thankyou':
|
51 |
if ( class_exists( 'WooCommerce' ) ) {
|
52 |
$settings = \Cartflows_Thankyou_Meta_Data::get_instance()->get_settings( $step_id );
|
53 |
-
}
|
54 |
break;
|
55 |
default:
|
56 |
break;
|
40 |
case 'checkout':
|
41 |
if ( class_exists( 'WooCommerce' ) ) {
|
42 |
$settings = \Cartflows_Checkout_Meta_Data::get_instance()->get_settings( $step_id );
|
43 |
+
}
|
44 |
break;
|
45 |
case 'optin':
|
46 |
if ( class_exists( 'WooCommerce' ) ) {
|
47 |
$settings = \Cartflows_Optin_Meta_Data::get_instance()->get_settings( $step_id );
|
48 |
+
}
|
49 |
break;
|
50 |
case 'thankyou':
|
51 |
if ( class_exists( 'WooCommerce' ) ) {
|
52 |
$settings = \Cartflows_Thankyou_Meta_Data::get_instance()->get_settings( $step_id );
|
53 |
+
}
|
54 |
break;
|
55 |
default:
|
56 |
break;
|
cartflows.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
* Plugin Name: CartFlows
|
4 |
* Plugin URI: https://cartflows.com/
|
5 |
* Description: Create beautiful checkout pages & sales flows for WooCommerce.
|
6 |
-
* Version: 1.6.
|
7 |
* Author: CartFlows Inc
|
8 |
* Author URI: https://cartflows.com/
|
9 |
* Text Domain: cartflows
|
3 |
* Plugin Name: CartFlows
|
4 |
* Plugin URI: https://cartflows.com/
|
5 |
* Description: Create beautiful checkout pages & sales flows for WooCommerce.
|
6 |
+
* Version: 1.6.7
|
7 |
* Author: CartFlows Inc
|
8 |
* Author URI: https://cartflows.com/
|
9 |
* Text Domain: cartflows
|
changelog.txt
CHANGED
@@ -1,3 +1,7 @@
|
|
|
|
|
|
|
|
|
|
1 |
Version 1.6.6 - Thursday, 11th February 2021
|
2 |
- Fix: The single exported flow was not getting imported.
|
3 |
- Fix: CartFlows modules were not getting displayed on the Beaver Builder's Module Setting page.
|
1 |
+
Version 1.6.7 - Thursday, 18th February 2021
|
2 |
+
- Improvement: WooCommerce templates updated.
|
3 |
+
- Fix: Broken menu was getting displayed in the footer for Astra Theme.
|
4 |
+
|
5 |
Version 1.6.6 - Thursday, 11th February 2021
|
6 |
- Fix: The single exported flow was not getting imported.
|
7 |
- Fix: CartFlows modules were not getting displayed on the Beaver Builder's Module Setting page.
|
classes/class-cartflows-loader.php
CHANGED
@@ -136,7 +136,7 @@ if ( ! class_exists( 'Cartflows_Loader' ) ) {
|
|
136 |
define( 'CARTFLOWS_BASE', plugin_basename( CARTFLOWS_FILE ) );
|
137 |
define( 'CARTFLOWS_DIR', plugin_dir_path( CARTFLOWS_FILE ) );
|
138 |
define( 'CARTFLOWS_URL', plugins_url( '/', CARTFLOWS_FILE ) );
|
139 |
-
define( 'CARTFLOWS_VER', '1.6.
|
140 |
|
141 |
define( 'CARTFLOWS_SLUG', 'cartflows' );
|
142 |
define( 'CARTFLOWS_SETTINGS', 'cartflows_settings' );
|
136 |
define( 'CARTFLOWS_BASE', plugin_basename( CARTFLOWS_FILE ) );
|
137 |
define( 'CARTFLOWS_DIR', plugin_dir_path( CARTFLOWS_FILE ) );
|
138 |
define( 'CARTFLOWS_URL', plugins_url( '/', CARTFLOWS_FILE ) );
|
139 |
+
define( 'CARTFLOWS_VER', '1.6.7' );
|
140 |
|
141 |
define( 'CARTFLOWS_SLUG', 'cartflows' );
|
142 |
define( 'CARTFLOWS_SETTINGS', 'cartflows_settings' );
|
languages/cartflows.pot
CHANGED
@@ -2,14 +2,14 @@
|
|
2 |
# This file is distributed under the same license as the CartFlows plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: CartFlows 1.6.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/cartflows\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
-
"POT-Creation-Date: 2021-02-
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.4.0\n"
|
15 |
"X-Domain: cartflows\n"
|
@@ -232,29 +232,59 @@ msgstr ""
|
|
232 |
msgid "Request timeout error. Please check if the firewall or any security plugin is blocking the outgoing HTTP/HTTPS requests to templates.cartflows.com or not. <br><br>To resolve this issue, please check this <a target=\"_blank\" href=\"https://cartflows.com/docs/request-timeout-error-while-importing-the-flow-step-templates/\">article</a>."
|
233 |
msgstr ""
|
234 |
|
235 |
-
|
236 |
-
#: admin-core/ajax/importer.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
237 |
msgid "Flows data not found."
|
238 |
msgstr ""
|
239 |
|
240 |
-
#: admin-core/ajax/importer.php:
|
241 |
msgid "Successfully imported the Flow!"
|
242 |
msgstr ""
|
243 |
|
244 |
-
#: admin-core/ajax/importer.php:
|
245 |
msgid "Step data not found."
|
246 |
msgstr ""
|
247 |
|
248 |
-
#: admin-core/ajax/importer.php:
|
249 |
msgid "Successfully imported the Step!"
|
250 |
msgstr ""
|
251 |
|
252 |
#. translators: %s: step ID
|
253 |
-
#: admin-core/ajax/importer.php:
|
254 |
msgid "Invalid step id %1$s or post id %2$s."
|
255 |
msgstr ""
|
256 |
|
257 |
-
#: admin-core/ajax/importer.php:
|
258 |
msgid "Successful!"
|
259 |
msgstr ""
|
260 |
|
@@ -581,7 +611,7 @@ msgstr ""
|
|
581 |
|
582 |
#: admin-core/inc/global-settings.php:41
|
583 |
msgid ""
|
584 |
-
"Be sure not to add any product in above selected Global Checkout step. Please read information about how to set up Global Checkout here.\
|
585 |
" "
|
586 |
msgstr ""
|
587 |
|
@@ -3708,10 +3738,6 @@ msgstr ""
|
|
3708 |
msgid "Step ID:"
|
3709 |
msgstr ""
|
3710 |
|
3711 |
-
#: woocommerce/template/checkout/form-login.php:32
|
3712 |
-
msgid "If you have shopped with us before, please enter your details below. If you are a new customer, please proceed to the Billing & Shipping section."
|
3713 |
-
msgstr ""
|
3714 |
-
|
3715 |
#: admin-core/assets/build/editor-app.js:1
|
3716 |
#: admin-core/assets/build/settings-app.js:1
|
3717 |
msgid "Settings Saved"
|
2 |
# This file is distributed under the same license as the CartFlows plugin.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: CartFlows 1.6.7\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/cartflows\n"
|
7 |
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
8 |
"Language-Team: LANGUAGE <LL@li.org>\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=UTF-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
12 |
+
"POT-Creation-Date: 2021-02-18T06:12:38+00:00\n"
|
13 |
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
14 |
"X-Generator: WP-CLI 2.4.0\n"
|
15 |
"X-Domain: cartflows\n"
|
232 |
msgid "Request timeout error. Please check if the firewall or any security plugin is blocking the outgoing HTTP/HTTPS requests to templates.cartflows.com or not. <br><br>To resolve this issue, please check this <a target=\"_blank\" href=\"https://cartflows.com/docs/request-timeout-error-while-importing-the-flow-step-templates/\">article</a>."
|
233 |
msgstr ""
|
234 |
|
235 |
+
#. translators: %1$s: link html start, %2$s: link html end
|
236 |
+
#: admin-core/ajax/importer.php:601
|
237 |
+
msgid "CartFlows Pro Required! %1$sUpgrade to CartFlows Pro%2$s"
|
238 |
+
msgstr ""
|
239 |
+
|
240 |
+
#. translators: %1$s: link html start, %2$s: link html end
|
241 |
+
#: admin-core/ajax/importer.php:603
|
242 |
+
msgid "To import the premium flow %1$supgrade to CartFlows Pro%2$s."
|
243 |
+
msgstr ""
|
244 |
+
|
245 |
+
#. translators: %1$s: link html start, %2$s: link html end
|
246 |
+
#: admin-core/ajax/importer.php:606
|
247 |
+
msgid "Activate the CartFlows Pro to import the flow! %1$sActivate CartFlows Pro%2$s"
|
248 |
+
msgstr ""
|
249 |
+
|
250 |
+
#. translators: %1$s: link html start, %2$s: link html end
|
251 |
+
#: admin-core/ajax/importer.php:608
|
252 |
+
msgid "To import the premium flow %1$sactivate Cartflows Pro%2$s and validate the license key."
|
253 |
+
msgstr ""
|
254 |
+
|
255 |
+
#. translators: %1$s: link html start, %2$s: link html end
|
256 |
+
#: admin-core/ajax/importer.php:611
|
257 |
+
msgid "Invalid License Key! %1$sActivate CartFlows Pro%2$s"
|
258 |
+
msgstr ""
|
259 |
+
|
260 |
+
#. translators: %1$s: link html start, %2$s: link html end
|
261 |
+
#: admin-core/ajax/importer.php:613
|
262 |
+
msgid "To import the premium flow %1$sactivate CartFlows Pro%2$s."
|
263 |
+
msgstr ""
|
264 |
+
|
265 |
+
#: admin-core/ajax/importer.php:626
|
266 |
+
#: admin-core/ajax/importer.php:739
|
267 |
msgid "Flows data not found."
|
268 |
msgstr ""
|
269 |
|
270 |
+
#: admin-core/ajax/importer.php:673
|
271 |
msgid "Successfully imported the Flow!"
|
272 |
msgstr ""
|
273 |
|
274 |
+
#: admin-core/ajax/importer.php:760
|
275 |
msgid "Step data not found."
|
276 |
msgstr ""
|
277 |
|
278 |
+
#: admin-core/ajax/importer.php:768
|
279 |
msgid "Successfully imported the Step!"
|
280 |
msgstr ""
|
281 |
|
282 |
#. translators: %s: step ID
|
283 |
+
#: admin-core/ajax/importer.php:797
|
284 |
msgid "Invalid step id %1$s or post id %2$s."
|
285 |
msgstr ""
|
286 |
|
287 |
+
#: admin-core/ajax/importer.php:922
|
288 |
msgid "Successful!"
|
289 |
msgstr ""
|
290 |
|
611 |
|
612 |
#: admin-core/inc/global-settings.php:41
|
613 |
msgid ""
|
614 |
+
"Be sure not to add any product in above selected Global Checkout step. Please read information about how to set up Global Checkout here.\n"
|
615 |
" "
|
616 |
msgstr ""
|
617 |
|
3738 |
msgid "Step ID:"
|
3739 |
msgstr ""
|
3740 |
|
|
|
|
|
|
|
|
|
3741 |
#: admin-core/assets/build/editor-app.js:1
|
3742 |
#: admin-core/assets/build/settings-app.js:1
|
3743 |
msgid "Settings Saved"
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: https://www.paypal.me/BrainstormForce
|
|
4 |
Tags: woocommerce, funnel builder, sales funnels, elementor, beaver builder
|
5 |
Requires at least: 5.4
|
6 |
Tested up to: 5.6
|
7 |
-
Stable tag: 1.6.
|
8 |
Requires PHP: 5.6
|
9 |
License: GPLv2 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
@@ -127,6 +127,10 @@ Glad you asked! Most normal users have less than 3 funnels on a single website,
|
|
127 |
|
128 |
== Changelog ==
|
129 |
|
|
|
|
|
|
|
|
|
130 |
= Version 1.6.6 - Thursday, 11th February 2021 =
|
131 |
* Fix: The single exported flow was not getting imported.
|
132 |
* Fix: CartFlows modules were not getting displayed on the Beaver Builder's Module Setting page.
|
4 |
Tags: woocommerce, funnel builder, sales funnels, elementor, beaver builder
|
5 |
Requires at least: 5.4
|
6 |
Tested up to: 5.6
|
7 |
+
Stable tag: 1.6.7
|
8 |
Requires PHP: 5.6
|
9 |
License: GPLv2 or later
|
10 |
License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
127 |
|
128 |
== Changelog ==
|
129 |
|
130 |
+
= Version 1.6.7 - Thursday, 18th February 2021 =
|
131 |
+
* Improvement: WooCommerce templates updated.
|
132 |
+
* Fix: Broken menu was getting displayed in the footer for Astra Theme.
|
133 |
+
|
134 |
= Version 1.6.6 - Thursday, 11th February 2021 =
|
135 |
* Fix: The single exported flow was not getting imported.
|
136 |
* Fix: CartFlows modules were not getting displayed on the Beaver Builder's Module Setting page.
|
theme-support/astra/class-cartflows-astra-compatibility.php
CHANGED
@@ -46,6 +46,7 @@ if ( ! class_exists( 'Cartflows_Astra_Compatibility' ) ) :
|
|
46 |
add_action( 'cartflows_optin_before_shortcode', array( $this, 'cartflows_theme_compatibility_astra' ) );
|
47 |
|
48 |
add_action( 'wp', array( $this, 'cartflows_load_wp_actions_for_astra' ), 56 );
|
|
|
49 |
}
|
50 |
|
51 |
|
@@ -69,6 +70,35 @@ if ( ! class_exists( 'Cartflows_Astra_Compatibility' ) ) :
|
|
69 |
add_filter( 'astra_theme_woocommerce_dynamic_css', '__return_empty_string' );
|
70 |
}
|
71 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
72 |
|
73 |
/**
|
74 |
* Function to add/remove the actions/hooks on wp action.
|
46 |
add_action( 'cartflows_optin_before_shortcode', array( $this, 'cartflows_theme_compatibility_astra' ) );
|
47 |
|
48 |
add_action( 'wp', array( $this, 'cartflows_load_wp_actions_for_astra' ), 56 );
|
49 |
+
add_action( 'wp', array( $this, 'remove_page_template_specific_action' ), 10 );
|
50 |
}
|
51 |
|
52 |
|
70 |
add_filter( 'astra_theme_woocommerce_dynamic_css', '__return_empty_string' );
|
71 |
}
|
72 |
|
73 |
+
/**
|
74 |
+
* Function to remove page template specific actions.
|
75 |
+
* Used to remove undesigned menu from the footer of the CartFlows pages only.
|
76 |
+
*
|
77 |
+
* @since 1.6.6
|
78 |
+
*
|
79 |
+
* @return void
|
80 |
+
*/
|
81 |
+
public function remove_page_template_specific_action() {
|
82 |
+
|
83 |
+
// Return if not the CartFlows page.
|
84 |
+
if ( ! wcf()->utils->is_step_post_type() ) {
|
85 |
+
return;
|
86 |
+
}
|
87 |
+
|
88 |
+
$page_template = get_post_meta( _get_wcf_step_id(), '_wp_page_template', true );
|
89 |
+
|
90 |
+
if ( _wcf_supported_template( $page_template ) ) {
|
91 |
+
|
92 |
+
if ( ! class_exists( 'Astra_Builder_Header' ) ) {
|
93 |
+
return;
|
94 |
+
}
|
95 |
+
|
96 |
+
$astra_builder_header = Astra_Builder_Header::get_instance();
|
97 |
+
|
98 |
+
remove_action( 'wp_footer', array( $astra_builder_header, 'mobile_popup' ) );
|
99 |
+
}
|
100 |
+
|
101 |
+
}
|
102 |
|
103 |
/**
|
104 |
* Function to add/remove the actions/hooks on wp action.
|
woocommerce/template/cart/cart-shipping.php
CHANGED
@@ -13,8 +13,8 @@
|
|
13 |
* the readme will list any important changes.
|
14 |
*
|
15 |
* @see https://docs.woocommerce.com/document/template-structure/
|
16 |
-
* @package WooCommerce
|
17 |
-
* @version 3.
|
18 |
*/
|
19 |
|
20 |
defined( 'ABSPATH' ) || exit;
|
@@ -48,23 +48,27 @@ $calculator_text = '';
|
|
48 |
<?php
|
49 |
if ( $formatted_destination ) {
|
50 |
// Translators: $s shipping destination.
|
51 |
-
printf( esc_html__( '
|
52 |
-
$calculator_text =
|
53 |
} else {
|
54 |
-
echo
|
55 |
}
|
56 |
?>
|
57 |
</p>
|
58 |
<?php endif; ?>
|
59 |
<?php
|
60 |
elseif ( ! $has_calculated_shipping || ! $formatted_destination ) :
|
61 |
-
|
|
|
|
|
|
|
|
|
62 |
elseif ( ! is_cart() ) :
|
63 |
-
echo wp_kses_post( apply_filters( 'woocommerce_no_shipping_available_html', __( 'There are no shipping
|
64 |
else :
|
65 |
// Translators: $s shipping destination.
|
66 |
echo wp_kses_post( apply_filters( 'woocommerce_cart_no_shipping_available_html', sprintf( esc_html__( 'No shipping options were found for %s.', 'woocommerce' ) . ' ', '<strong>' . esc_html( $formatted_destination ) . '</strong>' ) ) );
|
67 |
-
$calculator_text =
|
68 |
endif;
|
69 |
?>
|
70 |
|
13 |
* the readme will list any important changes.
|
14 |
*
|
15 |
* @see https://docs.woocommerce.com/document/template-structure/
|
16 |
+
* @package WooCommerce\Templates
|
17 |
+
* @version 3.6.0
|
18 |
*/
|
19 |
|
20 |
defined( 'ABSPATH' ) || exit;
|
48 |
<?php
|
49 |
if ( $formatted_destination ) {
|
50 |
// Translators: $s shipping destination.
|
51 |
+
printf( esc_html__( 'Shipping to %s.', 'woocommerce' ) . ' ', '<strong>' . esc_html( $formatted_destination ) . '</strong>' );
|
52 |
+
$calculator_text = esc_html__( 'Change address', 'woocommerce' );
|
53 |
} else {
|
54 |
+
echo wp_kses_post( apply_filters( 'woocommerce_shipping_estimate_html', __( 'Shipping options will be updated during checkout.', 'woocommerce' ) ) );
|
55 |
}
|
56 |
?>
|
57 |
</p>
|
58 |
<?php endif; ?>
|
59 |
<?php
|
60 |
elseif ( ! $has_calculated_shipping || ! $formatted_destination ) :
|
61 |
+
if ( is_cart() && 'no' === get_option( 'woocommerce_enable_shipping_calc' ) ) {
|
62 |
+
echo wp_kses_post( apply_filters( 'woocommerce_shipping_not_enabled_on_cart_html', __( 'Shipping costs are calculated during checkout.', 'woocommerce' ) ) );
|
63 |
+
} else {
|
64 |
+
echo wp_kses_post( apply_filters( 'woocommerce_shipping_may_be_available_html', __( 'Enter your address to view shipping options.', 'woocommerce' ) ) );
|
65 |
+
}
|
66 |
elseif ( ! is_cart() ) :
|
67 |
+
echo wp_kses_post( apply_filters( 'woocommerce_no_shipping_available_html', __( 'There are no shipping options available. Please ensure that your address has been entered correctly, or contact us if you need any help.', 'woocommerce' ) ) );
|
68 |
else :
|
69 |
// Translators: $s shipping destination.
|
70 |
echo wp_kses_post( apply_filters( 'woocommerce_cart_no_shipping_available_html', sprintf( esc_html__( 'No shipping options were found for %s.', 'woocommerce' ) . ' ', '<strong>' . esc_html( $formatted_destination ) . '</strong>' ) ) );
|
71 |
+
$calculator_text = esc_html__( 'Enter a different address', 'woocommerce' );
|
72 |
endif;
|
73 |
?>
|
74 |
|
woocommerce/template/checkout/form-billing.php
CHANGED
@@ -11,24 +11,21 @@
|
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
-
* @
|
15 |
-
* @
|
16 |
-
* @
|
17 |
*/
|
18 |
|
19 |
-
|
20 |
-
exit; // Exit if accessed directly.
|
21 |
-
}
|
22 |
-
|
23 |
?>
|
24 |
<div class="woocommerce-billing-fields">
|
25 |
<?php if ( wc_ship_to_billing_address_only() && WC()->cart->needs_shipping() ) : ?>
|
26 |
|
27 |
-
<h3><?php
|
28 |
|
29 |
<?php else : ?>
|
30 |
|
31 |
-
<h3><?php echo apply_filters( 'cartflows_woo_billling_text',
|
32 |
|
33 |
<?php endif; ?>
|
34 |
|
@@ -36,12 +33,9 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
36 |
|
37 |
<div class="woocommerce-billing-fields__field-wrapper">
|
38 |
<?php
|
39 |
-
|
40 |
|
41 |
foreach ( $fields as $key => $field ) {
|
42 |
-
if ( isset( $field['country_field'], $fields[ $field['country_field'] ] ) ) {
|
43 |
-
$field['country'] = $checkout->get_value( $field['country_field'] );
|
44 |
-
}
|
45 |
woocommerce_form_field( $key, $field, $checkout->get_value( $key ) );
|
46 |
}
|
47 |
?>
|
@@ -56,7 +50,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
56 |
|
57 |
<p class="form-row form-row-wide create-account">
|
58 |
<label class="woocommerce-form__label woocommerce-form__label-for-checkbox checkbox">
|
59 |
-
<input class="woocommerce-form__input woocommerce-form__input-checkbox input-checkbox" id="createaccount" <?php checked( ( true === $checkout->get_value( 'createaccount' ) || ( true === apply_filters( 'woocommerce_create_account_default_checked', false ) ) ), true ); ?> type="checkbox" name="createaccount" value="1" /> <span><?php
|
60 |
</label>
|
61 |
</p>
|
62 |
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
+
* @version 3.6.0
|
16 |
+
* @global WC_Checkout $checkout
|
17 |
*/
|
18 |
|
19 |
+
defined( 'ABSPATH' ) || exit;
|
|
|
|
|
|
|
20 |
?>
|
21 |
<div class="woocommerce-billing-fields">
|
22 |
<?php if ( wc_ship_to_billing_address_only() && WC()->cart->needs_shipping() ) : ?>
|
23 |
|
24 |
+
<h3><?php esc_html_e( 'Billing & Shipping', 'woocommerce' ); ?></h3>
|
25 |
|
26 |
<?php else : ?>
|
27 |
|
28 |
+
<h3><?php echo wp_kses_post( apply_filters( 'cartflows_woo_billling_text', esc_html__( 'Billing details', 'woocommerce' ) ) ); ?></h3>
|
29 |
|
30 |
<?php endif; ?>
|
31 |
|
33 |
|
34 |
<div class="woocommerce-billing-fields__field-wrapper">
|
35 |
<?php
|
36 |
+
$fields = $checkout->get_checkout_fields( 'billing' );
|
37 |
|
38 |
foreach ( $fields as $key => $field ) {
|
|
|
|
|
|
|
39 |
woocommerce_form_field( $key, $field, $checkout->get_value( $key ) );
|
40 |
}
|
41 |
?>
|
50 |
|
51 |
<p class="form-row form-row-wide create-account">
|
52 |
<label class="woocommerce-form__label woocommerce-form__label-for-checkbox checkbox">
|
53 |
+
<input class="woocommerce-form__input woocommerce-form__input-checkbox input-checkbox" id="createaccount" <?php checked( ( true === $checkout->get_value( 'createaccount' ) || ( true === apply_filters( 'woocommerce_create_account_default_checked', false ) ) ), true ); ?> type="checkbox" name="createaccount" value="1" /> <span><?php esc_html_e( 'Create an account?', 'woocommerce' ); ?></span>
|
54 |
</label>
|
55 |
</p>
|
56 |
|
woocommerce/template/checkout/form-checkout.php
CHANGED
@@ -11,7 +11,7 @@
|
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
-
* @package WooCommerce
|
15 |
* @version 3.5.0
|
16 |
*/
|
17 |
|
@@ -48,22 +48,24 @@ if ( ! $checkout->is_registration_enabled() && $checkout->is_registration_requir
|
|
48 |
<?php do_action( 'woocommerce_checkout_after_customer_details' ); ?>
|
49 |
|
50 |
<?php endif; ?>
|
51 |
-
|
52 |
-
<div class='wcf-order-wrap'>
|
53 |
|
|
|
|
|
54 |
<?php do_action( 'cartflows_woocommerce_checkout_before_order_heading' ); ?>
|
55 |
|
56 |
-
|
57 |
-
|
|
|
|
|
58 |
<?php do_action( 'woocommerce_checkout_before_order_review' ); ?>
|
59 |
|
60 |
<div id="order_review" class="woocommerce-checkout-review-order">
|
61 |
<?php do_action( 'woocommerce_checkout_order_review' ); ?>
|
62 |
</div>
|
63 |
-
|
64 |
<?php do_action( 'woocommerce_checkout_after_order_review' ); ?>
|
|
|
65 |
</div>
|
66 |
-
|
67 |
</form>
|
68 |
|
69 |
<?php do_action( 'woocommerce_after_checkout_form', $checkout ); ?>
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
* @version 3.5.0
|
16 |
*/
|
17 |
|
48 |
<?php do_action( 'woocommerce_checkout_after_customer_details' ); ?>
|
49 |
|
50 |
<?php endif; ?>
|
|
|
|
|
51 |
|
52 |
+
<div class='wcf-order-wrap'>
|
53 |
+
|
54 |
<?php do_action( 'cartflows_woocommerce_checkout_before_order_heading' ); ?>
|
55 |
|
56 |
+
<?php do_action( 'woocommerce_checkout_before_order_review_heading' ); ?>
|
57 |
+
|
58 |
+
<h3 id="order_review_heading"><?php echo wp_kses_post( apply_filters( 'cartflows_woo_your_order_text', esc_html__( 'Your order', 'woocommerce' ) ) ); ?></h3>
|
59 |
+
|
60 |
<?php do_action( 'woocommerce_checkout_before_order_review' ); ?>
|
61 |
|
62 |
<div id="order_review" class="woocommerce-checkout-review-order">
|
63 |
<?php do_action( 'woocommerce_checkout_order_review' ); ?>
|
64 |
</div>
|
65 |
+
|
66 |
<?php do_action( 'woocommerce_checkout_after_order_review' ); ?>
|
67 |
+
|
68 |
</div>
|
|
|
69 |
</form>
|
70 |
|
71 |
<?php do_action( 'woocommerce_after_checkout_form', $checkout ); ?>
|
woocommerce/template/checkout/form-coupon.php
CHANGED
@@ -11,7 +11,7 @@
|
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
-
* @package WooCommerce
|
15 |
* @version 3.4.4
|
16 |
*/
|
17 |
|
@@ -23,7 +23,7 @@ if ( ! wc_coupons_enabled() ) { // @codingStandardsIgnoreLine.
|
|
23 |
|
24 |
?>
|
25 |
<div class="woocommerce-form-coupon-toggle">
|
26 |
-
<?php wc_print_notice( apply_filters( 'woocommerce_checkout_coupon_message',
|
27 |
</div>
|
28 |
|
29 |
<form class="checkout_coupon woocommerce-form-coupon" method="post" style="display:none">
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
* @version 3.4.4
|
16 |
*/
|
17 |
|
23 |
|
24 |
?>
|
25 |
<div class="woocommerce-form-coupon-toggle">
|
26 |
+
<?php wc_print_notice( apply_filters( 'woocommerce_checkout_coupon_message', esc_html__( 'Have a coupon?', 'woocommerce' ) . ' <a href="#" class="showcoupon">' . esc_html__( 'Click here to enter your code', 'woocommerce' ) . '</a>' ), 'notice' ); ?>
|
27 |
</div>
|
28 |
|
29 |
<form class="checkout_coupon woocommerce-form-coupon" method="post" style="display:none">
|
woocommerce/template/checkout/form-login.php
CHANGED
@@ -11,8 +11,8 @@
|
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
-
* @package WooCommerce
|
15 |
-
* @version 3.
|
16 |
*/
|
17 |
|
18 |
defined( 'ABSPATH' ) || exit;
|
@@ -23,14 +23,14 @@ if ( is_user_logged_in() || 'no' === get_option( 'woocommerce_enable_checkout_lo
|
|
23 |
|
24 |
?>
|
25 |
<div class="woocommerce-form-login-toggle">
|
26 |
-
<?php wc_print_notice( apply_filters( 'woocommerce_checkout_login_message',
|
27 |
</div>
|
28 |
<?php
|
29 |
|
30 |
woocommerce_login_form(
|
31 |
array(
|
32 |
-
'message' =>
|
33 |
-
'redirect' =>
|
34 |
'hidden' => true,
|
35 |
)
|
36 |
);
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
+
* @version 3.8.0
|
16 |
*/
|
17 |
|
18 |
defined( 'ABSPATH' ) || exit;
|
23 |
|
24 |
?>
|
25 |
<div class="woocommerce-form-login-toggle">
|
26 |
+
<?php wc_print_notice( apply_filters( 'woocommerce_checkout_login_message', esc_html__( 'Returning customer?', 'woocommerce' ) ) . ' <a href="#" class="showlogin">' . esc_html__( 'Click here to login', 'woocommerce' ) . '</a>', 'notice' ); ?>
|
27 |
</div>
|
28 |
<?php
|
29 |
|
30 |
woocommerce_login_form(
|
31 |
array(
|
32 |
+
'message' => esc_html__( 'If you have shopped with us before, please enter your details below. If you are a new customer, please proceed to the Billing section.', 'woocommerce' ),
|
33 |
+
'redirect' => wc_get_checkout_url(),
|
34 |
'hidden' => true,
|
35 |
)
|
36 |
);
|
woocommerce/template/checkout/form-shipping.php
CHANGED
@@ -11,7 +11,7 @@
|
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
-
* @package WooCommerce
|
15 |
* @version 3.6.0
|
16 |
* @global WC_Checkout $checkout
|
17 |
*/
|
@@ -23,7 +23,7 @@ defined( 'ABSPATH' ) || exit;
|
|
23 |
|
24 |
<h3 id="ship-to-different-address">
|
25 |
<label class="woocommerce-form__label woocommerce-form__label-for-checkbox checkbox">
|
26 |
-
<input id="ship-to-different-address-checkbox" class="woocommerce-form__input woocommerce-form__input-checkbox input-checkbox" <?php checked( apply_filters( 'woocommerce_ship_to_different_address_checked', 'shipping' === get_option( 'woocommerce_ship_to_destination' ) ? 1 : 0 ), 1 ); ?> type="checkbox" name="ship_to_different_address" value="1" /> <span><?php echo apply_filters( 'cartflows_woo_shipping_text', esc_html__( 'Ship to a different address?', 'woocommerce' ) ); ?></span>
|
27 |
</label>
|
28 |
</h3>
|
29 |
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
* @version 3.6.0
|
16 |
* @global WC_Checkout $checkout
|
17 |
*/
|
23 |
|
24 |
<h3 id="ship-to-different-address">
|
25 |
<label class="woocommerce-form__label woocommerce-form__label-for-checkbox checkbox">
|
26 |
+
<input id="ship-to-different-address-checkbox" class="woocommerce-form__input woocommerce-form__input-checkbox input-checkbox" <?php checked( apply_filters( 'woocommerce_ship_to_different_address_checked', 'shipping' === get_option( 'woocommerce_ship_to_destination' ) ? 1 : 0 ), 1 ); ?> type="checkbox" name="ship_to_different_address" value="1" /> <span><?php echo wp_kses_post( apply_filters( 'cartflows_woo_shipping_text', esc_html__( 'Ship to a different address?', 'woocommerce' ) ) ); ?></span>
|
27 |
</label>
|
28 |
</h3>
|
29 |
|
woocommerce/template/checkout/payment-method.php
CHANGED
@@ -11,7 +11,7 @@
|
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
-
* @package WooCommerce
|
15 |
* @version 3.5.0
|
16 |
*/
|
17 |
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
* @version 3.5.0
|
16 |
*/
|
17 |
|
woocommerce/template/checkout/payment.php
CHANGED
@@ -11,11 +11,12 @@
|
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
-
* @package WooCommerce
|
15 |
* @version 3.5.3
|
16 |
*/
|
17 |
|
18 |
defined( 'ABSPATH' ) || exit;
|
|
|
19 |
if ( ! is_ajax() ) {
|
20 |
do_action( 'woocommerce_review_order_before_payment' );
|
21 |
}
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
* @version 3.5.3
|
16 |
*/
|
17 |
|
18 |
defined( 'ABSPATH' ) || exit;
|
19 |
+
|
20 |
if ( ! is_ajax() ) {
|
21 |
do_action( 'woocommerce_review_order_before_payment' );
|
22 |
}
|
woocommerce/template/checkout/review-order.php
CHANGED
@@ -10,54 +10,50 @@
|
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
-
* @see
|
14 |
-
* @
|
15 |
-
* @
|
16 |
-
* @version 3.3.0
|
17 |
*/
|
18 |
|
19 |
-
|
20 |
-
exit;
|
21 |
-
}
|
22 |
?>
|
23 |
<table class="shop_table woocommerce-checkout-review-order-table">
|
24 |
<thead>
|
25 |
<tr>
|
26 |
-
<th class="product-name"><?php
|
27 |
-
<th class="product-total"><?php
|
28 |
</tr>
|
29 |
</thead>
|
30 |
<tbody>
|
31 |
<?php
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
$_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
|
36 |
|
37 |
if ( $_product && $_product->exists() && $cart_item['quantity'] > 0 && apply_filters( 'woocommerce_checkout_cart_item_visible', true, $cart_item, $cart_item_key ) ) {
|
38 |
?>
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
<?php echo apply_filters( '
|
43 |
-
<?php echo
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
<?php
|
51 |
}
|
52 |
}
|
53 |
|
54 |
-
|
55 |
?>
|
56 |
</tbody>
|
57 |
<tfoot>
|
58 |
|
59 |
<tr class="cart-subtotal">
|
60 |
-
<th><?php
|
61 |
<td><?php wc_cart_totals_subtotal_html(); ?></td>
|
62 |
</tr>
|
63 |
|
@@ -87,8 +83,8 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
87 |
|
88 |
<?php if ( wc_tax_enabled() && ! WC()->cart->display_prices_including_tax() ) : ?>
|
89 |
<?php if ( 'itemized' === get_option( 'woocommerce_tax_total_display' ) ) : ?>
|
90 |
-
<?php foreach ( WC()->cart->get_tax_totals() as $code => $tax ) : ?>
|
91 |
-
<tr class="tax-rate tax-rate-<?php echo sanitize_title( $code ); ?>">
|
92 |
<th><?php echo esc_html( $tax->label ); ?></th>
|
93 |
<td><?php echo wp_kses_post( $tax->formatted_amount ); ?></td>
|
94 |
</tr>
|
@@ -104,7 +100,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
104 |
<?php do_action( 'woocommerce_review_order_before_order_total' ); ?>
|
105 |
|
106 |
<tr class="order-total">
|
107 |
-
<th><?php
|
108 |
<td><?php wc_cart_totals_order_total_html(); ?></td>
|
109 |
</tr>
|
110 |
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
+
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
+
* @version 3.8.0
|
|
|
16 |
*/
|
17 |
|
18 |
+
defined( 'ABSPATH' ) || exit;
|
|
|
|
|
19 |
?>
|
20 |
<table class="shop_table woocommerce-checkout-review-order-table">
|
21 |
<thead>
|
22 |
<tr>
|
23 |
+
<th class="product-name"><?php esc_html_e( 'Product', 'woocommerce' ); ?></th>
|
24 |
+
<th class="product-total"><?php esc_html_e( 'Subtotal', 'woocommerce' ); ?></th>
|
25 |
</tr>
|
26 |
</thead>
|
27 |
<tbody>
|
28 |
<?php
|
29 |
+
do_action( 'woocommerce_review_order_before_cart_contents' );
|
30 |
+
|
31 |
+
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
|
32 |
$_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
|
33 |
|
34 |
if ( $_product && $_product->exists() && $cart_item['quantity'] > 0 && apply_filters( 'woocommerce_checkout_cart_item_visible', true, $cart_item, $cart_item_key ) ) {
|
35 |
?>
|
36 |
+
<tr class="<?php echo esc_attr( apply_filters( 'woocommerce_cart_item_class', 'cart_item', $cart_item, $cart_item_key ) ); ?>">
|
37 |
+
<td class="product-name">
|
38 |
+
<?php echo apply_filters( 'woocommerce_cart_item_name', $_product->get_name(), $cart_item, $cart_item_key ) . ' '; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
|
39 |
+
<?php echo apply_filters( 'woocommerce_checkout_cart_item_quantity', ' <strong class="product-quantity">' . sprintf( '× %s', $cart_item['quantity'] ) . '</strong>', $cart_item, $cart_item_key ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
|
40 |
+
<?php echo wc_get_formatted_cart_item_data( $cart_item ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
|
41 |
+
</td>
|
42 |
+
<td class="product-total">
|
43 |
+
<?php echo apply_filters( 'woocommerce_cart_item_subtotal', WC()->cart->get_product_subtotal( $_product, $cart_item['quantity'] ), $cart_item, $cart_item_key ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
|
44 |
+
</td>
|
45 |
+
</tr>
|
46 |
+
<?php
|
|
|
47 |
}
|
48 |
}
|
49 |
|
50 |
+
do_action( 'woocommerce_review_order_after_cart_contents' );
|
51 |
?>
|
52 |
</tbody>
|
53 |
<tfoot>
|
54 |
|
55 |
<tr class="cart-subtotal">
|
56 |
+
<th><?php esc_html_e( 'Subtotal', 'woocommerce' ); ?></th>
|
57 |
<td><?php wc_cart_totals_subtotal_html(); ?></td>
|
58 |
</tr>
|
59 |
|
83 |
|
84 |
<?php if ( wc_tax_enabled() && ! WC()->cart->display_prices_including_tax() ) : ?>
|
85 |
<?php if ( 'itemized' === get_option( 'woocommerce_tax_total_display' ) ) : ?>
|
86 |
+
<?php foreach ( WC()->cart->get_tax_totals() as $code => $tax ) : // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited ?>
|
87 |
+
<tr class="tax-rate tax-rate-<?php echo esc_attr( sanitize_title( $code ) ); ?>">
|
88 |
<th><?php echo esc_html( $tax->label ); ?></th>
|
89 |
<td><?php echo wp_kses_post( $tax->formatted_amount ); ?></td>
|
90 |
</tr>
|
100 |
<?php do_action( 'woocommerce_review_order_before_order_total' ); ?>
|
101 |
|
102 |
<tr class="order-total">
|
103 |
+
<th><?php esc_html_e( 'Total', 'woocommerce' ); ?></th>
|
104 |
<td><?php wc_cart_totals_order_total_html(); ?></td>
|
105 |
</tr>
|
106 |
|
woocommerce/template/checkout/thankyou.php
CHANGED
@@ -10,72 +10,72 @@
|
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
-
* @see
|
14 |
-
* @
|
15 |
-
* @
|
16 |
-
* @version 3.2.0
|
17 |
*/
|
18 |
|
19 |
-
|
20 |
-
exit;
|
21 |
-
}
|
22 |
?>
|
23 |
|
24 |
<div class="woocommerce-order">
|
25 |
|
26 |
-
<?php
|
|
|
|
|
|
|
|
|
27 |
|
28 |
<?php if ( $order->has_status( 'failed' ) ) : ?>
|
29 |
|
30 |
-
<p class="woocommerce-notice woocommerce-notice--error woocommerce-thankyou-order-failed"><?php
|
31 |
|
32 |
<p class="woocommerce-notice woocommerce-notice--error woocommerce-thankyou-order-failed-actions">
|
33 |
-
<a href="<?php echo esc_url( $order->get_checkout_payment_url() ); ?>" class="button pay"><?php
|
34 |
<?php if ( is_user_logged_in() ) : ?>
|
35 |
-
<a href="<?php echo esc_url( wc_get_page_permalink( 'myaccount' ) ); ?>" class="button pay"><?php
|
36 |
<?php endif; ?>
|
37 |
</p>
|
38 |
|
39 |
<?php else : ?>
|
40 |
|
41 |
-
<p class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"><?php echo apply_filters( 'woocommerce_thankyou_order_received_text',
|
42 |
-
|
43 |
<?php if ( $order->has_status( 'cancelled' ) ) :
|
44 |
do_action( 'cartflows_woocommerce_order_overview_cancelled', $order );
|
45 |
endif; ?>
|
46 |
<ul class="woocommerce-order-overview woocommerce-thankyou-order-details order_details">
|
47 |
|
48 |
<li class="woocommerce-order-overview__order order">
|
49 |
-
<?php
|
50 |
-
<strong><?php echo $order->get_order_number(); ?></strong>
|
51 |
</li>
|
52 |
|
53 |
<li class="woocommerce-order-overview__date date">
|
54 |
-
<?php
|
55 |
-
<strong><?php echo wc_format_datetime( $order->get_date_created() ); ?></strong>
|
56 |
</li>
|
57 |
|
58 |
<?php if ( is_user_logged_in() && $order->get_user_id() === get_current_user_id() && $order->get_billing_email() ) : ?>
|
59 |
<li class="woocommerce-order-overview__email email">
|
60 |
-
<?php
|
61 |
-
<strong><?php echo $order->get_billing_email(); ?></strong>
|
62 |
</li>
|
63 |
<?php endif; ?>
|
64 |
|
65 |
-
<?php if ( ! $order->has_status( 'cancelled' ) ) : ?>
|
66 |
<li class="woocommerce-order-overview__total total">
|
67 |
-
<?php
|
68 |
-
<strong><?php echo $order->get_formatted_order_total(); ?></strong>
|
69 |
</li>
|
70 |
-
<?php endif; ?>
|
71 |
|
72 |
<?php if ( $order->get_payment_method_title() ) : ?>
|
73 |
<li class="woocommerce-order-overview__payment-method method">
|
74 |
-
<?php
|
75 |
<strong><?php echo wp_kses_post( $order->get_payment_method_title() ); ?></strong>
|
76 |
</li>
|
77 |
<?php endif; ?>
|
|
|
78 |
</ul>
|
|
|
79 |
<?php endif; ?>
|
80 |
|
81 |
<?php do_action( 'woocommerce_thankyou_' . $order->get_payment_method(), $order->get_id() ); ?>
|
@@ -83,7 +83,7 @@ if ( ! defined( 'ABSPATH' ) ) {
|
|
83 |
|
84 |
<?php else : ?>
|
85 |
|
86 |
-
<p class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"><?php echo apply_filters( 'woocommerce_thankyou_order_received_text',
|
87 |
|
88 |
<?php endif; ?>
|
89 |
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
+
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
+
* @version 3.7.0
|
|
|
16 |
*/
|
17 |
|
18 |
+
defined( 'ABSPATH' ) || exit;
|
|
|
|
|
19 |
?>
|
20 |
|
21 |
<div class="woocommerce-order">
|
22 |
|
23 |
+
<?php
|
24 |
+
if ( $order ) :
|
25 |
+
|
26 |
+
do_action( 'woocommerce_before_thankyou', $order->get_id() );
|
27 |
+
?>
|
28 |
|
29 |
<?php if ( $order->has_status( 'failed' ) ) : ?>
|
30 |
|
31 |
+
<p class="woocommerce-notice woocommerce-notice--error woocommerce-thankyou-order-failed"><?php esc_html_e( 'Unfortunately your order cannot be processed as the originating bank/merchant has declined your transaction. Please attempt your purchase again.', 'woocommerce' ); ?></p>
|
32 |
|
33 |
<p class="woocommerce-notice woocommerce-notice--error woocommerce-thankyou-order-failed-actions">
|
34 |
+
<a href="<?php echo esc_url( $order->get_checkout_payment_url() ); ?>" class="button pay"><?php esc_html_e( 'Pay', 'woocommerce' ); ?></a>
|
35 |
<?php if ( is_user_logged_in() ) : ?>
|
36 |
+
<a href="<?php echo esc_url( wc_get_page_permalink( 'myaccount' ) ); ?>" class="button pay"><?php esc_html_e( 'My account', 'woocommerce' ); ?></a>
|
37 |
<?php endif; ?>
|
38 |
</p>
|
39 |
|
40 |
<?php else : ?>
|
41 |
|
42 |
+
<p class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"><?php echo apply_filters( 'woocommerce_thankyou_order_received_text', esc_html__( 'Thank you. Your order has been received.', 'woocommerce' ), $order ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></p>
|
|
|
43 |
<?php if ( $order->has_status( 'cancelled' ) ) :
|
44 |
do_action( 'cartflows_woocommerce_order_overview_cancelled', $order );
|
45 |
endif; ?>
|
46 |
<ul class="woocommerce-order-overview woocommerce-thankyou-order-details order_details">
|
47 |
|
48 |
<li class="woocommerce-order-overview__order order">
|
49 |
+
<?php esc_html_e( 'Order number:', 'woocommerce' ); ?>
|
50 |
+
<strong><?php echo $order->get_order_number(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></strong>
|
51 |
</li>
|
52 |
|
53 |
<li class="woocommerce-order-overview__date date">
|
54 |
+
<?php esc_html_e( 'Date:', 'woocommerce' ); ?>
|
55 |
+
<strong><?php echo wc_format_datetime( $order->get_date_created() ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></strong>
|
56 |
</li>
|
57 |
|
58 |
<?php if ( is_user_logged_in() && $order->get_user_id() === get_current_user_id() && $order->get_billing_email() ) : ?>
|
59 |
<li class="woocommerce-order-overview__email email">
|
60 |
+
<?php esc_html_e( 'Email:', 'woocommerce' ); ?>
|
61 |
+
<strong><?php echo $order->get_billing_email(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></strong>
|
62 |
</li>
|
63 |
<?php endif; ?>
|
64 |
|
|
|
65 |
<li class="woocommerce-order-overview__total total">
|
66 |
+
<?php esc_html_e( 'Total:', 'woocommerce' ); ?>
|
67 |
+
<strong><?php echo $order->get_formatted_order_total(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></strong>
|
68 |
</li>
|
|
|
69 |
|
70 |
<?php if ( $order->get_payment_method_title() ) : ?>
|
71 |
<li class="woocommerce-order-overview__payment-method method">
|
72 |
+
<?php esc_html_e( 'Payment method:', 'woocommerce' ); ?>
|
73 |
<strong><?php echo wp_kses_post( $order->get_payment_method_title() ); ?></strong>
|
74 |
</li>
|
75 |
<?php endif; ?>
|
76 |
+
|
77 |
</ul>
|
78 |
+
|
79 |
<?php endif; ?>
|
80 |
|
81 |
<?php do_action( 'woocommerce_thankyou_' . $order->get_payment_method(), $order->get_id() ); ?>
|
83 |
|
84 |
<?php else : ?>
|
85 |
|
86 |
+
<p class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"><?php echo apply_filters( 'woocommerce_thankyou_order_received_text', esc_html__( 'Thank you. Your order has been received.', 'woocommerce' ), null ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></p>
|
87 |
|
88 |
<?php endif; ?>
|
89 |
|
woocommerce/template/global/form-login.php
CHANGED
@@ -11,7 +11,7 @@
|
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
-
* @package WooCommerce
|
15 |
* @version 3.6.0
|
16 |
*/
|
17 |
|
@@ -43,22 +43,16 @@ if ( is_user_logged_in() ) {
|
|
43 |
<?php do_action( 'woocommerce_login_form' ); ?>
|
44 |
|
45 |
<p class="form-row">
|
|
|
|
|
|
|
46 |
<?php wp_nonce_field( 'woocommerce-login', 'woocommerce-login-nonce' ); ?>
|
47 |
<input type="hidden" name="redirect" value="<?php echo esc_url( $redirect ); ?>" />
|
48 |
<button type="submit" class="woocommerce-button button woocommerce-form-login__submit" name="login" value="<?php esc_attr_e( 'Login', 'woocommerce' ); ?>"><?php esc_html_e( 'Login', 'woocommerce' ); ?></button>
|
49 |
-
<span class="form-row login-form-actions">
|
50 |
-
<span class="remember_me">
|
51 |
-
<label class="woocommerce-form__label woocommerce-form__label-for-checkbox woocommerce-form-login__rememberme">
|
52 |
-
<input class="woocommerce-form__input woocommerce-form__input-checkbox" name="rememberme" type="checkbox" id="rememberme" value="forever" />
|
53 |
-
<span><?php esc_html_e( 'Remember me', 'woocommerce' ); ?></span>
|
54 |
-
</label>
|
55 |
-
</span>
|
56 |
-
<span class="lost_password">
|
57 |
-
<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>"><?php esc_html_e( 'Lost your password?', 'woocommerce' ); ?></a>
|
58 |
-
</span>
|
59 |
-
</span>
|
60 |
</p>
|
61 |
-
|
|
|
|
|
62 |
|
63 |
<div class="clear"></div>
|
64 |
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
* @version 3.6.0
|
16 |
*/
|
17 |
|
43 |
<?php do_action( 'woocommerce_login_form' ); ?>
|
44 |
|
45 |
<p class="form-row">
|
46 |
+
<label class="woocommerce-form__label woocommerce-form__label-for-checkbox woocommerce-form-login__rememberme">
|
47 |
+
<input class="woocommerce-form__input woocommerce-form__input-checkbox" name="rememberme" type="checkbox" id="rememberme" value="forever" /> <span><?php esc_html_e( 'Remember me', 'woocommerce' ); ?></span>
|
48 |
+
</label>
|
49 |
<?php wp_nonce_field( 'woocommerce-login', 'woocommerce-login-nonce' ); ?>
|
50 |
<input type="hidden" name="redirect" value="<?php echo esc_url( $redirect ); ?>" />
|
51 |
<button type="submit" class="woocommerce-button button woocommerce-form-login__submit" name="login" value="<?php esc_attr_e( 'Login', 'woocommerce' ); ?>"><?php esc_html_e( 'Login', 'woocommerce' ); ?></button>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
</p>
|
53 |
+
<p class="lost_password">
|
54 |
+
<a href="<?php echo esc_url( wp_lostpassword_url() ); ?>"><?php esc_html_e( 'Lost your password?', 'woocommerce' ); ?></a>
|
55 |
+
</p>
|
56 |
|
57 |
<div class="clear"></div>
|
58 |
|
woocommerce/template/notices/error.php
CHANGED
@@ -10,26 +10,24 @@
|
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
-
* @see
|
14 |
-
* @package
|
15 |
-
* @version
|
16 |
*/
|
17 |
|
18 |
if ( ! defined( 'ABSPATH' ) ) {
|
19 |
exit;
|
20 |
}
|
21 |
|
22 |
-
if ( ! $
|
23 |
return;
|
24 |
}
|
25 |
|
26 |
?>
|
27 |
<ul class="woocommerce-error" role="alert">
|
28 |
-
<?php foreach ( $
|
29 |
-
<li
|
30 |
-
<?php
|
31 |
-
echo wc_kses_notice( $message );
|
32 |
-
?>
|
33 |
</li>
|
34 |
<?php endforeach; ?>
|
35 |
</ul>
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
+
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
+
* @version 3.9.0
|
16 |
*/
|
17 |
|
18 |
if ( ! defined( 'ABSPATH' ) ) {
|
19 |
exit;
|
20 |
}
|
21 |
|
22 |
+
if ( ! $notices ) {
|
23 |
return;
|
24 |
}
|
25 |
|
26 |
?>
|
27 |
<ul class="woocommerce-error" role="alert">
|
28 |
+
<?php foreach ( $notices as $notice ) : ?>
|
29 |
+
<li<?php echo wc_get_notice_data_attr( $notice ); ?>>
|
30 |
+
<?php echo wc_kses_notice( $notice['notice'] ); ?>
|
|
|
|
|
31 |
</li>
|
32 |
<?php endforeach; ?>
|
33 |
</ul>
|
woocommerce/template/notices/notice.php
CHANGED
@@ -10,25 +10,23 @@
|
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
-
* @see
|
14 |
-
* @package
|
15 |
-
* @version
|
16 |
*/
|
17 |
|
18 |
if ( ! defined( 'ABSPATH' ) ) {
|
19 |
exit; // Exit if accessed directly.
|
20 |
}
|
21 |
|
22 |
-
if ( ! $
|
23 |
return;
|
24 |
}
|
25 |
|
26 |
?>
|
27 |
|
28 |
-
<?php foreach ( $
|
29 |
-
<div class="woocommerce-info"
|
30 |
-
<?php
|
31 |
-
echo wc_kses_notice( $message );
|
32 |
-
?>
|
33 |
</div>
|
34 |
<?php endforeach; ?>
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
+
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
+
* @version 3.9.0
|
16 |
*/
|
17 |
|
18 |
if ( ! defined( 'ABSPATH' ) ) {
|
19 |
exit; // Exit if accessed directly.
|
20 |
}
|
21 |
|
22 |
+
if ( ! $notices ) {
|
23 |
return;
|
24 |
}
|
25 |
|
26 |
?>
|
27 |
|
28 |
+
<?php foreach ( $notices as $notice ) : ?>
|
29 |
+
<div class="woocommerce-info"<?php echo wc_get_notice_data_attr( $notice ); ?>>
|
30 |
+
<?php echo wc_kses_notice( $notice['notice'] ); ?>
|
|
|
|
|
31 |
</div>
|
32 |
<?php endforeach; ?>
|
woocommerce/template/notices/success.php
CHANGED
@@ -10,25 +10,23 @@
|
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
-
* @see
|
14 |
-
* @package
|
15 |
-
* @version
|
16 |
*/
|
17 |
|
18 |
if ( ! defined( 'ABSPATH' ) ) {
|
19 |
exit;
|
20 |
}
|
21 |
|
22 |
-
if ( ! $
|
23 |
return;
|
24 |
}
|
25 |
|
26 |
?>
|
27 |
|
28 |
-
<?php foreach ( $
|
29 |
-
<div class="woocommerce-message" role="alert">
|
30 |
-
<?php
|
31 |
-
echo wc_kses_notice( $message );
|
32 |
-
?>
|
33 |
</div>
|
34 |
<?php endforeach; ?>
|
10 |
* happen. When this occurs the version of the template file will be bumped and
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
+
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
+
* @version 3.9.0
|
16 |
*/
|
17 |
|
18 |
if ( ! defined( 'ABSPATH' ) ) {
|
19 |
exit;
|
20 |
}
|
21 |
|
22 |
+
if ( ! $notices ) {
|
23 |
return;
|
24 |
}
|
25 |
|
26 |
?>
|
27 |
|
28 |
+
<?php foreach ( $notices as $notice ) : ?>
|
29 |
+
<div class="woocommerce-message"<?php echo wc_get_notice_data_attr( $notice ); ?> role="alert">
|
30 |
+
<?php echo wc_kses_notice( $notice['notice'] ); ?>
|
|
|
|
|
31 |
</div>
|
32 |
<?php endforeach; ?>
|
woocommerce/template/order/order-details.php
CHANGED
@@ -11,13 +11,13 @@
|
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
-
* @package WooCommerce
|
15 |
-
* @version
|
16 |
*/
|
17 |
|
18 |
defined( 'ABSPATH' ) || exit;
|
19 |
|
20 |
-
$order = wc_get_order( $order_id ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.
|
21 |
|
22 |
if ( ! $order ) {
|
23 |
return;
|
@@ -43,7 +43,6 @@ if( $order->has_status( 'cancelled' ) ){
|
|
43 |
)
|
44 |
);
|
45 |
}
|
46 |
-
|
47 |
?>
|
48 |
<section class="woocommerce-order-details">
|
49 |
<?php do_action( 'woocommerce_order_details_before_order_table', $order ); ?>
|
@@ -91,7 +90,7 @@ if( $order->has_status( 'cancelled' ) ){
|
|
91 |
<th scope="row"><?php echo esc_html( $total['label'] ); ?></th>
|
92 |
<td><?php echo ( 'payment_method' === $key ) ? esc_html( $total['value'] ) : wp_kses_post( $total['value'] ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></td>
|
93 |
</tr>
|
94 |
-
<?php
|
95 |
}
|
96 |
?>
|
97 |
<?php if ( $order->get_customer_note() ) : ?>
|
@@ -105,14 +104,17 @@ if( $order->has_status( 'cancelled' ) ){
|
|
105 |
|
106 |
<?php do_action( 'woocommerce_order_details_after_order_table', $order ); ?>
|
107 |
</section>
|
108 |
-
|
109 |
-
}
|
110 |
-
|
111 |
-
?>
|
112 |
-
|
113 |
-
<?php do_action( 'woocommerce_after_order_details', $order ); ?>
|
114 |
|
115 |
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
116 |
if ( $show_customer_details ) {
|
117 |
wc_get_template( 'order/order-details-customer.php', array( 'order' => $order ) );
|
118 |
}
|
11 |
* the readme will list any important changes.
|
12 |
*
|
13 |
* @see https://docs.woocommerce.com/document/template-structure/
|
14 |
+
* @package WooCommerce\Templates
|
15 |
+
* @version 4.6.0
|
16 |
*/
|
17 |
|
18 |
defined( 'ABSPATH' ) || exit;
|
19 |
|
20 |
+
$order = wc_get_order( $order_id ); // phpcs:ignore WordPress.WP.GlobalVariablesOverride.Prohibited
|
21 |
|
22 |
if ( ! $order ) {
|
23 |
return;
|
43 |
)
|
44 |
);
|
45 |
}
|
|
|
46 |
?>
|
47 |
<section class="woocommerce-order-details">
|
48 |
<?php do_action( 'woocommerce_order_details_before_order_table', $order ); ?>
|
90 |
<th scope="row"><?php echo esc_html( $total['label'] ); ?></th>
|
91 |
<td><?php echo ( 'payment_method' === $key ) ? esc_html( $total['value'] ) : wp_kses_post( $total['value'] ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></td>
|
92 |
</tr>
|
93 |
+
<?php
|
94 |
}
|
95 |
?>
|
96 |
<?php if ( $order->get_customer_note() ) : ?>
|
104 |
|
105 |
<?php do_action( 'woocommerce_order_details_after_order_table', $order ); ?>
|
106 |
</section>
|
107 |
+
<?php } ?>
|
|
|
|
|
|
|
|
|
|
|
108 |
|
109 |
<?php
|
110 |
+
/**
|
111 |
+
* Action hook fired after the order details.
|
112 |
+
*
|
113 |
+
* @since 4.4.0
|
114 |
+
* @param WC_Order $order Order data.
|
115 |
+
*/
|
116 |
+
do_action( 'woocommerce_after_order_details', $order );
|
117 |
+
|
118 |
if ( $show_customer_details ) {
|
119 |
wc_get_template( 'order/order-details-customer.php', array( 'order' => $order ) );
|
120 |
}
|