นี่เป็นวิธีที่ดีกว่าการเชื่อมต่อเข้ากับระบบทดสอบ: ใช้อินเตอร์เฟสบรรทัดคำสั่งของ Magento 2
นี่หมายความว่าคุณจะต้องรวมรหัส sandbox ของคุณเข้ากับโมดูลจริง (หรือสร้างรหัสเพื่อวัตถุประสงค์) แต่คุณควรทำเช่นนั้น
เมื่อคุณได้โมดูลของคุณตั้งค่า , การเพิ่มคำสั่งเป็นเรื่องง่ายสวย สิ่งที่คุณต้องมีคือชั้นเรียนและ DI เพื่อลงทะเบียน
1. {module} /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>
2. {module} /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
เมื่อคุณได้เพิ่มทั้งสองบิตของรหัส (วีโอไอพีและแคชล้าง ฯลฯ ) ดำเนินการคำสั่งของคุณโดยใช้ชื่อใน php bin/magento example:greeting
SSH:
execute()
คุณสามารถใช้ฉีดอยู่ในบริบทนี้เพื่อให้คุณสามารถเรียกใช้รหัสที่คุณต้องการภายใน
อินเตอร์เฟซนี้ถูกสร้างขึ้นบน Symfony ขององค์ประกอบคอนโซลเพื่อให้คุณยังมีการเข้าถึงแบบเต็มไปยังทุกที่หลากหลายของการทำงานรวมทั้งตัวเลือก / ข้อโต้แย้ง , ตาราง , และง่ายมากแถบความคืบหน้า
หากคุณพบปัญหาในการตั้งค่าคำสั่งหรือตัวเลือกของคุณคุณสามารถเรียกใช้คำสั่ง 'รายการ' เพื่อให้มองเห็นสิ่งที่ผิดปกติได้ดีขึ้น: php bin/magento list
สนุก.