X-Cart:How to export and import products with images
To export products with images
- Go to Tools > Import/Export > Export data section.
- Do you wish to export images?: Select Yes.
- Data types: Select PRODUCTS.
- Click Export.
The required CSV file is generated in X-Cart, and a temporary directory containing product images is saved to the <xcart_dir>/var/tmp/ directory. You can download the generated CSV file and the temporary directory with the product images using FTP or SSH.
The exact name of the generated CSV file, as well as the temp directory containing images, can be looked up in the Export packs section, for example:
10-20-2012 11:04 export_20121020_110455.csv - PRODUCTS Temporary directory for images: /u/user/public_html/xcart/var/tmp/export_20121020_110455
Product images of different types are exported into different sub-directories in the temp export directory, for example:
/u/user/public_html/xcart/var/tmp/export_20121020_110455/T/product_thumbnail.jpg /u/user/public_html/xcart/var/tmp/export_20121020_110455/P/product_main_image.jpg /u/user/public_html/xcart/var/tmp/export_20121020_110455/D/product_detailed_image.jpg /u/user/public_html/xcart/var/tmp/export_20121020_110455/W/product_variant_image.jpg
In the above example, there are pre-defined sub-directories which correspond to:
- T - Product Thumbnail Images
- P - Product Main Images
- D - Product Detailed Images
- W - Product Variant Images
Accordingly, the product images info in the generated CSV file consist of two parts: sub-directory prefix (T/, P/, etc.) and image filename, for example:
[PRODUCTS] !THUMBNAIL;!IMAGE; T/product_thumbnail.jpg;P/product_main_image.jpg [DETAILED_IMAGES] !IMAGE; D/product_detailed_image.jpg [PRODUCT_VARIANTS] !IMAGE; W/product_variant_image.jpg
To import products with images
To import products with images, you need to ensure that the CSV file contains the columns !THUMBNAIL and !IMAGE under the [PRODUCTS] section.
If you want to import product detailed images and product variant images as well, you need to ensure that the CSV file contains the column !IMAGE under the [DETAILED_IMAGES] and [PRODUCT_VARIANTS] sections respectively.
- Place the product images to be imported to a temporary directory inside X-Cart.
- On the Import/Export -> Import data page click Import options.
- Directory where images are located: enter the absolute (!) path to the directory, where you have placed the images.
- Select the required CSV file.
- Select the required delimiter.
- Click Import.
- 1. The simplest way to get a valid sample CSV file is to export a sample product with images (see the previous section for instructions on how to do that), and use the generated CSV file as a template.
- The product images info in the generated CSV file includes sub-directory prefixes like "T/", "P/", etc. Accordingly, the exported product images are located in the corresponding sub-directories in the temp directory (see examples in the previous section).
- 2. Use the temp directory created by exporting a sample product with images (like <xcart_dir>/var/tmp/export_***) or create another temp directory (like <xcart_dir>/var/tmp/my_temp_dir), and place your new product images there.
- Images of different types (product thumbnails, product main images, etc.) should be placed in the corresponding sub-directories (T, P, etc.) in the temp directory (see examples in the previous section).
- If you are transferring product with images from one X-Cart to another, you can just download the whole temp directory with the images exported from one store (like <xcart_dir>/var/tmp/export_***), and upload it to the directory <xcart_dir>/var/tmp of another store.
- 3. The absolute path to the temp directory with your new product images consists of two parts: <xcart_dir>/ and var/tmp/export_*** (or var/tmp/my_temp_dir). The first part is the absolute path to the X-Cart directory. The absolute path to the X-Cart directory can be looked up on the Summary page in the Environment info section.
- 4. If you want to import the same CSV file with the images you have exported earlier back to your X-Cart store, you should specify the same temp export directory in the "Directory where images are located" field, for example:
Directory where images are located: /u/user/public_html/xcart/var/tmp/export_20121020_110455
- 5. The import script will take the images from the temp directory specified in the field "Directory where images are located" and will import these images to the corresponding sub-directories in the predefined <xcart_dir>/images directory:
/u/user/public_html/xcart/images/T/product_thumbnail.jpg /u/user/public_html/xcart/images/P/product_main_image.jpg /u/user/public_html/xcart/images/D/product_detailed_image.jpg /u/user/public_html/xcart/images/W/product_variant_image.jpg
- Note that the above is true if the corresponding options under 'Images Location' are set to store images in the file system, otherwise the images data is imported from the temp export directory into the X-Cart database.
- 6. Also, it is possible to auto-generate product thumbnail images from the main product images being imported (in other words, generate thumbnails from the images specified in the !IMAGE column). This can be done by adding !GENERATE_THUMBNAIL column to your CSV file and specifying Y as the value of the column. The !THUMBNAIL column should be omitted in this case.
- Automated Generation of Thumbnails from Product Images by Import
- CSV Format for Various Data Types. Products
When importing data with images, old detail images in the "<xcart_dir>/images" directory are neither overwritten nor removed. How do I solve the problem?
If, while importing data with images, X-Cart finds in the target directory, e.g., images, an image with the same name as the image being imported, for instance, "detailed_image_sku17.jpg", it does not overwrite or delete the existing image; instead, it appends a suffix like _01, _02, etc. to the image being imported. Thus, in our example, in the images directory we get a new image named "detailed_image_sku17_01.jpg".
To prevent cluttering up the images directory with diplicate images when importing data with images multiple times, follow these steps:
- Before importing data with new images, rename the images directory; e.g., to images_bkp.
- Import the data with new images.
This creates a new directory named images, where X-Cart will import the new images.
- (Optional) Re-slice magnified images (if importing images for magnifier).
- Copy the content of the images directory to the images_bkp directory (overwriting the old files).
As a result, the old images in the target directory (images_bkp) will be overwritten by the new images from the source directory (images).
- Remoave the images directory.
- Rename the images_bkp directory to images.