Commit Graph

170 Commits

Author SHA1 Message Date
Mike Jolley 0a9485c465 Merge branch 'master' into feature/11259
# Conflicts:
#	assets/css/admin-rtl.css
#	assets/css/admin.css
#	includes/admin/list-tables/class-wc-admin-list-table-products.php
#	includes/class-wc-install.php
#	includes/wc-update-functions.php
2017-12-04 14:14:03 +00:00
claudiulodro 160e562dc6 Better negative number unescape 2017-11-27 09:48:28 -08:00
Manos Psychogyiopoulos 7463182c3f Change abstract importer methods visibility 2017-11-27 17:22:19 +02:00
claudiulodro 7e52af8b9a Fix logic 2017-11-22 11:57:59 -08:00
claudiulodro ee445b6ee5 Importer/Exporter backorder compatibility 2017-11-22 11:48:19 -08:00
axelmm 1a309856c3
Access to importer parameters - DRY
Access (read only) to params can be required in many cases when you're playing with importing. 
In my case it was extending importer with filters and actions (procedural way - within original csv importer process) but it relates to objective way (extending importer class), too.

I wanted to know if 'update_existing' flag is set (other way than $_POST values) within filter 'woocommerce_product_importer_parsed_data' in parse/expand loop (called from class-wc-product-csv-importer.php 'set_parsed_data' method). Unfortunately this (and similiar) filter doesn't receive importer instance, only row data (raw, parsed and product object). Thanks to https://github.com/woocommerce/woocommerce/pull/15796 we have 'woocommerce_product_importer_formatting_callbacks' filter receiving importer instance. Unfortunately importer '$params' field is not accessible (protected in abstract). This PR resolves this simple problem - we can get this flag (and other params) before importing loops, processing rows etc.
2017-11-20 02:09:49 +01:00
Gerhard Potgieter 8e837adc50 Allow for shortcode and relative download urls to be imported. Closes #17334 2017-10-25 14:54:02 +02:00
Mike Jolley b72268172a Fix image matching queries 2017-10-12 16:32:40 +01:00
Claudio Sanches fecff53353 [Importer] Do not override stock_status when already declared
And fixed a few coding standards because the pre-commit hook.

Fixes #16992
2017-09-29 16:07:15 -03:00
Mike Jolley a8ab4860ca Reverse image logic in get_attachment_id_from_url
Closes #16905
2017-09-25 12:58:25 +01:00
Matt Miller c87762177b Add check for 0 as a string 2017-09-21 16:21:49 -07:00
Mike Jolley 3b3ceebc1f Merge pull request #16579 from Chouby/action_before_import
Add action woocommerce_product_import_before_import
2017-08-25 11:19:20 +01:00
Mike Jolley b3e92869f9 Imported non-published variations should be private, not draft
Fixes #16577
2017-08-23 10:45:18 +01:00
Frédéric Demarle 04b6e80065 Add action woocommerce_product_import_before_import 2017-08-23 09:37:41 +02:00
Claudio Sanches 7ad0dd55f9 Allow import 'menu_order' 2017-08-22 17:22:39 -03:00
claudiulodro 24e9f80f1a wc_get_attribute_taxonomies returns objects 2017-08-18 09:17:04 -07:00
Mike Jolley c63e94d299 Add error handling for wp_insert_term
Fixes #16405
2017-08-14 10:40:00 +01:00
Mike Jolley 0f54e57093 CSV Import; correctly set stock props.
Closes #16398
2017-08-11 11:07:12 +01:00
Claudio Sanches a01ffdd11d Better variable naming for importer parser methods 2017-08-10 17:23:31 -03:00
Claudio Sanches fe05e09015 Skip title, description and exceprt sanitization and let WP handle it
Should simulate the same behavior from WP admin, so just need to skip
extra sanitization, so WP can handle it while salving with
`wp_insert_post()` and `wp_update_post()` where will check for
`unfiltered_html` capability.

WP core already did something like it, but on REST API: https://core.trac.wordpress.org/ticket/38609

