Version Description
- 22/02/2015 =
- Fix - PDF Invoicing -
on_create
bug fixed. This caused creating all document on new order only. - Dev - PDF Invoicing - Page format (paper size) option added to Page Settings submodule.
- Dev - Products Shortcodes - Attribute
hide_currency
added to Products Shortcodes ([wcj_product_price]
). - Dev - Products Shortcodes -
[wcj_product_price]
- variable product handling (as price range), added. - Dev - Custom Checkout Fields - label and placeholder can now contain HTML tags (text changed to textarea in settings).
Download this release
Release Info
Developer | algoritmika |
Plugin | Booster for WooCommerce |
Version | 2.1.2 |
Comparing to | |
See all releases |
Code changes from version 2.1.0 to 2.1.2
- includes/class-wcj-checkout-custom-fields.php +3 -3
- includes/class-wcj-pdf-invoicing.php +4 -3
- includes/classes/class-wcj-pdf-invoice.php +10 -2
- includes/functions/wcj-functions.php +38 -2
- includes/pdf-invoices/settings/class-wcj-pdf-invoicing-page.php +11 -1
- includes/shortcodes/class-wcj-orders-shortcodes.php +12 -5
- includes/shortcodes/class-wcj-products-shortcodes.php +31 -8
- readme.txt +13 -2
- woocommerce-jetpack.php +1 -2
includes/class-wcj-checkout-custom-fields.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* The WooCommerce Jetpack Checkout Custom Fields class.
|
6 |
*
|
7 |
* @class WCJ_Checkout_Custom_Fields
|
8 |
-
* @version 1.
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
@@ -342,7 +342,7 @@ class WCJ_Checkout_Custom_Fields {
|
|
342 |
'desc' => __( 'label', 'woocommerce-jetpack' ),
|
343 |
'id' => 'wcj_checkout_custom_field_label_' . $i,
|
344 |
'default' => '',
|
345 |
-
'type' => '
|
346 |
'css' => 'width:200px;',
|
347 |
),
|
348 |
/*array(
|
@@ -364,7 +364,7 @@ class WCJ_Checkout_Custom_Fields {
|
|
364 |
'desc' => __( 'placeholder', 'woocommerce-jetpack' ),
|
365 |
'id' => 'wcj_checkout_custom_field_placeholder_' . $i,
|
366 |
'default' => '',
|
367 |
-
'type' => '
|
368 |
'css' => 'width:200px;',
|
369 |
),
|
370 |
|
5 |
* The WooCommerce Jetpack Checkout Custom Fields class.
|
6 |
*
|
7 |
* @class WCJ_Checkout_Custom_Fields
|
8 |
+
* @version 2.1.2
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
342 |
'desc' => __( 'label', 'woocommerce-jetpack' ),
|
343 |
'id' => 'wcj_checkout_custom_field_label_' . $i,
|
344 |
'default' => '',
|
345 |
+
'type' => 'textarea',
|
346 |
'css' => 'width:200px;',
|
347 |
),
|
348 |
/*array(
|
364 |
'desc' => __( 'placeholder', 'woocommerce-jetpack' ),
|
365 |
'id' => 'wcj_checkout_custom_field_placeholder_' . $i,
|
366 |
'default' => '',
|
367 |
+
'type' => 'textarea',
|
368 |
'css' => 'width:200px;',
|
369 |
),
|
370 |
|
includes/class-wcj-pdf-invoicing.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* The WooCommerce Jetpack PDF Invoicing class.
|
6 |
*
|
7 |
* @class WCJ_PDF_Invoicing
|
8 |
-
* @version 1.
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
@@ -32,8 +32,8 @@ class WCJ_PDF_Invoicing {
|
|
32 |
|
33 |
$invoice_types = wcj_get_enabled_invoice_types();
|
34 |
foreach ( $invoice_types as $invoice_type ) {
|
35 |
-
$the_hook = get_option( '
|
36 |
-
if ( 'disabled' != $the_hook ) {
|
37 |
add_action( $the_hook, array( $this, 'create_' . $invoice_type['id'] ) );
|
38 |
}
|
39 |
}
|
@@ -70,6 +70,7 @@ class WCJ_PDF_Invoicing {
|
|
70 |
* create_document.
|
71 |
*/
|
72 |
function create_document( $order_id, $invoice_type ) {
|
|
|
73 |
if ( false == wcj_is_invoice_created( $order_id, $invoice_type ) ) {
|
74 |
wcj_create_invoice( $order_id, $invoice_type );
|
75 |
}
|
5 |
* The WooCommerce Jetpack PDF Invoicing class.
|
6 |
*
|
7 |
* @class WCJ_PDF_Invoicing
|
8 |
+
* @version 2.1.2
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
32 |
|
33 |
$invoice_types = wcj_get_enabled_invoice_types();
|
34 |
foreach ( $invoice_types as $invoice_type ) {
|
35 |
+
$the_hook = get_option( 'wcj_invoicing_' . $invoice_type['id'] . '_create_on', 'woocommerce_new_order' );
|
36 |
+
if ( 'disabled' != $the_hook ) {
|
37 |
add_action( $the_hook, array( $this, 'create_' . $invoice_type['id'] ) );
|
38 |
}
|
39 |
}
|
70 |
* create_document.
|
71 |
*/
|
72 |
function create_document( $order_id, $invoice_type ) {
|
73 |
+
|
74 |
if ( false == wcj_is_invoice_created( $order_id, $invoice_type ) ) {
|
75 |
wcj_create_invoice( $order_id, $invoice_type );
|
76 |
}
|
includes/classes/class-wcj-pdf-invoice.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* The WooCommerce Jetpack PDF Invoice class.
|
6 |
*
|
7 |
* @class WCJ_PDF_Invoice
|
8 |
-
* @version 1.
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
@@ -31,7 +31,15 @@ class WCJ_PDF_Invoice extends WCJ_Invoice {
|
|
31 |
require_once( WCJ()->plugin_path() . '/includes/lib/tcpdf_min/tcpdf.php' );
|
32 |
|
33 |
// Create new PDF document
|
34 |
-
$pdf = new TCPDF(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
|
36 |
// Set document information
|
37 |
$pdf->SetCreator( PDF_CREATOR );
|
5 |
* The WooCommerce Jetpack PDF Invoice class.
|
6 |
*
|
7 |
* @class WCJ_PDF_Invoice
|
8 |
+
* @version 2.1.2
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
31 |
require_once( WCJ()->plugin_path() . '/includes/lib/tcpdf_min/tcpdf.php' );
|
32 |
|
33 |
// Create new PDF document
|
34 |
+
$pdf = new TCPDF(
|
35 |
+
get_option( 'wcj_invoicing_' . $invoice_type . '_page_orientation', 'P' ),
|
36 |
+
PDF_UNIT,
|
37 |
+
//PDF_PAGE_FORMAT,
|
38 |
+
get_option( 'wcj_invoicing_' . $invoice_type . '_page_format', 'A4' ),
|
39 |
+
true,
|
40 |
+
'UTF-8',
|
41 |
+
false
|
42 |
+
);
|
43 |
|
44 |
// Set document information
|
45 |
$pdf->SetCreator( PDF_CREATOR );
|
includes/functions/wcj-functions.php
CHANGED
@@ -1,12 +1,48 @@
|
|
1 |
<?php
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
|
3 |
/**
|
4 |
* convert_number_to_words.
|
5 |
*
|
6 |
* @return string
|
7 |
*/
|
|
|
8 |
if ( ! function_exists( 'convert_number_to_words' ) ) {
|
9 |
-
function convert_number_to_words($number) {
|
10 |
$hyphen = '-';
|
11 |
$conjunction = ' and ';
|
12 |
$separator = ', ';
|
@@ -203,7 +239,7 @@ if ( ! function_exists( 'wcj_get_shortcodes_atts_list' ) ) {
|
|
203 |
*/
|
204 |
if ( ! function_exists( 'wcj_get_shortcodes_list' ) ) {
|
205 |
function wcj_get_shortcodes_list() {
|
206 |
-
$the_array = apply_filters( 'wcj_shortcodes_list', array() );
|
207 |
return implode( ', ', $the_array );
|
208 |
//return implode( PHP_EOL, $the_array );
|
209 |
}
|
1 |
<?php
|
2 |
+
/**
|
3 |
+
* WooCommerce Jetpack Functions
|
4 |
+
*
|
5 |
+
* The WooCommerce Jetpack Functions.
|
6 |
+
*
|
7 |
+
* @version 2.1.2
|
8 |
+
* @author Algoritmika Ltd.
|
9 |
+
*/
|
10 |
+
|
11 |
+
/**
|
12 |
+
* validate_VAT.
|
13 |
+
*
|
14 |
+
* @return mixed: bool on successful checking (can be true or false), null otherwise
|
15 |
+
*/
|
16 |
+
if ( ! function_exists( 'validate_VAT' ) ) {
|
17 |
+
function validate_VAT( $country_code, $vat_number ) {
|
18 |
+
try {
|
19 |
+
$client = new SoapClient(
|
20 |
+
'http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl',
|
21 |
+
array( 'exceptions' => true )
|
22 |
+
);
|
23 |
+
|
24 |
+
$result = $client->checkVat( array(
|
25 |
+
'countryCode' => $country_code,
|
26 |
+
'vatNumber' => $vat_number,
|
27 |
+
) );
|
28 |
+
|
29 |
+
return ( isset( $result->valid ) ) ? $result->valid : null;
|
30 |
+
|
31 |
+
} catch( Exception $exception ) {
|
32 |
+
return null;
|
33 |
+
}
|
34 |
+
}
|
35 |
+
}
|
36 |
+
|
37 |
|
38 |
/**
|
39 |
* convert_number_to_words.
|
40 |
*
|
41 |
* @return string
|
42 |
*/
|
43 |
+
|
44 |
if ( ! function_exists( 'convert_number_to_words' ) ) {
|
45 |
+
function convert_number_to_words( $number ) {
|
46 |
$hyphen = '-';
|
47 |
$conjunction = ' and ';
|
48 |
$separator = ', ';
|
239 |
*/
|
240 |
if ( ! function_exists( 'wcj_get_shortcodes_list' ) ) {
|
241 |
function wcj_get_shortcodes_list() {
|
242 |
+
$the_array = apply_filters( 'wcj_shortcodes_list', array() );
|
243 |
return implode( ', ', $the_array );
|
244 |
//return implode( PHP_EOL, $the_array );
|
245 |
}
|
includes/pdf-invoices/settings/class-wcj-pdf-invoicing-page.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* The WooCommerce Jetpack PDF Invoicing Page class.
|
6 |
*
|
7 |
* @class WCJ_PDF_Invoicing_Page
|
8 |
-
* @version 1.
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
@@ -49,6 +49,16 @@ class WCJ_PDF_Invoicing_Page {
|
|
49 |
'L' => __( 'Landscape', 'woocommerce-jetpack' ),
|
50 |
),
|
51 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
52 |
|
53 |
$settings[] = array(
|
54 |
'title' => __( 'Margin Left', 'woocommerce-jetpack' ),
|
5 |
* The WooCommerce Jetpack PDF Invoicing Page class.
|
6 |
*
|
7 |
* @class WCJ_PDF_Invoicing_Page
|
8 |
+
* @version 2.1.2
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
49 |
'L' => __( 'Landscape', 'woocommerce-jetpack' ),
|
50 |
),
|
51 |
);
|
52 |
+
|
53 |
+
$page_formats = array();
|
54 |
+
for ( $i = 1; $i < 8; $i++ ) $page_formats[ 'A' . $i ] = 'A' . $i;
|
55 |
+
$settings[] = array(
|
56 |
+
'title' => __( 'Page Format', 'woocommerce-jetpack' ),
|
57 |
+
'id' => 'wcj_invoicing_' . $invoice_type['id'] . '_page_format',
|
58 |
+
'default' => 'A4',
|
59 |
+
'type' => 'select',
|
60 |
+
'options' => $page_formats,
|
61 |
+
);
|
62 |
|
63 |
$settings[] = array(
|
64 |
'title' => __( 'Margin Left', 'woocommerce-jetpack' ),
|
includes/shortcodes/class-wcj-orders-shortcodes.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* The WooCommerce Jetpack Orders Shortcodes class.
|
6 |
*
|
7 |
* @class WCJ_Orders_Shortcodes
|
8 |
-
* @version 1.
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
@@ -53,7 +53,8 @@ class WCJ_Orders_Shortcodes extends WCJ_Shortcodes {
|
|
53 |
*/
|
54 |
function add_extra_atts( $atts ) {
|
55 |
$modified_atts = array_merge( array(
|
56 |
-
'order_id' => ( isset( $_GET['order_id'] ) ) ? $_GET['order_id'] : get_the_ID(),
|
|
|
57 |
'hide_currency' => 'no',
|
58 |
'excl_tax' => 'no',
|
59 |
'date_format' => get_option( 'date_format' ),
|
@@ -71,6 +72,12 @@ class WCJ_Orders_Shortcodes extends WCJ_Shortcodes {
|
|
71 |
|
72 |
// Atts
|
73 |
$atts['excl_tax'] = ( 'yes' === $atts['excl_tax'] ) ? true : false;
|
|
|
|
|
|
|
|
|
|
|
|
|
74 |
|
75 |
// Class properties
|
76 |
$this->the_order = ( 'shop_order' === get_post_type( $atts['order_id'] ) ) ? wc_get_order( $atts['order_id'] ) : null;
|
@@ -111,7 +118,7 @@ class WCJ_Orders_Shortcodes extends WCJ_Shortcodes {
|
|
111 |
$the_product = wc_get_product( $the_item['product_id'] );
|
112 |
$total_weight += $the_item['qty'] * $the_product->get_weight();
|
113 |
}
|
114 |
-
return ( 0 == $total_weight ) ? '' : $total_weight;
|
115 |
}
|
116 |
|
117 |
/**
|
@@ -123,7 +130,7 @@ class WCJ_Orders_Shortcodes extends WCJ_Shortcodes {
|
|
123 |
foreach( $the_items as $the_item ) {
|
124 |
$total_quantity += $the_item['qty'];
|
125 |
}
|
126 |
-
return ( 0 == $total_quantity ) ? '' : $total_quantity;
|
127 |
}
|
128 |
|
129 |
/**
|
@@ -131,7 +138,7 @@ class WCJ_Orders_Shortcodes extends WCJ_Shortcodes {
|
|
131 |
*/
|
132 |
function wcj_order_items_total_number( $atts ) {
|
133 |
$total_number = count( $this->the_order->get_items() );
|
134 |
-
return ( 0 == $total_number ) ? '' : $total_number;
|
135 |
}
|
136 |
|
137 |
/**
|
5 |
* The WooCommerce Jetpack Orders Shortcodes class.
|
6 |
*
|
7 |
* @class WCJ_Orders_Shortcodes
|
8 |
+
* @version 2.1.1
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
53 |
*/
|
54 |
function add_extra_atts( $atts ) {
|
55 |
$modified_atts = array_merge( array(
|
56 |
+
//'order_id' => ( isset( $_GET['order_id'] ) ) ? $_GET['order_id'] : get_the_ID(),
|
57 |
+
'order_id' => 0,
|
58 |
'hide_currency' => 'no',
|
59 |
'excl_tax' => 'no',
|
60 |
'date_format' => get_option( 'date_format' ),
|
72 |
|
73 |
// Atts
|
74 |
$atts['excl_tax'] = ( 'yes' === $atts['excl_tax'] ) ? true : false;
|
75 |
+
|
76 |
+
if ( 0 == $atts['order_id'] ) $atts['order_id'] = ( isset( $_GET['order_id'] ) ) ? $_GET['order_id'] : get_the_ID();
|
77 |
+
if ( 0 == $atts['order_id'] ) $atts['order_id'] = ( isset( $_GET['pdf_invoice'] ) ) ? $_GET['pdf_invoice'] : 0; // PDF Invoices V1 compatibility
|
78 |
+
//if ( 0 == $atts['order_id'] ) $atts['order_id'] = get_the_ID();
|
79 |
+
if ( 0 == $atts['order_id'] ) return false;
|
80 |
+
//if ( 'shop_order' !== get_post_type( $atts['order_id'] ) ) return false;
|
81 |
|
82 |
// Class properties
|
83 |
$this->the_order = ( 'shop_order' === get_post_type( $atts['order_id'] ) ) ? wc_get_order( $atts['order_id'] ) : null;
|
118 |
$the_product = wc_get_product( $the_item['product_id'] );
|
119 |
$total_weight += $the_item['qty'] * $the_product->get_weight();
|
120 |
}
|
121 |
+
return ( 0 == $total_weight && 'yes' === $atts['hide_if_zero'] ) ? '' : $total_weight;
|
122 |
}
|
123 |
|
124 |
/**
|
130 |
foreach( $the_items as $the_item ) {
|
131 |
$total_quantity += $the_item['qty'];
|
132 |
}
|
133 |
+
return ( 0 == $total_quantity && 'yes' === $atts['hide_if_zero'] ) ? '' : $total_quantity;
|
134 |
}
|
135 |
|
136 |
/**
|
138 |
*/
|
139 |
function wcj_order_items_total_number( $atts ) {
|
140 |
$total_number = count( $this->the_order->get_items() );
|
141 |
+
return ( 0 == $total_number && 'yes' === $atts['hide_if_zero'] ) ? '' : $total_number;
|
142 |
}
|
143 |
|
144 |
/**
|
includes/shortcodes/class-wcj-products-shortcodes.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* The WooCommerce Jetpack Products Shortcodes class.
|
6 |
*
|
7 |
* @class WCJ_Products_Shortcodes
|
8 |
-
* @version 1.
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
@@ -27,9 +27,10 @@ class WCJ_Products_Shortcodes extends WCJ_Shortcodes {
|
|
27 |
);
|
28 |
|
29 |
$this->the_atts = array(
|
30 |
-
'product_id'
|
31 |
-
'image_size'
|
32 |
-
'multiply_by'
|
|
|
33 |
);
|
34 |
|
35 |
parent::__construct();
|
@@ -53,12 +54,35 @@ class WCJ_Products_Shortcodes extends WCJ_Shortcodes {
|
|
53 |
}
|
54 |
|
55 |
/**
|
56 |
-
*
|
|
|
|
|
|
|
|
|
57 |
*/
|
58 |
function wcj_product_price( $atts ) {
|
59 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
60 |
}
|
61 |
-
|
62 |
/**
|
63 |
* wcj_product_image.
|
64 |
*/
|
@@ -70,4 +94,3 @@ class WCJ_Products_Shortcodes extends WCJ_Shortcodes {
|
|
70 |
endif;
|
71 |
|
72 |
return new WCJ_Products_Shortcodes();
|
73 |
-
|
5 |
* The WooCommerce Jetpack Products Shortcodes class.
|
6 |
*
|
7 |
* @class WCJ_Products_Shortcodes
|
8 |
+
* @version 2.1.2
|
9 |
* @category Class
|
10 |
* @author Algoritmika Ltd.
|
11 |
*/
|
27 |
);
|
28 |
|
29 |
$this->the_atts = array(
|
30 |
+
'product_id' => 0,
|
31 |
+
'image_size' => 'shop_thumbnail',
|
32 |
+
'multiply_by' => '',
|
33 |
+
'hide_currency' => 'no',
|
34 |
);
|
35 |
|
36 |
parent::__construct();
|
54 |
}
|
55 |
|
56 |
/**
|
57 |
+
* Returns product (modified) price.
|
58 |
+
*
|
59 |
+
* @todo Variable products: not range and price by country.
|
60 |
+
*
|
61 |
+
* @return string The product (modified) price
|
62 |
*/
|
63 |
function wcj_product_price( $atts ) {
|
64 |
+
// Variable
|
65 |
+
if ( $this->the_product->is_type( 'variable' ) ) {
|
66 |
+
$min = $this->the_product->get_variation_price( 'min', false );
|
67 |
+
$max = $this->the_product->get_variation_price( 'max', false );
|
68 |
+
if ( '' !== $atts['multiply_by'] && is_numeric( $atts['multiply_by'] ) ) {
|
69 |
+
$min = $min * $atts['multiply_by'];
|
70 |
+
$max = $max * $atts['multiply_by'];
|
71 |
+
}
|
72 |
+
if ( 'yes' !== $atts['hide_currency'] ) {
|
73 |
+
$min = wc_price( $min );
|
74 |
+
$max = wc_price( $max );
|
75 |
+
}
|
76 |
+
return sprintf( '%s-%s', $min, $max );
|
77 |
+
}
|
78 |
+
// Simple etc.
|
79 |
+
else {
|
80 |
+
$the_price = $this->the_product->get_price();
|
81 |
+
if ( '' !== $atts['multiply_by'] && is_numeric( $atts['multiply_by'] ) ) $the_price = $the_price * $atts['multiply_by'];
|
82 |
+
return ( 'yes' === $atts['hide_currency'] ) ? $the_price : wc_price( $the_price );
|
83 |
+
}
|
84 |
}
|
85 |
+
|
86 |
/**
|
87 |
* wcj_product_image.
|
88 |
*/
|
94 |
endif;
|
95 |
|
96 |
return new WCJ_Products_Shortcodes();
|
|
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://algoritmika.com/donate/
|
|
4 |
Tags: woocommerce,woocommerce jetpack,custom price labels,call for price,currency symbol,remove sorting,remove old product slugs,add to cart text,order number,sequential order numbering,email pdf invoice,pdf invoice,pdf invoices,already in cart,empty cart,redirect to checkout,minimum order amount,customize checkout fields,checkout fields,email,customize product tabs,product tabs,related products number,empty cart,redirect add to cart,redirect to checkout,product already in cart,custom payment gateway,payment gateway icon,auto-complete all orders,custom order statuses,custom order status,remove text from price,custom css,hide categories count,hide subcategories count,hide category count,hide subcategory count,display total sales,custom product tabs,remove product tab,payment gateway fee,
|
5 |
Requires at least: 3.8
|
6 |
Tested up to: 4.1
|
7 |
-
Stable tag: 2.1.
|
8 |
License: GNU General Public License v3.0
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
@@ -36,7 +36,7 @@ WooCommerce Jetpack is a WordPress plugin that supercharges your site with aweso
|
|
36 |
* Add to Cart - Change text for add to cart buttons for each product type, on per category or per product basis. Display "Product already in cart" instead of "Add to cart" button. Redirect add to cart button to any url (e.g. checkout page).
|
37 |
* Old Slugs - Remove old product slugs.
|
38 |
* Bulk Price Converter tool.
|
39 |
-
* Prices and Currencies by Country - Change product
|
40 |
* Bulk SKUs generator tool.
|
41 |
* Different Currency for External Products.
|
42 |
* Another custom CSS tool, if you need one.
|
@@ -70,6 +70,17 @@ To unlock all WooCommerce Jetpack features, please install additional <a href="h
|
|
70 |
|
71 |
== Changelog ==
|
72 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
= 2.1.0 - 17/02/2015 =
|
74 |
* Dev - **PDF Invoicing and Packing Slips** - Module added.
|
75 |
Module includes proforma invoices, proforma slips, with separate numbering (and invoices renumerate tool) for each document type.
|
4 |
Tags: woocommerce,woocommerce jetpack,custom price labels,call for price,currency symbol,remove sorting,remove old product slugs,add to cart text,order number,sequential order numbering,email pdf invoice,pdf invoice,pdf invoices,already in cart,empty cart,redirect to checkout,minimum order amount,customize checkout fields,checkout fields,email,customize product tabs,product tabs,related products number,empty cart,redirect add to cart,redirect to checkout,product already in cart,custom payment gateway,payment gateway icon,auto-complete all orders,custom order statuses,custom order status,remove text from price,custom css,hide categories count,hide subcategories count,hide category count,hide subcategory count,display total sales,custom product tabs,remove product tab,payment gateway fee,
|
5 |
Requires at least: 3.8
|
6 |
Tested up to: 4.1
|
7 |
+
Stable tag: 2.1.2
|
8 |
License: GNU General Public License v3.0
|
9 |
License URI: http://www.gnu.org/licenses/gpl-3.0.html
|
10 |
|
36 |
* Add to Cart - Change text for add to cart buttons for each product type, on per category or per product basis. Display "Product already in cart" instead of "Add to cart" button. Redirect add to cart button to any url (e.g. checkout page).
|
37 |
* Old Slugs - Remove old product slugs.
|
38 |
* Bulk Price Converter tool.
|
39 |
+
* Prices and Currencies by Country - Change product price and currency by customer’s country - globally or per product. Customer’s country is detected automatically by IP. Automatic currency exchange rates updates.
|
40 |
* Bulk SKUs generator tool.
|
41 |
* Different Currency for External Products.
|
42 |
* Another custom CSS tool, if you need one.
|
70 |
|
71 |
== Changelog ==
|
72 |
|
73 |
+
= 2.1.2 - 22/02/2015 =
|
74 |
+
* Fix - PDF Invoicing - `on_create` bug fixed. This caused creating all document on new order only.
|
75 |
+
* Dev - PDF Invoicing - Page format (paper size) option added to *Page Settings* submodule.
|
76 |
+
* Dev - Products Shortcodes - Attribute `hide_currency` added to Products Shortcodes (`[wcj_product_price]`).
|
77 |
+
* Dev - Products Shortcodes - `[wcj_product_price]` - variable product handling (as price range), added.
|
78 |
+
* Dev - Custom Checkout Fields - *label* and *placeholder* can now contain HTML tags (text changed to textarea in settings).
|
79 |
+
|
80 |
+
= 2.1.1 - 18/02/2015 =
|
81 |
+
* Fix - Orders Shortcodes - Shortcodes compatibility with PDF Invoices v1 module.
|
82 |
+
* Dev - Orders Shortcodes - Added `hide_if_zero` checking for `_order_item_total_` shortcodes.
|
83 |
+
|
84 |
= 2.1.0 - 17/02/2015 =
|
85 |
* Dev - **PDF Invoicing and Packing Slips** - Module added.
|
86 |
Module includes proforma invoices, proforma slips, with separate numbering (and invoices renumerate tool) for each document type.
|
woocommerce-jetpack.php
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
Plugin Name: WooCommerce Jetpack
|
4 |
Plugin URI: http://woojetpack.com
|
5 |
Description: Supercharge your WooCommerce site with these awesome powerful features.
|
6 |
-
Version: 2.1.
|
7 |
Author: Algoritmika Ltd
|
8 |
Author URI: http://www.algoritmika.com
|
9 |
Copyright: © 2015 Algoritmika Ltd.
|
@@ -282,7 +282,6 @@ final class WC_Jetpack {
|
|
282 |
foreach ( $section->get_settings() as $value ) {
|
283 |
if ( isset( $value['default'] ) && isset( $value['id'] ) ) {
|
284 |
$autoload = isset( $value['autoload'] ) ? (bool) $value['autoload'] : true;
|
285 |
-
//delete_option( $value['id'] );
|
286 |
add_option( $value['id'], $value['default'], '', ( $autoload ? 'yes' : 'no' ) );
|
287 |
}
|
288 |
}
|
3 |
Plugin Name: WooCommerce Jetpack
|
4 |
Plugin URI: http://woojetpack.com
|
5 |
Description: Supercharge your WooCommerce site with these awesome powerful features.
|
6 |
+
Version: 2.1.2
|
7 |
Author: Algoritmika Ltd
|
8 |
Author URI: http://www.algoritmika.com
|
9 |
Copyright: © 2015 Algoritmika Ltd.
|
282 |
foreach ( $section->get_settings() as $value ) {
|
283 |
if ( isset( $value['default'] ) && isset( $value['id'] ) ) {
|
284 |
$autoload = isset( $value['autoload'] ) ? (bool) $value['autoload'] : true;
|
|
|
285 |
add_option( $value['id'], $value['default'], '', ( $autoload ? 'yes' : 'no' ) );
|
286 |
}
|
287 |
}
|