Download the PHP package teamneusta/pimcore-import-export-bundle without Composer

On this page you can find all versions of the php package teamneusta/pimcore-import-export-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package pimcore-import-export-bundle

Pimcore Import Export Bundle

CI - QA CI - Tests Software License

Installation

  1. Require the bundle

  2. Enable the bundle

    Add the Import Export Bundle to your config/bundles.php:

  3. Assets Install

    Assets will be installed as symlinks in folder public.

Usage

Pimcore Admin Backend

Export

After enabling the bundle you should see a new menu item in the context menu of Pimcore Admin Backend:

Documents Assets Data Objects

Currently only YAML Export is supported by menu

After clicking one of the menu items you will be asked for a file name and the export will start:

(german translation)

Special case: Assets Export

Because Assets are mostly assigned to physical files (images, videos, documents, etc.) the export will create a ZIP file containing the binary data and a YAML file with the metadata. The same structured zip file can be used for the import of Assets as well.

Import

For the import you can have a look into the Tools Menu:

Symfony Commands

This bundle provides several commands to export and import data into Pimcore.

Fur usage, run the commands with the --help option to see all available options and arguments.

Common Options

All import commands follow a similar structure and support the following common options:

Notice: WYSIWYG - Editable

For using a correct exporting and importing of WYSIWYG editables in older Pimcore versions (e.g. using symfony/framework < 6.2.2) you probably need to configure your Symfony HTML sanitizer as documented here: https://docs.pimcore.com/platform/2024.4/Pimcore/Documents/Editables/WYSIWYG#extending-symfony-html-sanitizer-configuration

In our integration test we have used the following configuration:

because of already known bugs with <a> - HTML tag.

Concepts

Page Export

The selected page will be exported into YAML format:

In the same way you can re-import your yaml file again by selecting: Import from YAML in the context menu.

Page Import

The import process will create pages with the given data.

The following rule applies:

If the parseYaml method of the PageImporter is not called with forcedSave, the data from the provided YAML will be adopted, regardless of whether it makes sense or not, and without checking whether the page could be saved that way.

If multiple pages are imported and a path specification changes by the applied rules, this path specification will be replaced with the new, correct path specification in all provided page configurations.

Parameterize your yaml files

You can parameterize your yaml files with placeholders. The placeholders will be replaced by the values you provide in your fixtures.

In the case above an image has been assigned to an Editable/Image editable. The image id is a placeholder %IMAGE_ID%.

You can use now a Neusta\Pimcore\ImportExportBundle\Documents\Import\Filter\SearchAndReplaceFilter instance to replace the placeholder with the actual image id (e.g. 1234).

If you want to change your yaml in a more complex way you can use the Neusta\Pimcore\ImportExportBundle\Documents\Import\Filter\YamlFilter interface to implement your own filter.

With that technique you can export test pages for Fixtures, change values into placeholders (e.g. for assets and data objects) and replace them with the actual values in your tests.

Contribution

Feel free to open issues for any bug, feature request, or other ideas.

Please remember to create an issue before creating large pull requests.

Local Development

To develop on your local machine, instance identification for Pimcore 12 is needed.

Copy the compose.override.yaml.dist file to compose.override.yaml:

And replace all replace_with_secret values with your data.

Then install the dependencies:

We use composer scripts for our main quality tools. They can be executed via the bin/composer file as well.

For the tests there is a different script that includes a database setup.


All versions of pimcore-import-export-bundle with dependencies

PHP Build Version
Package Version
Requires php Version ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0
ext-zip Version *
pimcore/pimcore Version ^11.5 || ^12.0
symfony/config Version ^6.4
symfony/console Version ^6.4
symfony/dependency-injection Version ^6.4
symfony/filesystem Version ^6.4
symfony/finder Version ^6.4
symfony/http-foundation Version ^6.4
symfony/property-access Version ^6.4
symfony/routing Version ^6.4
symfony/serializer Version ^6.4
symfony/yaml Version ^6.4
teamneusta/converter-bundle Version ^1.8
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package teamneusta/pimcore-import-export-bundle contains the following files

Loading the files please wait ...