Fixes #16195
2017-08-10 17:17:56 -03:00
Mike Jolley 90f0a835b1 Fix filename image handling 2017-08-08 15:00:03 +01:00
Claudio Sanches 1a9b499be8 Apply attribute helper functions to importers and REST API 2017-08-07 22:34:25 -03:00
Jaydeep Rami 46d3638089 Fix missing return statement (#16148)
* Fix missing return statement

* Fix missing return statement

* Fix missing return statement

* Fix missing return statement

* Fix missing return statement

* Fix missing return statement
2017-07-20 18:01:14 +01:00
Mike Jolley dfd7aa78d5 Use class raw data, don't pass it
#16127 caused an issue with fields which don’t require passing args
e.g. esc_url_raw callback. This broke tests.
2017-07-18 14:20:14 +01:00
Jaydeep Rami 3522857d23 Fix typo in WooCommerce plugin (#16135)
* Fixed typo

* Fixed more typo

* Fixed more typo

* Fix tyop

* Fix more typo

* Fix more typo

* Fix typo

* Fix typo

* Fix typo

* Fix typo datatime object

* Fix short name of compat

* Fix typo: update short name

* Fix typo "deactive" to "deactivate" and short BW - Compat

* Fix typo "Backwards compat"

* Fix typo 'parameters'

* Fix more typo 'pararmeters'

* Fix typo 'compund'

* FIx typo order

* Fix typo

* Fix typo 'incorrecly'

* Fix typo 'genarate'

* Fix typo 'reletive'

* Fix typo 'Handly'

* Fix typo 'rotatated'

* Fix typo

* Fix typo 'additonal'

* Fix typos
2017-07-17 11:10:52 +01:00
Mike Jolley 2bc7f075f5 Make sure placeholders have or check for SKUS
Fixes #16119
2017-07-14 12:33:14 +01:00
claudiulodro e4840f95c0 escape param wasnt added til php5.3 2017-07-12 14:25:23 -07:00
webspecnick 49ba871795 Add enclosure and escape arguments to importer. Introduce filter to change importer arguments (#16053)
* Introduce woocommerce_product_csv_importer_args filter.

* Add extra args to WC_Product_CSV_Importer. Have fgetcsv use extra args

* Update to follow coding standards.
2017-07-12 12:11:44 +01:00
claudiulodro 03403b2c44 Allow times in date fields 2017-07-10 09:19:59 -07:00
Mike Jolley b91da6f021 Change how mapping is posted 2017-07-06 18:51:36 +01:00
Claudio Sanches cf12271398 Merge pull request #15934 from woocommerce/fix/15917
Convert data to UTF-8 on import
2017-07-04 12:20:17 -03:00
Mike Jolley eb5c6d688b Added method to escape commas in CSV values 2017-07-03 14:47:48 +01:00
Mike Jolley 655fc002ed Convert data to UTF-8 on import
Fixes #15917
2017-07-03 12:07:07 +01:00
Mike Jolley e937047d04 Skip non existing rows on merge 2017-06-28 12:06:33 +01:00
Claudiu Lodromanean 5bbe82571f Merge pull request #15814 from woocommerce/fix/15804
Fix notice and missing terms in importer
2017-06-27 08:45:52 -07:00
Mike Jolley 26b98bc3df Fix notice and return correct attribute ID 2017-06-27 14:39:30 +01:00
Manos Psychogyiopoulos c8e166f706 Add woocommerce_product_importer_formatting_callbacks filter 2017-06-27 01:49:18 +03:00
Manos Psychogyiopoulos 7778bf894e Allow DRY product importer integration 2017-06-26 23:49:48 +03:00
Claudiu Lodromanean a05252753f Merge pull request #15790 from woocommerce/fix/15781-2
Remove BOM signature from imported results
2017-06-26 12:49:59 -07:00
Claudio Sanches ec1500d1b7 Remove BOM signature from imported results
Fix missing mapping for ID column
2017-06-26 16:08:05 -03:00
Mike Jolley afd43b3b78 Look for mapped ID when parsing ID field 2017-06-26 18:41:51 +01:00
Mike Jolley 496b741d1c Create placeholder when mapping relative ids 2017-06-26 17:40:20 +01:00
Mike Jolley 8f70ebc1b5 woocommerce_product_importer_before_set_parsed_data 2017-06-22 12:19:19 +01:00
Frédéric Demarle d563842126 CSV Importer: Add action before a row is parsed 2017-06-21 16:49:21 +02:00
Claudiu Lodromanean 9399a8dca2 Merge pull request #15702 from woocommerce/fix/15697
Correctly map attribute labels to names
2017-06-20 14:46:45 -07:00
Mike Jolley 6a6aca4132 Correctly map attribute labels to names
Fixes #15697
2017-06-20 14:15:35 +01:00
Frédéric Demarle 4960af34aa Add an action before importing a row 2017-06-20 14:25:23 +02:00
claudiulodro 1d3c4ebb4d Add flag for timeout checking 2017-06-14 11:35:22 -07:00
Claudiu Lodromanean b9842b6f21 Merge pull request #15615 from woocommerce/update/15576
Prevent memory and time limits in importer
2017-06-14 10:20:29 -07:00
Mike Jolley 4dea3ece8a Fix memory limit detection on some systems 2017-06-14 18:16:39 +01:00
Mike Jolley 0de65b3a8d Start time 2017-06-14 17:04:47 +01:00
Mike Jolley fdc6c46e80 Clear slug for placeholder products 2017-06-14 16:37:21 +01:00
Mike Jolley 8603e75b5e Create placeholders when importing products with an ID column and not updating 2017-06-14 16:37:07 +01:00
Mike Jolley 77cee56ae8 Prevent memory and time limits 2017-06-14 14:02:47 +01:00
Frédéric Demarle 08e30450b5 Add action after a product has been imported 2017-06-09 08:30:22 +02:00
Mike Jolley e185d5572b Merge branch 'feature/product-csv-import-export' into refactor/fix-importer-and-improve-unit-tests 2017-05-31 12:19:58 +01:00
Claudio Sanches 51ddc36080 Skip empty attributes and reset indexes 2017-05-30 19:26:31 -03:00
Claudio Sanches d6fb028481 Allow import and create new global attributes 2017-05-30 18:46:32 -03:00
Claudio Sanches fb81994855 Fixed downloads URLs in the CSV parser 2017-05-30 15:01:48 -03:00
Claudio Sanches ffd248f19d Merge branch 'feature/product-csv-import-export' into refactor/fix-importer-and-improve-unit-tests 2017-05-30 13:03:17 -03:00
claudiulodro 759fcae533 Use 'grouped_products' for grouped products 2017-05-28 12:37:18 -07:00
Claudio Sanches 6d54ae3504 Fetch product ID for temporary products only while processing the item 2017-05-26 19:57:31 -03:00
Claudio Sanches 3d5891e589 Fixed how backorders field is parsed 2017-05-26 19:39:20 -03:00
Claudio Sanches 0719746af2 Validate dates and use string format to use website timezone 2017-05-26 19:25:44 -03:00
Claudio Sanches 2eeb444eeb Properly set stock quantity 2017-05-26 18:53:22 -03:00
Claudio Sanches 02a27ae258 Fixed PHP Notice about undefined name for product attributes 2017-05-26 18:44:22 -03:00
Claudio Sanches 780ce1a4e6 Fixed deprecated `set_stock` notice 2017-05-26 18:42:07 -03:00
claudiulodro 9b925d28ec Grouped product child support 2017-05-26 13:30:17 -07:00
claudiulodro c96f8b5bc1 Better unset 2017-05-26 12:16:38 -07:00
claudiulodro 4a104f3202 Remove extra isset 2017-05-26 11:41:44 -07:00
claudiulodro 00d37412eb Accidentally reverted a fix 2017-05-26 11:37:12 -07:00
claudiulodro d362d47995 Get external products working 2017-05-26 11:26:55 -07:00
Mike Jolley dcdd44ae67 Use correct keys for images 2017-05-26 18:09:49 +01:00
Mike Jolley dbd0f3dce0 error message 2017-05-26 16:56:37 +01:00
Mike Jolley d9217b1d59 More tidyup 2017-05-26 16:54:43 +01:00
Mike Jolley 3a7f4884d8 Moved logic around and organised 2017-05-26 15:57:17 +01:00
Claudio Sanches 995aa89b84 Fixed shipping class parser 2017-05-26 12:27:06 +01:00
claudiulodro fc05af3514 Phpcs fixes 2017-05-25 12:53:32 -07:00
Mike Jolley ba305eacb5 Fix tests 2017-05-25 18:16:10 +01:00
Mike Jolley c31ab30391 Create temp objects to update later 2017-05-25 14:54:49 +01:00
Claudio Sanches da7d5786d3 Merge branch 'feature/product-csv-import-export' into feature/product-parser-match-exporter 2017-05-24 08:56:27 -03:00
Claudio Sanches b08c75fb83 Added handler for default attributes and improved how deal with product attributes 2017-05-24 08:14:10 -03:00
Claudio Sanches 66d7aabe6c Added full support for variations in importer 2017-05-24 07:26:57 -03:00
Claudio Sanches 86036d7040 Check for WP_Error while getting/creating tags and shipping classes 2017-05-24 06:47:12 -03:00
Claudio Sanches 83f08ec18d Set attribute as visible by default 2017-05-24 05:43:15 -03:00
Claudio Sanches 60dd750a7b Handle product attributes 2017-05-24 04:32:28 -03:00
Claudio Sanches c08d3a356e Added support "Attribute %d Visible" 2017-05-24 03:42:38 -03:00
Claudio Sanches 2c5c0133f3 meta_data is always an array 2017-05-24 03:35:53 -03:00
Claudio Sanches b10f3a3be9 Fixed coding standards 2017-05-24 03:26:17 -03:00
Claudio Sanches babc38822a Handle featured image and gallery 2017-05-24 03:14:54 -03:00
Claudio Sanches a07dc188d0 Parse and save downloads 2017-05-23 22:31:06 -03:00
Claudio Sanches f676fa2752 Update products and variations parser 2017-05-23 21:58:10 -03:00
Claudio Sanches 2ebea10be6 Fixed tags and shipping class parsers warnings
wp_insert_term() returns array with `term_id` and `term_taxonomy_id` only.
2017-05-23 21:11:21 -03:00
Claudio Sanches d20c61678c Parser categories 2017-05-23 21:06:16 -03:00
Mike Jolley c5d7dfba6c Feedback 2017-05-23 19:46:46 +01:00
Mike Jolley b1a5b23629 Done screen handling and form tweaks 2017-05-23 15:05:32 +01:00
Claudio Sanches ac304473c7 Allow external URL and button text for external products 2017-05-22 20:18:39 -03:00
Claudio Sanches 8d5f706077 Save meta_data 2017-05-22 19:31:05 -03:00
Claudio Sanches 7f92479f4f Create shipping class or tag if does not exist 2017-05-22 19:24:33 -03:00
Claudio Sanches 775a934b74 Parse shipping class ID and tags IDs 2017-05-22 18:54:30 -03:00