Install the Merchant Portal - Marketplace Product feature
Edit on GitHubThis document describes how to install the Merchant Portal - Marketplace Product feature.
Install feature core
Follow the steps below to install the Merchant Portal - Marketplace Product feature core.
Prerequisites
Install the required features:
NAME | VERSION | INSTALLATION GUIDE |
---|---|---|
Marketplace Product | 202507.0 | Install the Marketplace Product feature |
Marketplace Merchant Portal Core | 202507.0 | Install the Marketplace Merchant Portal Core feature |
Marketplace Inventory Management | 202507.0 | Install the Marketplace Inventory Management feature |
1) Install the required modules
Install the required modules using Composer:
composer require spryker-feature/marketplace-merchant-portal-product-management:"202507.0" --update-with-dependencies
Make sure that the following modules have been installed:
MODULE | EXPECTED DIRECTORY |
---|---|
ProductMerchantPortalGui | spryker/product-merchant-portal-gui |
ProductMerchantPortalGuiExtension | spryker/product-merchant-portal-gui-extension |
2) Set up transfer objects
Generate transfer changes:
console transfer:generate
Make sure the following changes have been applied in transfer objects:
TRANSFER | TYPE | EVENT | PATH |
---|---|---|---|
MerchantProductTableCriteria | class | Created | src/Generated/Shared/Transfer/MerchantProductTableCriteriaTransfer |
ProductAbstractCollection | class | Created | src/Generated/Shared/Transfer/ProductAbstractCollectionTransfer |
ProductTableCriteria | class | Created | src/Generated/Shared/Transfer/ProductTableCriteriaTransfer |
ProductAttributeTableCriteria | class | Created | src/Generated/Shared/Transfer/ProductAttributeTableCriteriaTransfer |
PriceProductTableCriteria | class | Created | src/Generated/Shared/Transfer/PriceProductTableCriteriaTransfer |
PriceProductTableViewCollection | class | Created | src/Generated/Shared/Transfer/PriceProductTableViewCollectionTransfer |
PriceProductTableView | class | Created | src/Generated/Shared/Transfer/PriceProductTableViewTransfer |
MerchantUser.merchant | property | Created | src/Generated/Shared/Transfer/MerchantUserTransfer |
3) Zed translations
Generate a new translation cache for Zed:
console translator:generate-cache
Make sure that you can create a new product in the Merchant Portal and, after creating, see it in the product data table.
4) Set up behavior
Enable the following behaviors by registering the plugins:
PLUGIN | SPECIFICATION | PREREQUISITES | NAMESPACE |
---|---|---|---|
ProductsMerchantDashboardCardPlugin | Adds the products card to the merchant dashboard. | Spryker\Zed\ProductMerchantPortalGui\Communication\Plugin\DashboardMerchantPortalGui |
src/Pyz/Zed/DashboardMerchantPortalGui/DashboardMerchantPortalGuiDependencyProvider.php
namespace Pyz\Zed\DashboardMerchantPortalGui;
use Spryker\Zed\DashboardMerchantPortalGui\DashboardMerchantPortalGuiDependencyProvider as SprykerDashboardMerchantPortalGuiDependencyProvider;
use Spryker\Zed\ProductMerchantPortalGui\Communication\Plugin\DashboardMerchantPortalGui\ProductsMerchantDashboardCardPlugin;
class DashboardMerchantPortalGuiDependencyProvider extends SprykerDashboardMerchantPortalGuiDependencyProvider
{
/**
* @return array<\Spryker\Zed\DashboardMerchantPortalGuiExtension\Dependency\Plugin\MerchantDashboardCardPluginInterface>
*/
protected function getDashboardCardPlugins(): array
{
return [
new ProductsMerchantDashboardCardPlugin(),
];
}
}
Make sure that when you log in to the Merchant Portal, you can see the Products card on the Dashboard page.
5) Configure navigation
- Add a marketplace section to
navigation-main-merchant-portal.xml
:
config/Zed/navigation-main-merchant-portal.xml
<?xml version="1.0"?>
<config>
<product-merchant-portal-gui>
<label>Products</label>
<title>Products</title>
<icon>products</icon>
<bundle>product-merchant-portal-gui</bundle>
<controller>products</controller>
<action>index</action>
</product-merchant-portal-gui>
<variants-product-merchant-portal-gui>
<label>Variants</label>
<title>Variants</title>
<icon>variants</icon>
<bundle>product-merchant-portal-gui</bundle>
<controller>products-concrete</controller>
<action>index</action>
</variants-product-merchant-portal-gui>
</config>
- Update the navigation cache:
console navigation:build-cache
Make sure that, in the Merchant Portal navigation, Products and Variants menu items are displayed.
Thank you!
For submitting the form