Magento 管理产品编辑页面删除或更改数量属性

问题描述 投票:0回答:1

谁知道如何删除或修改管理产品编辑页面中的数量属性!

我检查了magento文档中UI组件的product_form.xml,我已经成功地在提前库存页面更改了数量,但是对于主页数量我没有找到在哪里可以更改它,有人可以帮助我吗?

enter image description here

admin magento2
1个回答
0
投票
<?php

namespace Module\CatalogInventoryEdit\Ui\DataProvider\Product\Form\Modifier;

use Magento\Catalog\Ui\DataProvider\Product\Form\Modifier\AbstractModifier;
use Magento\Framework\Stdlib\ArrayManager;

class Attributes extends AbstractModifier
{
    /**
     * @var ArrayManager $arrayManager
     */
    private ArrayManager $arrayManager;

    /**
     * Initialise dependencies.
     *
     * @param ArrayManager $arrayManager
     */
    public function __construct(ArrayManager $arrayManager)
    {
        $this->arrayManager = $arrayManager;
    }

    /**
     * Included to appease AbstractModifier.
     *
     * @param array $data
     * @return array $data
     */
    public function modifyData(array $data): array
    {
        return $data;
    }

    /**
     * @param array $meta
     * @return array $meta
     */
    public function modifyMeta(array $meta): array
    {

        return $this->customizeAttributes($meta);
    }

    /**
     * Modify meta customize attribute modal.
     *
     * @param array $meta
     * @return array
     */
    private function customizeAttributes(array $meta): array
    {
        $meta['product-details']
        ['children']['container_quantity_and_stock_status']
        ['children']['quantity_and_stock_status']
        ['arguments']['data']['config'] =
            [
                'componentType' => 'container',
                'label' => __('Stock Status'),
                'visible' => false,
            ];

        $attribute = ['quantity_and_stock_status_qty'];
        $path = $this->arrayManager->findPath($attribute, $meta, null, 'children');
        return $this->arrayManager->set(
            "$path/arguments/data/config/visible",
            $meta,
            false
        );

    }

}
© www.soinside.com 2019 - 2024. All rights reserved.