यहां परीक्षण प्रणाली में हुक करने से बेहतर तरीका है: Magento 2 के कमांड-लाइन इंटरफ़ेस का उपयोग करें।
इसका मतलब है कि आपको अपने सैंडबॉक्स कोड को एक वास्तविक मॉड्यूल में एकीकृत करना होगा (या उद्देश्य के लिए एक बनाएं), लेकिन आपको वैसे भी ऐसा करना चाहिए।
एक बार जब आप अपने मॉड्यूल है की स्थापना की , एक कमांड जोड़ने बहुत आसान है। आप सभी की जरूरत वर्ग, और यह रजिस्टर करने के लिए DI है।
7. "मॉड्यूल} /etc/di.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="Magento\Framework\Console\CommandList">
<arguments>
<argument name="commands" xsi:type="array">
<item name="greeting_command" xsi:type="object">Magento\CommandExample\Console\Command\GreetingCommand</item>
</argument>
</arguments>
</type>
</config>
* 11. मॉड्यूल} /Console/Command/GreetingCommand.php
<?php
namespace Magento\CommandExample\Console\Command;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Input\InputInterface;
use Symfony\Component\Console\Output\OutputInterface;
/**
* Class GreetingCommand
*/
class GreetingCommand extends Command
{
/**
* {@inheritdoc}
*/
protected function configure()
{
$this->setName('example:greeting')
->setDescription('Greeting command');
parent::configure();
}
/**
* {@inheritdoc}
*/
protected function execute(InputInterface $input, OutputInterface $output)
{
$output->writeln('<info>Hello world!</info>');
}
}
Https://github.com/magento/magento2-samples/tree/master/sample-module-command से प्राप्त उदाहरण - इस कार्यक्षमता को शामिल करने वाले एक पूर्ण मॉड्यूल के लिए देखें। इसमें कम तुच्छ उदाहरण शामिल हैं।
अधिवेशन से, आपका कमांड क्लास हमेशा साथ होना चाहिए {module}/Console/Command
और समाप्त होना चाहिए Command.php
।
एक बार जब आप कोड (और प्लावित Magento कैश, आदि) के उन दो टुकड़े जोड़ दिया है, SSH में नाम से अपने आदेश निष्पादित करें: php bin/magento example:greeting
।
आप इस संदर्भ में निर्भरता इंजेक्शन का उपयोग कर सकते हैं, ताकि आप अपने भीतर किसी भी कोड को चला सकें execute()
।
यह इंटरफ़ेस सिम्फनी के कंसोल घटक पर बनाया गया है , इसलिए आपके पास कार्यक्षमता, तर्क , तालिकाओं और बहुत आसान प्रगति बार सहित कार्यक्षमता की उस विस्तृत श्रृंखला तक सभी की पूर्ण पहुंच है ।
यदि आप अपना कमांड या विकल्प सेट करने में किसी भी समस्या में भाग लेते हैं, तो आप आमतौर पर 'सूची' कमांड चला सकते हैं कि क्या गलत हो रहा है में बेहतर दृश्यता प्राप्त करने के लिए: php bin/magento list
का आनंद लें।