Saltar al contenido

En magento 2, cómo agregar opciones personalizadas en acción, aplicar el campo en el formulario de regla de precio del carrito en el administrador

Solución:

Las opciones de este menú desplegable se procesan desde getMetadataValues ​​() función que está disponible en MagentoSalesRuleModelRuleMetadataValueProvider.php

Entonces, puede crear un complemento para eso porque es un método público. Creé un complemento para eso y obtengo la salida que desee.

Siga estos pasos a continuación para eso:

1) Crear di.xml para configurar el complemento en app/code/RH/CustomPlugin/etc/adminhtml :

<?xml version="1.0"?>
<!--
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */
-->
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
    <type name="MagentoSalesRuleModelRuleMetadataValueProvider">
      <plugin name="salesrule-plugin" type="RHCustomPluginPluginRuleMetadataValueProvider" sortOrder="1" />
    </type>
</config>

2) Ahora, cree un archivo de complemento ValueProvider.php para agregar una opción personalizada para el menú desplegable en RHCustomPluginPluginRuleMetadata:

<?php

namespace RHCustomPluginPluginRuleMetadata;

class ValueProvider {
    public function afterGetMetadataValues(
        MagentoSalesRuleModelRuleMetadataValueProvider $subject,
        $result
    ) {
        $applyOptions = [
            'label' => __('Popular'),
            'value' => [
                [
                    'label' => 'The Cheapest, also for Buy 1 get 1 free',
                    'value' => 'buy-1-get-1-free',
                ],
                [
                    'label' => 'Get $Y for each $X spent',
                    'value' => 'get-y-for-each-x-spent',
                ],
            ],
        ];
        array_push($result['actions']['children']['simple_action']['arguments']['data']['config']['options'], $applyOptions);
        return $result;
    }
}

Producción :

ingrese la descripción de la imagen aquí

Puede modificar la opción en la matriz como desee.

Espero que te sea de ayuda.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *