UPDATE: This post, while still very useful, is a bit out of date. For the latest list of features, check out the README file directly on github.
We recently had a need to import a CSV of products into WooCommerce for a client. We also had a need to save the $75.00 $99.00 and thought it would be fun (yeah, we’re strange) to roll our own!
Our git repo for the project is here: https://github.com/dgrundel/woo-product-importer
You can download the latest version directly from github here: https://github.com/dgrundel/woo-product-importer/zipball/master
Once installed, go to Tools → Woo Product Importer in the Admin Panel to use.
Cool Stuff It/You Can Do
- AJAXy Importing (avoids timing out on large data sets)
- Import Images via a URL (Requires allow_url_fopen or cURL on your server)
- Set Featured Image
- Import Categories and Tags (Categories and Tags are created if they don’t exist)
- Add Categories and Tags to Products by Category/Tag Name or ID.
- Import Custom Fields
- Set Visibility on Custom Fields
- Map any CSV column to any Product field (No header row required, but if you happened to include one, I’ll use it to take a stab at what goes where)
- Map multiple CSV columns to one Product field (last non-empty column wins, good for merging columns)
- Basic validation for multiple-choice fields (fields with a limited set of valid values like yes/no, instock/outofstock, etc.)
- Dollar signs, commas, etc. are stripped out of number fields like prices, weight, length, width, height
- If SKU already exists, existing product is updated rather than inserting new product.
Importable Product Types
- Simple Products
- Virtual Products
- Downloadable Products
- External Products
Full List of Importable Attributes
- post_title (Name)
- post_content (Description)
- post_excerpt (Short Description)
- _price (Price)
- _sale_price (Sale Price)
- _tax_status (Tax Status)
- _tax_class (Tax Class)
- _visibility (Visibility)
- _featured (Featured)
- _weight (Weight)
- _length (Length)
- _width (Width)
- _height (Height)
- _sku (SKU)
- _downloadable (Downloadable)
- _virtual (Virtual)
- _stock (Stock)
- _stock_status (Stock Status)
- _backorders (Backorders)
- _manage_stock (Manage Stock)
- product_cat (Categories, by Name or ID)
- product_tag (Tags, by Name or ID)
- Custom Fields
- Product Images (By URL or Local File Path)
- _button_text (Button Text, for External Products)
- _product_url (Product URL, for External Products)
- _file_path (File Path, for Downloadable Product)
- _download_expiry (Download Expiration, in Days)
- _download_limit (Download Limit, an integer)
If you like this plugin but need a little more functionality than it can provide, we’re always available to do custom work. Get in touch with us to talk about your specific project needs.
Our git repo for the project is here: https://github.com/dgrundel/woo-product-importer
You can download the latest version directly from github here: https://github.com/dgrundel/woo-product-importer/zipball/master

166 Comments to A Free, Simple WooCommerce CSV Importer
by Elliot
on November 26, 2012 at 6:21 pm
Thanks for this – looks ideal.
Elliot
by Sun
on December 26, 2012 at 1:20 pm
Hi,
thanks so much for this, its a great plugin.
However, I have a problem, I mapped Sales and Regular Price both both its not showing Sales Price.
Any help would be appreciated
by Sun
on December 26, 2012 at 1:32 pm
Also, i uploaded images (first I uploaded them to media library and then added url in csv file) but during upload it says “Updating product with ID 927. ‘HTTP/1.1 404 Not Found’ encountered while attempting to download”
Can you advise on this as well. My files are there in media and url is also right.
Thanks…
by Daniel
on December 26, 2012 at 3:42 pm
Hi Sun,
Please email a copy of your CSV to me at info@webpresencepartners.com
I will have a look at both problems and see what we can do for you.
Daniel
by Roland
on December 30, 2012 at 12:17 am
I think the “strtolower” is not a good idea. Maybe that’s Sun’s problem.
by Daniel
on December 30, 2012 at 9:15 pm
Roland, good call. I have removed that call to strtolower.
Sun, let me know if the problem persists.
by J.Ant
on January 2, 2013 at 12:22 am
Great stuff! just what I needed!
Although I am missing a critical feature for my project: the ability of uploading “external” products, with their external product URL and text.
This feature is listed as being in the roadmap – do you have an approximate release date?
Many thanks for this guys!
by Daniel
on January 3, 2013 at 4:18 pm
Hello,
I added the ability for you to import external products. Happy importing!
Daniel
by J.Ant
on January 3, 2013 at 10:19 pm
External product happily imported!
Many thanks Daniel, you’re a legend!
by Andy
on January 10, 2013 at 2:42 pm
First I would like to thank you for a great plugin that has saved me time and money! I would like to see one other feature added which I’m sure others will find very useful.
1) Import option to add as “Draft”
I can also confirm with “Sun” that price and sale price are mapped correct however the page isn’t showing the sale price, for some reason clicking the page and pressing “Update” will refresh the product and display the page, a little annoying for over 1000+ Products, but not sure if its an importer issue or a WooCommerce problem?
Kind regards
by Daniel
on January 10, 2013 at 4:15 pm
Hi Andy,
You’re quite welcome. Thanks for using the plugin.
Importing as a draft is a good idea. I will add ‘post status’ to the import options, and you can use any valid WordPress ‘post_status’ value (draft, publish, private, etc.) in your CSV.
I will look into the sale price problem. I am sure it is something I missed with the importer. WooCommerce has a habit of storing things in two places at once (the product type for example!) so I’m sure there’s just another value that needs to be added to the database.
Daniel
by Daniel
on January 10, 2013 at 7:53 pm
Andy,
Download a fresh copy of the plugin and you should have everything you need.
I have added the option to import the post_status field. Make sure you use a valid WordPress column value. In your case, it’s probably either ‘draft’ or ‘publish’.
I also discovered a little bug in the way I was handling price importing. Your sale prices should import without issue now!
Daniel
by Keith
on January 11, 2013 at 2:36 pm
Fantastic plugin.
One additional idea is to add an option to remove those from the database not on the new CSV upload file, as some folk, like me manage the lists on a spreadsheet then have to manually remove those from the database, which some days can be quite a lot, as we may have shifted the stock via Ebay and not the store.
One question:
How do we add subcategories? I can manage without, but would be handy.
Many Thanks,
Keith
by Andy
on January 11, 2013 at 3:21 pm
Daniel,
Works a treat and sale and price are working as should. I do however have another request with data input..
Drafts option works really well!
Is it possible to check if price and sale price cells are same then only import price (exclude sale)?
Regards
by Daniel
on January 11, 2013 at 3:56 pm
Keith,
Thanks!
With the latest update I made in the last couple of days, you can now import the post status column. The normal status is ‘publish’, but you could set some products to ‘trash’ if you want to remove them from the site. To completely kill them, you’d just need to go to the Products admin area and empty the trash.
You can import into existing subcategories by ID or name (assuming the name is unique across all categories) just like any other. As it stands now, however, subcategories cannot be created during the import. I will add this to the plugin very soon, however.
Daniel
by Daniel
on January 11, 2013 at 4:04 pm
Andy,
Glad that’s working.
Technically, there are three pricing fields stored for each product: “_price”, “_regular_price”, and “_sale_price”:
“_regular_price”, as you can imagine, is used to store the normal item price.
“_sale_price”, again pretty obvious, is used to store the sale price for the item.
“_price”, however, is the actual number that shows up on the website. If it is the same as the _sale_price, you get those little sale banners everywhere and the price shows the regular price struckthrough and the sale price next to it. If _regular_price and _price are equal, you get the standard behavior.
The plugin accepts values for both _regular_price and _sale_price. If the _sale_price is provided, the plugin uses that value to set _price. If not, the plugin sets _price equal to _regular_price. If you don’t want to put a product on sale, you would just leave the _sale_price column in your spreadsheet blank for that particular product. The importer skips over empty values.
by Daniel
on January 13, 2013 at 9:07 pm
Ladies and Gents,
Subcategories can now be imported!
Just use a “path” in your CSV, like so: Category/Sub Category/Sub Sub Category
You can still separate multiple sets of categories with a pipe (“|”) character, so you could do something like this: Parent Category/Child Category|A Different Category|Yet Another Category
Happy Importing,
Daniel
by Roland
on January 14, 2013 at 10:18 pm
I checked your plugin few weeks ago, and I love it. Now I saw you added some great features. You are Amazing!
by Sobi
on January 15, 2013 at 1:13 am
Hi, such a wonderful work ! but I’m having problem with updating my product as it can’t import all of them and then my wordpress goes missing
! I should say that my CSV file contains more than 5000 product with their details so I wasn’t sute whether the problem belongs to my web hosting or your plugin ! any help would be greatly appreciated , many thanks again for this wonderful fully functional plugin
by Daniel
on January 15, 2013 at 1:20 am
Thanks, Roland! And thank you to everyone who has reported issues and suggested improvements. I’m grateful to all of you for using the plugin and making it what it is today.
by Daniel
on January 15, 2013 at 1:24 am
Hi Sobi,
That sounds quite strange. Can you tell me more about WordPress going missing? What happens?
It is possible that your server is running out of resources. If you’re on shared hosting, your hosting provider may have systems in place that are stopping the process because it is using too many resources. Are you also importing images with your products and if so, are you importing multiple images per product?
I have successfully imported large sets of data with the importer, but I’ve only done about 2,500 at a time. Can you send me your CSV? daniel@webpresencepartners.com
Thanks!
Daniel
by Sobi
on January 15, 2013 at 9:14 pm
Hi Dear Daniel
first of all I should thank you for your quick and kind reply
no I just Import one picture per product via URL !
and about the server you are right , to give you a better answer , here is the response of my hosting support (FATCOW.com) which made me more blunder as I’m just a typical user not a computer geek !!!:( I really don’t know how to boost my mysql as I have no experience on doing these kind of things before and watching those codes makes my look like a big ERROR!!!
“Hello,
We apologize for any inconvenience this has caused you. This (Woo Product Importer) CSV import utility hangs up because, by default, PHP has a low memory/upload limit for any given script. However, we’ve already set the maximum PHP memory limit and upload limit for your account. It looks like the cause is probably a plugin. Some plugins requires large memory and upload limit. Therefore, I would suggest that you please contact the author/vendor of Woo Product Importer plugin about the problem.
Also, as you might aware, the website issue which you’re experiencing may due to issue with query for the MySQL database which is being used by your website. If the MySQL user exceeds the database query limit, which is 75,000 per hour per user, then the website is unable to connect to the database and it will be resulted in the error message or your website shows installation page. This setting is in place to ensure that the MySQL database cannot be overloaded with to many query requests. The queries will reset every hour and is kept by user; however every time the pages on your website are accessed you are still attempting to make queries to the database server. As a temporary fix for this issue you can delete and recreate your user. Below is a link that should help show you how to optimize your MySQL usage:http://www.sitepoint.com/article/optimizing-mysql-application .
If you have any further questions, please update the Support Console.
Sincerely,
Gavin Ranch
Technical Specialist”
by Wayne
on January 16, 2013 at 12:08 pm
Hi Daniel,
I got a problem that when I import the csv, all the custom attribution(not from the attribution tab but create directly from product edit page) and variance setting will be gone.
Can you please advise?
Thanks in advanced!
Cheers,
Wayne
by Wayne
on January 16, 2013 at 2:07 pm
Hi Daniel,
On top of my prior post above, I did some test on my issue.
1) If the attributes is created in product edit page. Once you re upload csv, both attributes and variation setting will gone. But if you re-create the same attribute, the variation appear automatically.
2) If the attributes is created in attribute tab(product->attributes), once you re upload csv, the attributes in product edit will NOT disappear, but the box of “USE FOR VARIANCEs” will be UNCHECK. So the variances setting will not appear.
I search further on you website and understand this is still an issue on your to do list. Since half of my product is variable.
I do appreciate this issue can be fixed asap.
THX again!
Cheers,
Wayne
by Daniel
on January 16, 2013 at 4:29 pm
Hi Wayne,
Yes, that is definitely on the to-do list and I have a solution for it. Just need to get around to implementing it.
Give me a day or two and we’ll get you fixed up.
Daniel
by Sobi
on January 16, 2013 at 5:12 pm
Hi dear Daniel
I just wanted to ask if there is any way to import my product images from my wordpress library not to overload mySQL ? Thanks
by Daniel
on January 16, 2013 at 5:22 pm
Hi Sobi,
I just read your comments. The MySQL query limit is something that’s pretty tough to get around. WordPress performs lots of SQL queries during its normal operation, as does the product importer. My suggestion would be to break your CSV file up into smaller pieces. Try doing 1,000 products at a time, once per hour. It’s going to take you a while, but it should work.
Hope that helps.
Daniel
by Ariful
on January 17, 2013 at 1:08 pm
Thank you very much you have made my work so easy
by Keith
on January 17, 2013 at 5:09 pm
Many thanks for all this work Daniel, much apprecited by myself, those on here and many folk in the years to come.
I upload around 2,500 no problem. Now and again it will hang, but then i just restart it. It actually installs the data faster on my lower spec server!! Go figure. Both dedicated, but that’s not an issue, I twiddle under the server bonnet one day
Sobi: It may be worth looking for another web host. I use MyHosting.com, $20 for a good spec reliable VPS. If anyone uses them base it in Canada not the US… saves a lot of legal issues
by Wayne
on January 22, 2013 at 9:41 am
Hi Daniel,
Thank you for your hard work! I do really appreciate that!
I am wondering is there any progress for the issue of over write on the variation product setting after uploading csv?
Thanks again!
Warm regards,
Wayne
by Daniel
on January 23, 2013 at 4:51 pm
Hi Wayne,
I’ve just completed an update to the plugin. Your variation settings should be preserved now. Give it a shot and let me know if you have any trouble.
Side note for everyone else:
I also spent a bit of time this morning updating how the plugin handles automatic detection of fields based on the CSV header row. Thank you to everyone who has sent me a sample CSV file; almost all of the columns in your CSVs should now automatically map to the correct product field! You will, of course, still need to manually select for custom fields. I have an idea to fix that, too…
Daniel
by Mike
on January 25, 2013 at 5:27 pm
Hi Daniel,
This plugin looks phenomenal BUT I’m have some serious issues with it – I downloaded it from github and uploaded the sample CSV, which worked perfectly.
I then tired with my own CSV file and I got the following errors:
Notice: Undefined index: header_row in /var/www/vhosts/MYSITE.com/shop/data/wp-content/plugins/CSV-IMPORTER/woo-product-importer-preview.php on line 66
Notice: Undefined index: header_row in /var/www/vhosts/MYSITE.com/shop/data/wp-content/plugins/CSV-IMPORTER/woo-product-importer-preview.php on line 228
I then tried again with your sample CSV and got the same error. Rather odd so deleted the plugin and reinstalled – I’m getting the same errors.
Any ideas around it?
Many thanks for all your hard work, Mike
by Mike
on January 25, 2013 at 5:40 pm
I forgot to add, when I tick the Header Row tik box, I get:
Warning: Invalid argument supplied for foreach() in /var/www/vhosts/MYSITE.com/shop/data/wp-content/plugins/dgrundel-woo-product-importer-83fbb53/woo-product-importer-preview.php on line 248
by Mike
on January 25, 2013 at 7:45 pm
Sorry for the continuous posts – I’ve managed to make the uploader work by saving the CSV file as a “Windows Comma Separated (CSV)”, not a normal CSV (I’m using a Mac) – I still have the errors being shown though (Line 66 & line 228).
I’ve just been giving the plugin a thorough test and have found one slight problem. I uploaded the CSV file once, made a few changes and re-uploaded it.
The changes worked fine BUT the product image is now duplicated, i.e. I now have two copies of the same product image for each product. Is there any way around this?
All the best,
Mike
by Kevin Brinkman
on January 28, 2013 at 4:19 pm
Hi Daniel,
Thank you so much voor this plugin, it really saves a lot of time. Unforrtunalety I have a problem. I get dubble images when Im update existing products. Do you have any idea how to prevent this? Thanks again.
Kevin
by Daniel
on January 28, 2013 at 8:26 pm
Hey Mike,
Thanks for the feedback. Can you send me a copy of your CSV file so I can look into those PHP errors? daniel@webpresencepartners.com
Also, to answer both you and Kevin regarding duplicate images: I can really only offer you a workaround at the moment, which is to set the image column to “Do Not Import” once you’ve already imported the images. However, I do have an idea as to how to eliminate those duplicates and I’ll implement it in the coming weeks.
Daniel
by Daniel
on January 28, 2013 at 8:28 pm
Kevin,
Just wanted to formally reply to you as well. My only workaround for you is to not import the images again using the “Do Not Import” column mapping option. I will be working on a solution for the problem, though.
Daniel
by Sun
on January 29, 2013 at 9:06 am
Hi Daniel,
I am having a small problem with image uploading. I am using via url option. However it gives me error
Updating product with ID 8497. ‘HTTP/1.1 200 OK’ encountered while attempting to download ‘http://orderperfumeonline.com/wp-content/uploads/2013/01/Aigner-Aigner-Pour-Femme-Eau-de-Parfum-for-Women-100-ml-1.jpg’. Couldn’t download file ‘http://orderperfumeonline.com/wp-content/uploads/2013/01/Aigner-Aigner-Pour-Femme-Eau-de-Parfum-for-Women-100-ml-1.jpg’.
Earlier, with the same file, it was working fine and all images were uploaded in right manner.
Will appreciate your help.
Thanks a lot.
by Sun
on January 29, 2013 at 10:18 am
Hi Daniel,
ignore my query, i figured it out. Images were duplicated while uploading hence the error was. I cleared up media and did again, it worked smoothly.
Thanks so much for the plugin.
by mike
on January 31, 2013 at 10:34 am
Lovely plugin. My thanks for your hard work
I’m having an issue with the import. The plugin does not import my CSV and error message says
“Couldn’t find or create product_cat with path Fish Specialities. Couldn’t find or create product_cat with path Shellfish.”
(the site sells food with various food categories. Hope you can point me in the right direction.
by Daniel
on January 31, 2013 at 5:20 pm
Hey Mike,
Thanks for the feedback. Can you send me the CSV file you’re working with? daniel@webpresencepartners.com
Daniel
by bonnie
on February 2, 2013 at 5:15 pm
Hi Daniel, first thanks for your plugin and the continued support on it, its nice to see and very much appreciated!
Just one simple question, is there anyway to update the plugin when updates are made rather than delete and install again? or is this a feature only allowed to wordpress hosted plugins?
by Mike
on February 3, 2013 at 10:31 pm
Hi Daniel,
Could explain how to use the plugin with Custom Fields?
Basically, I’d like to create some fields on my product database that I can populate using your amazing plugin.
For example, I’ve like to create fields such as:
Material, Size, Designer, Delivery Time etc and set them to populate sections of my product template php file. I know that this might be stretching the level of support you offer but I’ve been going out of my mind trying to figure this out.
Basically, I would like to know:
1) How do I create a Custom Field for products?
2) How can I get your plugin to pick up this field?
3) How can I reference this field in my product template php file so that it brings in the right information?
I’ll happily give a donation to your plugin if you can help!
by Daniel
on February 4, 2013 at 8:35 pm
Bonnie,
That’s something that is built into the WordPress.org hosting. I will be adding the plugin to the WordPress.org repository in the near future.
Daniel
by Daniel
on February 4, 2013 at 8:54 pm
Hi Mike,
Custom fields are just little bits of information that are stored alongside the product, just as you have noted. (Material, Size, etc.) All you have to do is create a column in your CSV file for each custom field you want to create in the product. So, create a Material column in your CSV and include the value for that column (such as Cotton, Silk, etc.) in each row.
To use the fields (which are actually called Custom Attributes by WooCommerce), you can use the member functions** of the WC_Product class has_attributes, get_attributes, and get_attribute. You can read about them in the WooCommerce docs here:
http://wcdocs.woothemes.com/apidocs/class-WC_Product.html
**Note that the functions I referenced are member functions of the WC_Product class. That means you’ll have to have an instance of that class to call them. So, the simplest possible example would be something like this:
<?php print_r($my_product->get_attributes()); ?>
by Mike
on February 5, 2013 at 5:46 pm
Hi Daniel,
Many thanks for explaining the Custom Fields for me – I realised what there were after I posted. Did you get my email? The problem I’m having with the importer is that I’m getting another PHP error inside the custom fields settings box:
Notice: Undefined variable: header_row in /var/www/vhosts/mysite.com/shop/data/wp-content/plugins/dgrundel-woo-product-importer-83fbb53/woo-product-importer-preview.php on line 274
by Dwayne Deziel
on February 5, 2013 at 7:46 pm
First off this is a great free plugin. I am having one small problem and that when I import products if there are any extra spaces in the product description it will not continue upload the entire description just up to the point there is an extra space or in some cases a special character like ™ or ° . Is there any way around this? Please let me know when you can, thanks
by Mike
on February 5, 2013 at 8:25 pm
HI Daniel,
I’ve got the Custom Fields working by simply deleting the error code and adding in my desired Attribute name.
I can get ALL custom attributes to display by using this code:
list_attributes(); ?>
…but can’t work out how to specify a specific attribute. Any ideas?
Many thanks,
Mike
by Mike
on February 5, 2013 at 8:27 pm
Sorry, the code didn’t post – this is the code without the php tags – hopefully it should post now!
global $product;
php $product->list_attributes();
by Mike
on February 5, 2013 at 8:58 pm
Ok, I’ve done it
echo $product->get_attribute( ‘MY ATTRIBUTE NAME’ );
You might want to delete a few of my posts!
by Daniel
on February 7, 2013 at 6:43 pm
Hi Dwayne,
I’ve found that some problems like that can be remedied by opening the CSV file in Excel and re-saving it (still as a CSV file of course.) The importer uses PHP’s built-in CSV handler so there’s not a lot that can be done if the plugin doesn’t like your file.
If that doesn’t help, I’ve also made a small tweak to the plugin code that may help you. Grab the latest version (https://github.com/dgrundel/woo-product-importer/archive/master.zip) and re-install it on your site.
Daniel
by Jason
on February 7, 2013 at 7:11 pm
Hi Daniel,
Thanks a lot for developing this. Definitely a great addition to woocomerce. Under what license is this code released? Would you please consider adding licensing information into the git repository?
Thanks,
Jason
by Daniel
on February 7, 2013 at 8:03 pm
Hi Jason,
Good point. I was planning to get around to that one of these days.
I have selected the GNU LGPL and included that in the Git repo.
Daniel
by oscar
on February 10, 2013 at 10:32 pm
Is there a way to change the separator for each column from ‘,’ to ‘;’ ?
by Daniel
on February 11, 2013 at 2:05 pm
Hi Oscar,
Currently, there isn’t a user-friendly way to do that with the plugin. I would suggest opening your CSV file in Microsoft Excel (or something similar) and re-saving the file as comma-separated.
Daniel
by Espen
on February 13, 2013 at 1:29 pm
Hi! I keep getting this msg for all images when doing imports:
” encountered while attempting to download ‘http://www.*****.no/wp-content/uploads/csv_import/70824.jpg’. Couldn’t download file ‘http://www.*****.no/wp-content/uploads/csv_import/70824.jpg’.
A cut´n paste to my browsers adress-field shows the file-path is correct and file is accessible. Any ideas?
by Espen
on February 13, 2013 at 2:51 pm
Oh, and this was with the “image by URL” option. I did the process with “image by local path”, which worked.
1653 products are now importing with both one and two images. Thanks for a great plug-in!
Kind regards, Espen.
by Daniel
on February 13, 2013 at 3:02 pm
Hi Espen,
Thanks for using the plugin and glad you got it working! I myself have had mixed results trying to use the URL import with URLs on my own domain.
I recommend using the local path option if the files are already on your server, anyway. Using local path, the images are simply added to the WordPress database rather than copied to the wp-content folder so you avoid making unnecessary duplicate copies of image files and save a little bit of disk space. Or a lot of disk space with 1653 products.
by Christian Suter
on February 18, 2013 at 4:18 pm
Hello Daniel
I feel great plugin to import csv in woocommerce
works fantastic
which plugin do you recommend for making export and is compatible with your plugin?
Thanks
Christian
by Daniel
on February 19, 2013 at 3:07 pm
Hi Christian,
I created a simple export plugin a while back that is compatible with this plugin. However, it creates a publicly-available CSV of your product and there are no configuration options. It may or may not work for your purposes, but it is also available on Github here: https://github.com/dgrundel/woo-product-feed
Daniel
by Andy
on February 20, 2013 at 9:40 pm
Love the plugin – Is the ability to add variable products available yet? Thanks!
by Daniel
on February 21, 2013 at 2:50 pm
Hi Andy,
Thanks for using the plugin! No, we haven’t built that in yet. We have been very fortunate to be overrun with new work lately and so I haven’t had much time to work on the plugin.
by Joan
on February 28, 2013 at 1:48 pm
Hi Daniel,
Great plugin, congratulations!
I have two little questions:
How could I write in the description a comma without having problems with the commas that are used to separate values?
I’m doing a website in spanish and my products have “special caracters” like á or é and when I import it, the program doesn’t read that correctly. How could I solve that?
Thank you for this plugin, really amazing.
Maybe these questions are easy but i’m not at all and expert in IT…
Joan
by Daniel
on February 28, 2013 at 4:56 pm
Hi Joan,
You can include commas in your text by enclosing the text in quotation marks (“). So it would look like this:
column one,column two,”column three, still column three”,column four
For the time being, the best solution is run a find and replace on your special characters, replacing them with the appropriate HTML entities. You can use either the named or numbered entities, but I prefer the named because they’re easier to read. For example, you would want to replace “á” with “á”.
There’s a pretty comprehensive reference of these entity codes here: http://www.w3schools.com/tags/ref_entities.asp
Keep in mind that there are different codes for the upper and lower case variations of those characters.
by Rocky
on March 1, 2013 at 2:08 pm
Hello Daniel,
Thanks for the amazing plugin, that’s really what i’m looking for, as I have more than 2000 produtcs need to import. I just download and install it. But I have some trouble when I try to import the sample csv from your document. On the “Preview”page, there are no “manufactur”,”categories” and “images” options in the dropdown area which can map to the file. As my product is clothing, so there are many sizes for each product, such as jersey size, pant size, and each size will have S/M/L/XL,how can I creat this attributes? And is it able to upload more than one pic for one product? By the way, can “manufactur” be changed into “Brand”?
Thanks
Rocky
by Daniel
on March 1, 2013 at 4:30 pm
Hi Rocky,
You are correct that there is no manufacturer field to use. That would be imported as a custom field. Select Custom Field from the dropdown menu, then enter Manufacturer as the field name in the box that appears.
There are indeed choices in the dropdown menu for both images and categories. In fact, there are two for each.
You will most likely want to use Categories by Name to import your categories. You can include multiple categories by separating your category names with pipe characters (“|”). A product categorized in both Hats and Accessories might have a column that looks like this: Hats|Accessories
For your images, there are also two options for importing. You will need to supply either a full URL to an image that is not already on your server, such as http://example.com/images/product.jpg or, if the images are already on your server, you can import them using their local file path on the server. That would look something like this: /public_html/images/product.jpg In these two cases, you would use either Images (by URL) or Images (by Local File Path), respectively. Also, note that you can import multiple images per product by separating your URLs or file paths with pipe characters, in much the same way you separate multiple categories.
Hope that helps.
by Uddhava
on March 2, 2013 at 1:23 pm
Daniel,
I am researching to move my current webshop (using prestashop) to Woocommerce. I stumbled upon your plugin after looking for ways to import an existing catalog of products into woo. So far importing products is made easy with your plugin, and various other plugins.
But a big concern are the SEO fields that i am using in Prestashop. This is really an important part of the shop and the place in google search. So far i have not found a plugin that can import products + seo fields (in my case Yoast SeO) in one go.
So how to solve this? Preferably i like to import my category structure first (without products) including seo fields. And import products with seo.
Did you happen to come accross this anywhere?
by blaise
on March 5, 2013 at 4:53 am
Hello
Have attributes been implemented?
Thanks
Blaise
by tom
on March 5, 2013 at 5:04 pm
excellent plugin, it works really well!
is there a way to store an import once all the import settings are set up correctly?
this would allow to re-import a feed, eg on a daily basis, maybe even by cronjob.
by Rocky
on March 5, 2013 at 7:53 pm
Hello Daniel,
Thanks for the explanation, I tried again with my own file, and I got below problems:
1. I import 100 products, but only 5 products can display.
2. Prices don’t display.
3. Stock Status, it’s “in stock” in my file, but it turned out as “out of stock”.
4. As I tried to import few times to renew the products, but it seems the pics will be added the same for each time, which means if each product has 3 pics, and i upload 3 times, then the pics display will be 9. how to remove the needless pics?
5. The Custom Fields is not able to import the Attributes(Size), I saw Mike’s Comment above mentioned to put some code(echo $product->get_attribute( ‘MY ATTRIBUTE NAME’ );
) to make it work, but i don’t know where i can put it, and if i need any change for my file.
Would you please help? This is my site: www.rockycycling.com, and I will send my csv file to your email and also the screenshot of my product.
Thanks very much!
Rocky
by Daniel
on March 5, 2013 at 9:50 pm
Hi Rocky,
I just replied to the e-mail you sent. Have a look at that.
Hope it helps,
Daniel
by Daniel
on March 5, 2013 at 9:51 pm
Hey Tom,
That is definitely planned. WP has its own built-in cron functionality that we can take advantage of to do just that. Would be an excellent feature for drop-ship stores…
Daniel
by Daniel
on March 5, 2013 at 9:52 pm
Hi Blaise,
I replied to your e-mail a bit earlier. As of right now, global attributes have not been implemented. It’s a frequently requested feature, but opens up a real can of worms.
I am working on a good approach to do it.
by Daniel
on March 5, 2013 at 10:14 pm
Hello Uddhava,
As far as importing SEO fields that go with your categories, the plugin can’t do that just yet.
However, I have just added the ability to import any WordPress post meta field. Using this, you can import your SEO title, description, etc. For example, the SEO Title uses a meta key of “_yoast_wpseo_title” and the description uses the meta key “_yoast_wpseo_metadesc”. Here’s a full list of the meta keys the SEO plugin currently uses:
_yoast_wpseo_google-plus-description
_yoast_wpseo_opengraph-description
_yoast_wpseo_redirect
_yoast_wpseo_canonical
_yoast_wpseo_sitemap-prio
_yoast_wpseo_sitemap-include
_yoast_wpseo_meta-robots-adv
_yoast_wpseo_meta-robots-nofollow
_yoast_wpseo_meta-robots-noindex
_yoast_wpseo_metadesc
_yoast_wpseo_title
_yoast_wpseo_focuskw
_yoast_wpseo_linkdex
by Anastasia
on March 6, 2013 at 8:40 am
Hello,
I have a problem with plugin. I loaded the products via CSv file. Everything looks good in backend. But they did not appear on the website.
Thank you
by Daniel
on March 6, 2013 at 2:41 pm
Hi Anastasia,
Can you send your CSV file to me? daniel@webpresencepartners.com
Daniel
by Vitaly
on March 6, 2013 at 9:06 pm
Nice job. Work well with images and Woocommerce 2.0.
by Anastasia
on March 7, 2013 at 9:01 am
Guys,
I uploaded Hierarchical Categories but on the websites they are just a list. Is it supposed to be like that?
by Daniel
on March 7, 2013 at 2:20 pm
Anastasia,
I just reviewed the CSV file you sent me. If you are using that CSV to import your categories, the reason you’re having trouble with the categories is because you have them separated with pipe characters rather than forward slashes. You want to use forward slashes (/) to separate the categories in a hierarchy.
There’s a more detailed explanation here:
http://webpresencepartners.com/2013/01/13/importing-hierarchical-categories-into-woocommerce/
Daniel
by Daniel
on March 7, 2013 at 2:22 pm
Anastasia,
Just to follow up here as well as in e-mail (and in case this helps anyone else), make sure your visibility column is using one of WooCommerce’s expected values:
visible
catalog
search
hidden
by Dave
on March 8, 2013 at 2:55 am
Great plugin. Just one issue: When importing, the preview screen is vertical format instead of horizontal.Sounds weird and it is. I’d like to send you a screendump so maybe you could provide some assistance.
Thanks in Advance
Dave
by Dave
on March 8, 2013 at 2:57 am
Sorry for two posts. This problem keeps me from mapping the fields to get a correct import.
by Daniel
on March 8, 2013 at 2:08 pm
Hi Dave,
Yes, please send over a screenshot. You can e-mail it to daniel@webpresencepartners.com or, if you prefer, you can open an issue on Github and submit a screenshot there: https://github.com/dgrundel/woo-product-importer/issues/new
Daniel
by Frede R Jensen
on March 11, 2013 at 2:26 pm
First of all, thanks for a really great plugin, and secondly, sorry if this has allready been answered. i couldn’t find it if it were.
In my country (Denmark) we have som special letters like (æ; ø and å) don’t know if these translates if being viewed in a non danish browser..
When i try to import products which have any of these 3 letters in the title i get the following error on the “[object Object] null” on the preview screen i can see that the “strange” letters are shown as little boxes, or other strange letters, do i need to do something on the site, or my PHP file for it to work with danish letters? I can create a product manually using these letters without problems..
My (temporary) site can be viewed here: shop.kontorbutikken.dk
by Daniel
on March 11, 2013 at 4:28 pm
Hello Frede,
This has been a problem a few people have reported. I am happy to report that I have updated the plugin with a better solution than was previously available.
Grab the latest version of the plugin: https://github.com/dgrundel/woo-product-importer/archive/master.zip
Once installed, click the Advanced Settings button when uploading and select the proper locale for your language. There may be several options for your language, so try several of them until you find one that works.
Please let me know how it works for you!
Daniel
by Ross
on March 15, 2013 at 8:33 pm
Hi Daniel,
Wish I found your post before buying the commercial plugin
Anyway, I ran the import on a small sample site and received a success message, but when I view the woocommerce product list page, the new products are not there.
Strangely, beside All in brackets, I see the correct quantity, but they are simply not not visible in the list.
Note, beside Published I see an incorrect quantity.
There were 2 products before the import.
After 2 separate imports, one product in each import, I now see;
All (4) Published (2)
I know the imported products exist because each confirmation screen after the import listed the new post id, and it launches the product in edit mode.
Do you happen why they are not visible on list page?
Thanks for creating a great free plugin.
Ross.
by Daniel
on March 18, 2013 at 3:52 pm
Hi Ross,
It may have something to do with the values in your CSV. Can you send a copy of it to daniel@webpresencepartners.com?
Daniel
by Ross
on March 20, 2013 at 5:17 pm
Hi Daniel,
The problem was that I used “published” in the status column, and I needed to use “publish”. I was using “published” with the woocommerce importer and didn’t realize I needed to change it.
I have another question please… with the woocommerce importer, I was able to simply separate the image filenames (i.e. image1.jpg|image2.jpg) and somehow the importer new where to look for (I had previous uploaded uploaded them in the WordPress library), but your plugin, at least from what I have read, requires a full path to the image.
This is a little tricky because of the larger quantity of images already formatted the other way inside my CSV file.
Am I understanding this correctly, or is there a way to use simply the filename separated with pipes?
Thanks, Ross
by Daniel
on March 20, 2013 at 8:19 pm
Hi Ross,
I’m glad you figured it out. I suspected it was something along those lines.
You are correct; you will need to include full paths to each file in your CSV.
Using a spreadsheet program like Excel should make it relatively painless to split that column apart, prepend a proper file path, and then merge them back together. Check out Excel’s Text to Columns feature to separate your image names into multiple columns. Once that’s done, you can use a simple formula like ‘=”/the/file/path/” & B2‘, where B2 is the cell that has the image name in it.
Daniel
by Andrew
on March 22, 2013 at 4:33 am
Hello Daniel,
First off, Absolutely amazing plugin, Ive tried many others which failed in many different areas, yours is smooth and 100x faster than the competition, im very impressed.
The only issue im having involves categories. For example when I list my categories:
parent/sub/subsub/subsubsub it will only populate the items into the “subsubsub” category and none of the upper-level categories.
My second issue was that one of my particular categories, rather than creating a category and putting all 56 items into that category, it created a separate category for each of the 56 items using the same category name and adding a number to the slug, so I had 56 products in 56 different categories, however my other 470 products were added perfectly into their respective category.
Great Plugin, keep this going, this is definitely something i’d be willing to pay for (and I will be donating as well), and thanks for the formula for adding the images it saved a lot of time and hassle!
Andrew
by Jorge Monteiro
on March 22, 2013 at 9:17 am
Hi, are you going to add at any point the importing of variable products ?
thanks
jorge
by Daniel
on March 22, 2013 at 6:31 pm
Hi Andrew,
Thanks!
Regarding your first issue, that is the intended behavior of the plugin. You would have to use a value like “parent|parent/sub|parent/sub/subsub” to achieve what you’re after. You can probably work something up in Excel to do that for you as well.
The second issue is definitely not intended behavior! Make sure that category name doesn’t have any special characters in it or leading or trailing spaces in the name. I suspect it’s something like that causing your problem. Can you send me a copy of your CSV so I can take a look? Even if you get it working on your end, I’d like to study your CSV so we can correct the issue for everyone.
Daniel
by Daniel
on March 22, 2013 at 6:33 pm
Hello Jorge,
I am planning to add that in eventually, but not in the very near future. I have a couple other features planned first (like scheduled automatic imports.)
Daniel
by Andrew
on March 22, 2013 at 11:56 pm
Hello Daniel,
Thanks for the quick reply, you were completely right, the issue was with a trailing space at the end of my category path.
Keep up the good work with this plugin, perhaps you should contact WooThemes directly, as they have a CSV Import extension but doesnt have the functionality yours does.
by Anastasia
on March 25, 2013 at 9:55 am
Hello Daniel,
I imported grouped products. How can I update child products? What column should I use?
by Giuseppe
on March 25, 2013 at 11:04 am
Hi Daniel,
many thanks for this outstandig plugin, it’s the best now for woocommerce.. I’ve only one problem with custom field, I use that for Manufacturer. In admin product page it’s imported ok, but if I use Layered Nav widget for filter by manufacturer doesn’t appear..
Also this problem it’s present for other attribute.. (imported as custom filed( Now i’m on last Woo Release 2.0.4.
Regards,
Giuseppe
by Daniel
on March 25, 2013 at 2:05 pm
Hi Anastasia,
The plugin isn’t set up to deal with grouped products, but you should be able to update individual products in the group by including their SKUs in the CSV.
by Daniel
on March 25, 2013 at 2:13 pm
Hi Giuseppe,
I suspect that you need to use *Global Attributes* in order for them to show in layered navigation rather than the custom fields that the plugin currently supports. I will work on adding support for those soon.
Daniel
by Mary
on March 29, 2013 at 2:47 am
Thanks for an awesome and easy plug-in! I have a couple of questions:
1) How can I add shipping classes? Where do I find the right terms?
2) I am confused by this statement Map multiple CSV columns to one Product field (last non-empty column wins, good for merging columns). If I put 3 columns to Description only the last one shows. How do I add the others?
3) Only parts of my descriptions are showing. I have html in the csv file in the description field. Does it stop when it gets to html?
by kalen
on April 1, 2013 at 11:20 pm
hello,
I am having a problem on my website www.zombiexing.com
I am not sure if I am doing something wrong or if it a limitation of the plugin.
so, I download my product csv from my suppliers website and upload the name, sku, description, price, and some custom fields.
then I have to open the csv in excel and add a new column with some codeing to correctly set the image paths, I then add a new column with post status as draft.
I upload the second csv with name, sku, image file directory and draft status.
the problem is instead of updating the existing items as draft and adding in the images it will create an entirely new set of items, the originals and the new products with the image and drafts.
my csv has 2222 products and I end up with 4444 when this is done, I have no idea why its doing this as I was under the impression it will preserve the products with the same sku and just update them rather than cread the additional products.
I have searched around but I feel like I am the only one having this issue, other than this the importer seems to work incredibly well and I am very impressed as this seems to be by far the best free plugin out there.
I hope that you can help me and thank you for your work.
regards,
Kalen.
by kalen
on April 1, 2013 at 11:22 pm
one more thing, I was hoping to upload the csv to set the stock numbers every morning but a 2 minute job is turning into a nightmare with this issue, I would like to keep a reletivly accurate number of the in stock items but its just not possible at this rate.
thanks again.
by Daniel
on April 2, 2013 at 7:46 pm
Hey Kalen,
You are correct that the products should be updated as long as you’re including a CSV column. Make sure you’re using the “Map To” dropdown menu to let the plugin know which column is your SKU column.
If you’re still having trouble, I’d like to take a look at your CSV. Can you e-mail it over to daniel@webpresencepartners.com?
by Daniel
on April 2, 2013 at 8:03 pm
Hi Mary,
To answer your questions:
1. I just added support for this for you. I think.
Grab a copy of the latest version (https://github.com/dgrundel/woo-product-importer) and try it out. You can import using the name of the shipping class or the ID. Let me know if you have any trouble.
2. If you choose to map multiple CSV columns to a single product field, only the last value provided will be used. Empty columns are ignored, however. (Hence the ‘last non-empty column wins’ statement.) You will need to combine those columns in Excel or a similar spreadsheet program. Try using a formula to do it. For example, if you have three columns (A, B, and C) with descriptions, you would use a formula like this on column 1: ‘=A1 & ” ” & B1 & ” ” &C1′. That will combine your three columns, inserting a space between each value.
3. No, the importer doesn’t stop if it encounters HTML. It’s hard to say what might be going on there. Look for any special characters or anything else out of the ordinary. If you have Excel, open your CSV file up in Excel and make sure everything looks good there. If so, re-save the CSV file from Excel and try importing again.
Daniel
by Mark
on April 3, 2013 at 9:33 am
Hi
I have been using this importer for several months and love it – thanks!
I am now trying to add more products to my site but have a problem where the screen is now just hanging. The only difference being that I am now using WP MU – do you know if this is causing the problem?
Many thanks
Mark
by elbrucko
on April 4, 2013 at 12:08 pm
Hello,
i just tried your tool and it works very fine. Thank you very much.
There is just one Point: based on your example file the price is written as a full number (eg 1). But all my items are comma-seperated ( eg: 1,99 )
After uploading the shop shows me 199.
How can i workaround this ?
thanks in advance
by Daniel
on April 4, 2013 at 2:19 pm
Hi There,
You’ll have to “Americanize” your numbers for now. Replace the comma with a dot character, so ’1,99′ becomes ’1.99′. A simple find and replace in Excel should do the trick.
Daniel
by Daniel
on April 4, 2013 at 2:25 pm
Hi Mark,
I haven’t tested the plugin with WPMU, so that could definitely be the source of your problem. In theory, you shouldn’t have any problems as long as you are importing into the blog you’re currently running the admin for.
On the screen that the plugin is hanging at, there should be a “Show Raw AJAX Responses” button. If you click that after the plugin hangs for a while, what comes up?
Daniel
by jon
on April 5, 2013 at 3:00 pm
Thanks for the plugin – I thought it was working great up to clicking ‘import’ but I’m experiencing the same problem as Mark using WPMU. It’s just a single product csv I’m testing with.
Clicking the ‘show raw ajax responses’ button displays this message:
Warning: fgetcsv() [function.fgetcsv]: delimiter must be a character in /home/onemansp/public_html/wp-content/plugins/dgrundel-woo-product-importer-f322e4a/woo-product-importer-ajax.php on line 50 Warning: Division by zero in /home/onemansp/public_html/wp-content/plugins/dgrundel-woo-product-importer-f322e4a/woo-product-importer-ajax.php on line 78 {“remaining_count”:0,”row_count”:0,”insert_count”:0,”insert_percent”:”0.0″,”inserted_rows”:[],”error_messages”:[\"No data found in CSV file.\"],”limit”:5,”new_offset”:5}
Thanks for any help.
by Kalen
on April 5, 2013 at 11:09 pm
Hello,
Yes I map the sku column correctly each time.
I will email you both copies of my csv from home later.
Sorry for the delay in my reply as I thought it would email me when you replied.
Thank you for your time.
Kalen.
by Daniel
on April 8, 2013 at 5:56 pm
Hey Jon,
Looks like we had a little bug in the software. I’ve corrected it and posted the latest to Github.
Daniel
by Meira
on April 9, 2013 at 12:19 am
Thanks so much for this great little plugin! It works wonderfully
Exactly what I was looking for.
by Matthew
on April 12, 2013 at 8:48 am
Hi, great, great plugin.
Minor issue: On advanced settings I get error
Warning: shell_exec(): Unable to execute ‘locale -a’ in E:bekhuis.netwwwrootwp-contentpluginswoo-product-importer-masterwoo-product-importer-upload.php on line 426
and (it makes sense) this message next to locale selector: Couldn’t get a list of available locales from your server.
No major thing, I don’t have to use it for now. Server is IIS.
Custom Field / Attributes to get the layered nav working would be superb. Keep up the great work.
by Matthew
on April 12, 2013 at 9:03 am
Another suggestion might be expanding fields with upsells & cross sells using sku (sku1|sku2|sku3)
by Maxim
on April 17, 2013 at 8:28 am
Can you add update per one language functionality? We have site with 4 languages, and we need separately update languages, and at this moment it is verry difficult.
THank you!!!!
by Gery
on April 17, 2013 at 6:59 pm
Hi! Great tool. there’s nothing similar to it, no doubt about that!
One question that I didn’t see anybody else asked about it before and I really need it today:
Import url SLUGS (post_name)… how can I do that?
THANKS!!
by Jon Dennis
on April 18, 2013 at 11:18 pm
hi
Astounding plugin! … thank you
My problem is twofold:
1 – I can’t get the Images to Local Path column to be the select field in Map fields, as both Images to URL and Images to Local have the same field name, i.e. Images.
2 – Even when mapping my Images field to Images to Local Path, I constantly get the error “encountered while attempting to download /images/clients/xxx%20xxxxx/Sample%20800px%20-%2001.jpg Couldn’t download file /images/clients/xxx%20xxxxx/Sample%20800px%20-%2001.jpg.” … I’ve tried it with the spaces, without spaces, with the full root path, without etc.
Any ideas ?
by Andrew
on April 19, 2013 at 6:21 am
Hi Guys, great plugin – how do i hard code where the images are grabed from locally so all i have to have is the file name in the csv, my csv is over 25000 lines long and i update the site 1 a week – this would make it better for me when i do the updates – thank you
by Jill
on April 21, 2013 at 5:50 am
Hi. Thank you so much for this brilliant plugin. Unfortunately I’m having a problem importing a custom field. The field “Condition” was created using WP-Type plugin.
Using the Woo Product Importer I map the column Condition to Custome Field Settings, Name Condition, and check Visible.
On import it imports everything and updates correctly EXCEPT the Condition field, which it just ignores and doesn’t update.
Any ideas on how to fix this please?
Thanks
by Daniel
on April 22, 2013 at 2:37 pm
Hi Jill,
Please send me your CSV file and I’ll do my best to help. Use this form to make sure the CSV doesn’t go to my spam folder: http://webpresencepartners.com/help/
Daniel
by Daniel
on April 22, 2013 at 2:39 pm
Hi Jon,
Thanks!
The field mappings at the top of the page are drop-down menus…you should be able to choose whatever you’d like for the mapping.
Make sure that your image paths are correct. I would be incredibly surprised if your file paths actually started with “/images/”. To figure out what your file path should be, click the *Advanced Settings* button on the first (Upload) screen of the plugin. It will show you the path to your uploads folder, which should point you in the right direction.
Daniel
by Daniel
on April 22, 2013 at 2:43 pm
Andrew,
You can hard-code that in the file woo-product-importer-ajax.php, around line 371. Find the line “case ‘product_image_by_path’:”. A few lines down from that you’ll see a line that looks like this: “‘path’ => $image_path,”. That is what you’ll want to change. Make it something like “‘path’ => ‘/my/root/path/’ . $image_path,”
by Daniel
on April 22, 2013 at 2:45 pm
Hi Gery,
That’s not something the plugin can do right now. We will add it soon, though.
Daniel
by Daniel
on April 22, 2013 at 2:47 pm
Hi Maxim,
That doesn’t sound like something that is core WordPress functionality. If you’re running a site with four languages at once, that means you’re probably using a plugin or really fancy theme to do that. You’d need to hire someone to integrate our plugin with that plugin.
Daniel
by Daniel
on April 22, 2013 at 2:48 pm
Great idea, Matthew. I will add that to the list of improvements!
by Daniel
on April 22, 2013 at 2:55 pm
Thanks, Matthew!
You shouldn’t have seen that warning (I will work on getting that suppressed) but at least you did see the appropriate message about not getting locales. That is not a bug, it’s just due to your server configuration. :/
by Willeke
on April 25, 2013 at 3:29 pm
Hi Daniel,
Great plugin! My affiliate products are, thanks to you, in no time in my shop.
BUT: because affiliate programmes update every few days/week I have to update my feeds on a very regularly base. Can you help me with your plugin to do something extra?
I’d like to import the new feed. The plugin has to (1) update existing products if new info is available, (2) import new products who aren’t there allready and (3!!!) delete product who aren’t available anymore on the new feed.
Do you think something like that is available/to be made?!?!? I’ve found nothing like it, and I don’t think I’m the only one who needs it….
Kind regards from the Netherlands,
Willeke
by Andrew
on April 26, 2013 at 6:23 am
Thank you for that hard code solution – we also so automatic updating off a sister site and want to use a hard coded external URL to be places before the file name – this will save use from having to manually change the csv.
—–
also is there a way to have this run by itself every week grabbing the csv from a server as well with out haveing to grab it every time
Thank you
by Daniel
on April 28, 2013 at 6:37 pm
Hi Andrew,
Currently there is not a way for the importer to run by itself on a scheduled basis. We are planning to add that in the future, but don’t have a timeline for it.
by Daniel
on April 28, 2013 at 8:23 pm
Hi Willeke,
Yes, that is certainly possible. The importer will already do #1 and #2 based on product SKU code. As long you’re including a SKU when using the importer, it will update existing product.
Regarding #3, it would be possible to remove any existing product that is not included in the CSV file. Currently that is not something the plugin can do, but we would certainly be available to do some customization of the plugin if you’re looking to hire.
If you’re willing to wait on it, I believe we are going to put together a premium add-on package specifically designed for drop-shippers and affiliate marketers that would also including scheduled imports, etc.
by Andrew
on April 28, 2013 at 11:51 pm
Thank you,
Also re the first part of my question : are we able use a hard coded external URL to be places before the file name – this will save use from having to manually change the csv.
thank you
by Daniel
on April 29, 2013 at 3:04 pm
Andrew,
That is going to require slightly more work on your part.
Just above the last place you hard-coded a file path, you will see a case statement for ‘product_image_by_url’. You will need to make that block of code look like the one you’ve already edited (‘product_image_by_path’). You will need to loop through the image urls, prepend your desired URL to each, then append each url to the $new_post_image_urls array.
Daniel
by pabb11
on April 29, 2013 at 7:37 pm
I get image import error message:
A valid file extension wasn’t found in **
Extension found was . Allowed extensions are: jpg,jpeg,gif,png.
What could it be?
Thank you!
by Daniel
on April 30, 2013 at 3:28 am
Hi Pabb,
Most likely, the image URL you’re using doesn’t include a valid file extension. What is the URL of the image you’re trying to import?
Daniel
by Bárbara JL
on April 30, 2013 at 3:22 pm
Hi Daniel, thanks for the plugin, is excellent.
I have a csv file of products with special characters (á, é, ñ, …) and I have problems to import the products. If I import the file as is, the accents and ñ are seen as a question mark (?), but the fields match well.
If I replace accents and ñ for their characters html (á Ñ) acts as if all the fields belong to the first value, so it is not possible to import.
I tried to save the file with UTF-8, but I still have problems.
I have also tried to put the value es_ES when importing in “Set Locale” (Spanish (Spain) is the language file). Though leaves the warning: Couldn’t get a list of available locales from your server.
I hope you can help me, thank you very much. Greetings.
by C.S. Deng
on April 30, 2013 at 5:16 pm
Hi Daniel,
Thanks again for the great plugin. So some big merchants are using scene7.com file server to host their images. Do you know a way how to handle these images, as it will give an error that it didn’t find the image file.
Some background info on this:
http://webmasters.stackexchange.com/questions/14528/whats-the-original-image-address-from-a-adobe-scene-7-site
by Tomas
on May 2, 2013 at 12:06 pm
Hello!
Really great plugin!
Is there any plans to support WPML?
by Justin
on May 3, 2013 at 2:07 am
Hi Daniel,
I’m extremely excited to try out your product (especially because of the price tag). However, 50 / 62 products that we sell are variable products with about 8 variations each. I was wondering if you had a timeline on when you expect to add in the feature for handling variations. Also I wondered if you were considering adding an export feature as well? It would be very effective to have a function that exports a CSV of existing products and updates could be made to that file and then fed right back into the plugin. I appreciate your time and efforts.
Best,
Justin
by Mary
on May 3, 2013 at 3:10 am
Thank you for such a great plug-in! I am having trouble adding in attributes and SEO by Yoast. I have 3 attributes – Books, CDs, Downloads. When I added the custom field of get-attribute, that is what pulls into the attributes section. How do I get to distinguish between Books, CDs, Downloads? I already have those 3 attributes created.
Also, I added a custom field for keywords of _yoast_wpseo_focuskw. This shows up in keywords as well. Anyway to get it in the actual SEO section?
by Junior Brandt
on May 5, 2013 at 10:52 am
Hi There,
Could you just in a nutshell tell me whether I can import product and variations with variation pricing using you plugin. I really like what you’ve done here! Looking forward to your response.
by Daniel
on May 6, 2013 at 3:53 pm
Hi Junior, no, you cannot import variable products with this plugin currently.
by Daniel
on May 6, 2013 at 3:55 pm
Hi Justin,
I don’t have a timeline for variable product support. I know there is a lot of demand for it, but we just haven’t had the free time to tackle it.
Daniel
by Daniel
on May 6, 2013 at 3:58 pm
Hi Tomas,
As of right now, we are only planning on supporting features that are included in WordPress core or WooCommerce itself. The importer is pretty flexible; most plugins are simply adding postmeta to products, which can be imported with the importer. You would need to check with the developers of the other plugins to find out what postmeta they are adding.
Daniel
by Daniel
on May 6, 2013 at 4:03 pm
Hello C.S.,
We will definitely work on a fix for this. Thanks for bringing it to our attention.
Daniel
by Daniel
on May 6, 2013 at 4:08 pm
Barbara,
Sounds like your CSV file is separated with semicolons rather than commas, is that correct? I would suggest opening the file in Excel and re-saving as comma separated. That would allow you to replace your special characters with their HTML entity codes.
There are separate locale values for UTF-8. Try importing with a locale code of “es_ES.utf8″. Also, check with your hosting company to make sure that locale is actually installed on your server.
Daniel
by Nic
on May 8, 2013 at 6:51 am
Hi Daniel,
Thanks for the great plugin,i have been reading through all of the comments and just have a questions that i think was answered before but i would just want to make sure.
When importing a spreadsheet with lots of products and the upload is successful, would you need to use all of the info again when updating or do you only use all of the headers and only add data for the values you want to update.
Lets say i have:
product name, sku, price, description, item_image and stock_lvl.
Would i need to use all of the data every time or can i just use something like:
SKU and Stock_lvl
Will only those values will be updated and the rest left like it is?
Kind Regards,
Nic
by Nic
on May 8, 2013 at 8:58 am
Hi Daniel,
Please ignore my previous comment, i quickly setup a demo store and tested with a couple of products and found that it only updated the added values and luckily it does not remove the other data.
Thanks again for the great plugin.
Kind Regards,
Nic
by Andy
on May 9, 2013 at 10:31 am
Hi Daniel,
The importer seems to be importing in batches of 5 (ajax view), any way to increase this to go for 10 every few seconds?
Andy
by Daniel
on May 12, 2013 at 8:20 pm
Hey Andy,
The importer does do 5 products at a time, but it is not on a timer. As soon as each run of 5 is finished importing, it reports back to the results page and another run of 5 starts. The reason for this is that, by default, PHP scripts time out in 30 seconds. If you are downloading several images per product, we don’t want the script to time out and kill the whole job.
So, that said, the number of products per pass can be changed relatively easily, but it would not make the process that much faster for you…you’d just be sending a few less AJAX calls. You also run the risk of the main script timing out.
To change the number of products per pass, you need to change the file woo-product-importer-preview.php. Find and change this hidden input (around line 322):
<input type=”hidden” name=”limit” value=”5″>
by C.S. Deng
on May 15, 2013 at 8:01 am
Hi Daniel,
Would it be possible to update the product creation date, everytime I upload a new productfeed? That way, I can easily detect which products have been updated AND still exist in the (affiliate) productfeeds.
Thanks!
by Daniel
on May 15, 2013 at 3:46 pm
Hi C.S.,
I will definitely add that to the list for future inclusion. Right now, it is not an option.
by Rob123
on May 15, 2013 at 3:57 pm
Hi there,
Your plugin is great, we use it to import affiliate products but is there a way to NOT import the image to our server but just use the remote URL of the image on the affiliate retailers website, I have tried both image import options and no joy, hope you can help.
We did make a small donation last month
Thanks
Rob
by Daniel
on May 15, 2013 at 4:02 pm
Hi Rob,
First, thanks for your donation! Any size is helpful.
I wish I had a better answer for you but unfortunately, I don’t see a good way to do that. WooCommerce uses WordPress’ built-in media management tools to keep track of and manipulate product images. WordPress expects the image file to be on the server.
What’s the reason you’re looking to use the images remotely? Bandwidth? Disk space?
by Rob
on May 15, 2013 at 7:45 pm
No probs, will donate more when I have it, think the plugins awesome!
Reason is if I import say 3000 products with images it can cause the image folder to be say 500mb, which is fine but it stops my automated backup tools from working, so i thought if i could leave the images where they were it would be great!
any ideas?
also, are there any plans to improve the plugin, maybe a PRO version with these features, would be happy to beta-test as have quite a bit of experience in this field.
- Add a zip URL that the plugin imports as EXTERNAL PRODUCTS (affiliate networks provide zip csv feed urls for this)
- Checks the zip URL at selected intervals (say daily/weekly/monthly) and updates new products/prices automatically
Would love your thoughts on this
by Daniel
on May 15, 2013 at 8:25 pm
Hey Rob,
Thanks again. I really appreciate the support.
As a matter of fact, I do have a Pro version in the works right now, and the major feature I’m working on is scheduled imports! I am planning on adding zip and tar/tar.gz support to it. I would love to have you as a beta tester; I will hit you up when I have a beta-ready version. Shouldn’t be too long.
Does your backup plugin allow you to exclude certain folders? If so, you might try excluding /wp-content/uploads. If that’s not an option, I will definitely be exploring ways to set up the plugin to store images in an alternate location. That’s going to take some digging, I think.
Thanks again for the feedback!
Daniel
by Rob
on May 15, 2013 at 8:49 pm
Hi Daniel,
I can exclude folders yes, may go down that route if thats the only option.
Looking forward to getting the beta to test, if it can have scheduling and allow to add a URL to a zip file on an external site to check this and allow to use EXTERNAL without having to edit the CSV to add an EXTERNAL column this would rock!
Can we chat via email? have some more ideas for you, whats your email!
by Limegreen
on May 16, 2013 at 9:39 am
Hi Daniel,
Firstly, we all really appreciate such an awesome plugin – thank you!
I’ve started using it, and did a test product to import and everything seemed to work perfectly except the categories. It produced the parent category but none of the sub categories.
The column header is ‘Categories’ and the field import is as follows:
Office Machines/Office Machine Supplies/Laminating Pockets/A5
When I go into the categories menu, it only shows Office Machines (the parent category), but oddly enough if I search in the search bar for ‘Laminating’ it brings up the test product and then the breadcrumbs show the correct category path?
Is it something I’m doing?
Here’s a screenshot(s) of my issue: http://limegreen.clarify-it.com/d/33hqr6
Thanks in advance,
LG
by Limegreen
on May 16, 2013 at 9:40 am
Sorry Daniel, I typed my email address wrong in the first reply.
This is the correct address.
LG
by Sam Grant
on May 17, 2013 at 4:46 am
Just wondering if there is anything I can do to prevent the script from timing out, usually get the first 5 imports and that’s about it
Cheers and thanks
by Daniel
on May 20, 2013 at 3:19 pm
Hi LG,
The plugin only adds the product to the last category in the hierarchy you provide. This is by design. If you want to include it in the other categories, you must use a value like this:
Office Machines/Office Machine Supplies/Laminating Pockets/A5|Office Machines/Office Machine Supplies/Laminating Pockets|Office Machines/Office Machine Supplies|Office Machines
This allows a little more flexibility (you can choose where your product ends up in the hierarchy.) So, the behavior you’re seeing on the front end with the breadcrumbs is correct.
Looking at your Product Categories screenshot, it looks like you have something else odd going on there. If you look at the top right of your screenshot, you will see that WordPress is telling you there are **5 items**, even though only two are showing up. I suspect there is another plugin causing an issue, or maybe a setting somewhere. It looks to me like only your top level categories are being displayed on that list. Look for an option to that effect.
Daniel
by Daniel
on May 20, 2013 at 3:20 pm
Hey Rob,
You can e-mail me at daniel@webpresencepartners.com!
Daniel
by Mehrwash
on May 21, 2013 at 5:45 am
Hello
Can you please tell me what Capability do I need to give my shop Manager Role so they can use the Woo Product Importer. I am using the Capability Manager Plugin to assign capabilities to Roles.
Waiting for your reply
Thanks for such a useful plugin!
by Stefano
on May 21, 2013 at 9:39 am
I am also interested in the capabilities set for this plugin
Thanks for such a useful plugin!
by jimmie
on May 22, 2013 at 2:56 pm
Just wanted to say thanks for the awesome, not to mention FREE plugin! I’ve got 5,996 products importing right now…and I’m off to bed, coz I don’t need to enter them manually
Looking forward to the scheduling function in the Pro version. Definitely keen to grab it!
Thanks again
Jim
by Daniel
on May 22, 2013 at 7:08 pm
Jim,
Thanks so much! Glad I saved you some sleep!
The Pro version is coming very, very soon. I will keep you posted.
Daniel
Trackbacks