** Version 2.1 is released to fix the compatibiliy issue with Umbraco 7.2.2 and onwards **
What is Conveyor?
Conveyor allows editors and developers to transfer content (media and content) of a website from one environment to another.
Version 2 is compatible with Umbraco 7 and Version 1.0 is compatible with Umbraco 6 which can be found in archive tab.
You can watch the uHangout http://uhangout.co.uk/video/-K1Y5D2ezMc and see how you can transfer content from Umbraco 6 to Umbraco 7 with Conveyor.
or
Watch Conveyor in 3 minutes here: https://youtu.be/d9uSGLCKsH0
What are the use case scenario?
How does it work?
The package creates a zip file based on the chosen content which then can be imported to another environment.
Conveyor looks at a page and export all the associated pages / media with it.
Imagine you would like to export a news article that has several categories selected by MNTP, an image inside RTE and a header image which is stored in media section under images/news images folder.
When the above page is selected to be exported Conveyor automatically exports the header image, the image that is used inside RTE and all the categories that are associated with this page. It means when the news article page is imported to new environment the page is built with all the associated data. Magic isn't it!
What are the assumptions?
How does it work behind the scene?
Basically Data types can be classified into two categories:
"Other Data Types" will work out of the box and no conversion is needed for these types.
However "Special Data Types" as its names implies are special and they are storing an Id of another page or media file. When the value of these data types are transferred to new environment (website/server) they need to be updated with the new Id therefore a conversion is needed for these types.
This package does the conversion for the following built-in special data types:
The conversion for above data types can be swapped with custom data type convertor in ContentConveyor.config file. You can create your own class which inherits from BaseContentManagement and implements IDataTypeConverter which has two methods, export and import.
In the Export method you need to convert the page/media Id into Guid and in the Import method the Guid should be converted back to Id.
If you have a custom data type which stores a reference to a page or a media file and you needed a conversion and it can be added to ContentConveyor.config file. You can also check out the source code for all the above data types to see how they are implemented.
Is Conveyor open-source?
Yes, it is. The source code can be found on my GitHub account. www.github.com/AliSheikhTaheri/Conveyor