PHPackages                             max-commerce/catalog-export-import - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. max-commerce/catalog-export-import

ActiveYii2-extension

max-commerce/catalog-export-import
==================================

Maxcommerce catalog export-import module

01201PHP

Since Jun 19Pushed 6y ago2 watchersCompare

[ Source](https://github.com/max-commerce/catalog-export-import)[ Packagist](https://packagist.org/packages/max-commerce/catalog-export-import)[ RSS](/packages/max-commerce-catalog-export-import/feed)WikiDiscussions master Synced 3d ago

READMEChangelogDependenciesVersions (1)Used By (0)

Catalog porter
==============

[](#catalog-porter)

###### Yii2 ready wrapper for simple CSV exporting and importing

[](#yii2-ready-wrapper-for-simple-csv-exporting-and-importing)

installation
============

[](#installation)

`The preferred way to install this extension is through composer.`

#### Install

[](#install)

Either run

```
$ php composer.phar require max-commerce/catalog-export-import "*"
```

or add

```
"max-commerce/catalog-export-import": "*"
```

to the require section of your composer.json file.

#### Configurate

[](#configurate)

```
//in your app config:
'components' => [
    ...
    'importExport' => [
                'class' => \maxcom\catalog\exportimport\components\ImportExport::class, //Component
                'exportQuery' =>  \common\models\ShopProducts::find() // This is query that u want to export
                    ->select([
                        'shop_products.sku as SKU',
                        'shop_products.name as NAME',
                        'shop_products.description as DESCRIPTION',
                        'shop_products.sale as SALE',
                        'shop_products.new as NEW',
                        'shop_products.is_available as AVAILABLE',
                        'shop_products.active as ACTIVE',
                        'shop_products.discount as DISCOUNT',
                        'shop_products.default_price AS DEFAULT_PRICE',
                        'shop_products.price AS PRICE',
                        'shop_brands.name as BRAND',
                    ])
                    ->leftJoin(\common\models\ShopCategory::tableName(), 'shop_category.id = shop_products.category_id')
                    ->leftJoin(\common\models\ShopBrands::tableName(), 'shop_brands.id = shop_products.brand_id'),
                'attributesToNames' => [ //This is labels for head in export table by attributes from upper query
                    'SKU' => 'Артикул',
                    'NAME' => 'Название',
                    'DESCRIPTION' => 'Описание',
                    'SALE' => 'Со скидкой',
                    'NEW' => 'Новинка',
                    'AVAILABLE' => 'Доступен',
                    'ACTIVE' => 'Активен',
                    'DISCOUNT' => 'Скидка',
                    'DEFAULT_PRICE' => 'Базовая цена',
                    'PRICE' => 'Цена',
                    'BRAND' => 'Бренд',
                    'CATEGORY' => 'Категория',
                ]
            ],
    ...
],
//Here u can add a module for working with build-in export/import controller
'modules' => [
    'import-export' => [
        'class' => \maxcom\catalog\exportimport\Module::class
    ]
]

//otherside u can include our import/export actions into your controller with manual below
//In your controller:

...
public function actions() {
        return [
            ...
                'export' => [
                    'class' => '\maxcom\catalog\exportimport\actions\ExportAction',
                ],
                'import' => [
                    'class' => '\maxcom\catalog\exportimport\actions\ImportAction'
                ]
            ...
        ];
}
...

//Also you can use component without Yii2 Container
//like:
$porter = new ImportExport([
    'exportQuery' => 'Your export ActiveQuery',
    'attributesToNames' => 'Your human understanding lables'
]);
    $result = $porter->export();
    ...
```

###  Health Score

21

—

LowBetter than 19% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity37

Early-stage or recently created project

 Bus Factor1

Top contributor holds 72% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/642519?v=4)[Alex Kostin](/maintainers/webmayak)[@webmayak](https://github.com/webmayak)

---

Top Contributors

[![numkms](https://avatars.githubusercontent.com/u/22604903?v=4)](https://github.com/numkms "numkms (18 commits)")[![chp91](https://avatars.githubusercontent.com/u/50347312?v=4)](https://github.com/chp91 "chp91 (4 commits)")[![webmayak](https://avatars.githubusercontent.com/u/642519?v=4)](https://github.com/webmayak "webmayak (3 commits)")

### Embed Badge

![Health badge](/badges/max-commerce-catalog-export-import/health.svg)

```
[![Health](https://phpackages.com/badges/max-commerce-catalog-export-import/health.svg)](https://phpackages.com/packages/max-commerce-catalog-export-import)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
