VirtueMart
Shipment method
VirtueMart | CSVI Import | CSVI Export |
---|---|---|
Shipment Name | shipment_name | shipment_name |
Published | published | published |
Shipment Description | shipment_desc | shipment_desc |
Shipment Method | shipment_element | shipment_element |
Shopper Group | virtuemart_shoppergroup_id | virtuemart_shoppergroup_id |
List Order | ordering | ordering |
Import Generic child variant for VirtueMart
Generic child variant for VirtueMart would help you to show products with different size settings keeping one product as a base which would be the parent product. All you need to do is create generic child variant custom field type in VirtueMart and link it among your products. Generic variant is a individual product by itself so it has its own description, images and details as how a normal product would do.
VirtueMart Prices import
A template can be created by following these steps:
- Go to Components -> RO CSVI -> Templates
- Click New
- Give the template a name, say for example VirtueMart Price import
- Set Action to Import
- Set Component to VirtueMart
- Set Operation to Price
- Click Next: Select Source
- Source is set default to Load from your computer. No need for change.
- Click Next: Select options
- The default values are OK, change if needed.
- Click Next: Select fields
- Nothing needed here as we set to Use column headers as configuration in step 10.
- Click Next: Finalize
- All done here
- Click Close to return to the list of templates or Edit if you want to fine-tune the template further.
- Go to Components -> RO CSVI -> Templates
- Click on Template fields
- In the Search Tools select your template
- Click on New to add a single field or click on Quick Add to add multiple fields.
Quick Add
The Quick Add Option allows you to quickly add multiple fields to a template. It is not possible to set any settings per field here but that can be done after the fields have been added to the template.
- product_sku
- shopper_group_name
- product_currency
- price_quantity_start
- price_quantity_end
- product_price
The import can be run by following these steps:
- Go to Components -> RO CSVI -> Import
- Select the template created earlier with name VirtueMart price import
- Click Select file
- Select the file to import
- Click Preview
- You now see a preview of the file as to how CSVI sees the file
- Click Start import
- The import is run
- The Log details page will be shown with information regarding the import if the Enable logging is enabled in the template
Example fields to update shopper group
"product_sku";"shopper_group_name";"shopper_group_name_new";"product_currency";"price_quantity_start";"price_quantity_end";"product_price"
"H01";"-default-";"Gold Level";"EUR";"1";"10";"20"
"H01";"-default-";"Gold Level";"EUR";"11";"21";"18" "H01";"Gold Level";"*";"EUR";"0";"0";"18"
Example fields to update price
"product_sku";"shopper_group_name";"product_currency";"price_quantity_start";"price_quantity_end";"product_price";"product_price_new"
"H01";"-default-";"EUR";"1";"10";"20";"22.50"
"H01";"-default-";"EUR";"11";"21";"18";"19,50"
"H01";"Gold Level";"EUR";"0";"0";"18";"19"
To delete a price of a product add field price_delete and set the value to Y. CSVI will then delete the price during import.
Delete a price
"product_sku";"shopper_group_name";"product_currency";"price_quantity_start";"price_quantity_end";"product_price";"price_delete"
"H01";"-default-";"EUR";"1";"10";"20";"Y"
"H01";"Gold Level";"EUR";"0";"0";"18";"Y"
VirtueMart Prices export
A template can be created by following these steps:
- Go to Components -> RO CSVI -> Templates
- Click New
- Give the template a name
- Set Action to Export
- Set Component to VirtueMart
- Set Operation to Price
- Click Next: Select Source
- Destination is set default to Download. No need for change.
- Click Next: Select options
- The default values are OK, change if needed.
- Click Next: Select fields
- Fields must be added otherwise there is nothing for CSVI to export. Click Edit template fields.
- A new window opens with the Template fields page. You can add new fields by clicking New or Quick Add.
- When all fields are added you can close the window
- Click Next: Finalize
- All done here
- Click Close to return to the list of templates or Edit if you want to fine-tune the template further.
- Go to Components -> RO CSVI -> Templates
- Click on Template fields
- In the Search Tools select your template
- Click on New to add a single field or click on Quick Add to add multiple fields.
Quick Add
The Quick Add Option allows you to quickly add multiple fields to a template. It is not possible to set any settings per field here but that can be done after the fields have been added to the template.
- Go to Components -> RO CSVI -> Export
- Select the template created earlier
- Click Export
- The export is run
- The Log details page will be shown with information regarding the export if the Enable logging is enabled in the template
Product import with custom fields
Requirements
- CSVI 6.0+
- Joomla 3.0+
- VirtueMart 3.0+
Background information
To import custom fields for product normal product import procedure is followed. This article explains how to import custom field value for a product.
The fields necessary for importing products with custom fields are:
- product_sku
- custom_title
- custom_value
- custom_price
- custom_param
Optional fields
- custom_disabler
- custom_override
Basic import with custom fields
It is important to note that the fields starting with custom_ are required when you use plugin custom fields and are optional for normal custom fields. Normal custom fields will be available as available fields so these fields can be directly used as template field in import. To be more clear say if Photo and Size are string type custom fields then import can also be done by using the fields in import like
"product_sku";"product_name";"Photo";"Size"
"P01";"Product 1";"product1.jpg";"36"
"P02";"Product 2";"product2.jpg";"38"
"P03";"Product 3";"product3.jpg";"40"
"P04";"Product 4";"product4.jpg";"42"
There are 2 scenarios in which you can import custom fields:
- custom fields with a single value
- custom fields with mulitple values
Custom fields with a single value
An example CSV file looks like this:
"product_sku";"custom_title";"custom_value";"custom_price";"custom_param";"custom_disabler";"custom_override"
"P01";"Photo";"7";"";"";"Y";"Y"
"P01";"Size";"36";"";"";"Y";"N"
Let's have a closer look at the fields.
product_sku
This is the unique code for a product.
custom_title
The name of the custom field. The correct name can be found on the Custom Fields page in VirtueMart in the column named Title.
custom_value
This is the value belonging to the custom field. As seen in the example for the Size we have created sizes 36, 38 and 40.
custom_price
Optionally a price if the plugin uses and/or requires it
custom_param
Optionally a parameter if the plugin uses and/or requires it
custom_disabler
Optionally a parameter if parent customfield is not used for child product. The value should be Y to enable it or N to disable the disabler.
custom_override
Optionally a parameter if parent customfield value to be overridden for child product. The value should be Y to enable it or N to disable the override.
Once the csv file is ready, select the file and start the normal import process.
Check the preview of the file
Start the process. Once complete, CSVI will notify with the log if enabled on the status of import process
Custom fields with multiple values
An example CSV file looks like this:
product_sku;custom_title;custom_value;custom_price;custom_param;custom_disabler;custom_override
H01;Size~Size~Size;34~36~38;24~26~28;Y~N~Y;Y~N~Y
All values are separated by the tilde character.
All custom fields have multiple values with the exception of the parameter field. So if we put the values in a table it would look like this.
Please note the table is just for understanding purpose but the format of csv file has to be strictly followed as explained above for the import to work flawless.
product_sku | custom_title | custom_value | custom_price | custom_param | custom_disabler | custom_override |
H01 | Size | 34 | 24 | Y | Y | |
H01 | Size | 36 | 26 | N | N | |
H01 | Size | 38 | 28 | Y | Y |
This is how CSVI will add the values to the product H01. As you can see the custom_param column is empty. This means that CSVI will leave that one empty.
Let's have a closer look at the fields.
product_sku
This is the unique code for a product.
custom_title
The name of the custom field. The correct name can be found on the Custom Fields page in VirtueMart in the column named Title.
Since we are adding multiple values, each value is separated by a tilde symbol. This allows for specifying more than 1 custom field to add to the product.
custom_value
This is the value belonging to the custom field. As seen in the example for the Size we have created sizes 34, 36 and 38.
custom_price
Optionally a price if the plugin uses and/or requires it
custom_param
Optionally a parameter if the plugin uses and/or requires it
custom_disabler
Optionally a parameter if parent customfield is not used for child product. This can be either 1/Y/y or 0/N/n.
custom_override
Optionally a parameter if parent customfield value to be overridden for child product. This can be either 1/Y/y or 0/N/n.
Once the import process is done without errors, imported custom fields for a particular product can be seen in the Virtuemart product page and in Custom fields tab.
Delete custom values
The field custom_delete makes it possible to delete custom values assigned to products. The field takes the following values:
- Y: delete the custom value
- N: do not delete the custom value
- Empty: do not delete the custom value
This field works the same as the other custom fields, multiple values are separated by a tilde symbol. The CSV would look like this:
product_sku;custom_title;custom_value;custom_price;custom_delete
H01;Size~Size~Size;34~36~38;24~26~28;N~Y~N
This will delete size 36.
Ordering custom fields
The field custom_ordering makes it possible to order custom fields assigned to products. To set the ordering of custom fields the following fields are required:
- product_sku
- custom_title
- custom_value
- custom_ordering
You can add more fields to your import file of course, these are the minimum.
This field works the same as the other custom fields, multiple values are separated by a tilde symbol. The CSV would look like this:
"product_sku";"custom_title";"custom_value";"custom_ordering"
"P01";"Size~Color~Width";"34~Green~38";"2~1~3"
This will show the custom fields in this order:
- Color: Green
- Size: 34
- Width: 38
When using custom fields as an available field, they will be added in the order they are set in the CSV file. If they are part of a group, the group will be added automatically if needed.
Multiple custom values
The field custom_multiple makes it possible to import the same custom field multiple times with different values for one product. The field takes the following values:
- Y: add as multiple value
- N: do not add as multiple value
Existing values will be removed - Empty: add as multiple value
This field works the same as the other custom fields, multiple values are separated by a tilde symbol. The CSV would look like this:
"product_sku";"custom_title";"custom_value";"custom_multiple"
"P01";"Photo~Size~Size~Size";"7~34~36~38";"N~Y~Y~Y"
Or in multiple lines:
"product_sku";"custom_title";"custom_value";"custom_multiple"
"P01";"Photo";"7";"N"
"P01";"Size";"34";"Y"
"P01";"Size";"36";"Y"
"P01";"Size";"38";"Y"
This will give the custom field Photo only 1 entry and the custom field Size 3 entries in the product.
Updating existing custom fields values
To update value of existing custom field you need custom_title, custom_value, custom_delete field along with individual template field with new value. Say if Size is a string custom field and has a value L set for a product. If you want to update value from L to XL then CSV would look like
"product_sku","custom_title","custom_value","custom_delete","Size"
"P01","Size","L","Y","XL"