如何创建Magento 2扩展?

时间:2016-09-21 04:57:40

标签: magento2

我必须创建Magento 2.x扩展,但据我所知,Magento团队已经更改了扩展结构。谷歌未能帮助我。 可能有人有指令的链接我正在寻找?

2 个答案:

答案 0 :(得分:0)

感谢您的提问。我认为本教程将帮助您轻松创建Magento 2 Extension。

[查看详细信息 - >] [1]

<强>予。 MAGENTO 2安装扩展

您可能知道,有两种最常用的安装magento 2扩展的方法。第一个是使用COMMAND LINE,发送一个是手动安装。

选项1:使用命令行Magento 2安装扩展程序(推荐)

通过以下步骤

,您可以在几分钟内安装magento 2扩展程序

第1步:下载/购买扩展程序

第2步:将文件解压缩到临时目录

第3步:将其上传到Magento安装根目录

步骤4:在系统&gt;&gt;下禁用缓存缓存管理

步骤5:在命令行中输入以下内容:

php f bin / magento setup:upgrade

步骤6:打开商店后&gt;&gt;配置&gt;&gt;高级&gt;&gt;高级,该模块将显示在管理面板

选项2. Magento 2手动安装扩展程序

第1步:下载/购买扩展程序

第2步:将文件解压缩到临时目录

第3步:将其上传到Magento安装根目录

步骤4:在系统&gt;&gt;下禁用缓存缓存管理

编辑app / etc / config.php文件和三行代码:

'Ves_All'=&gt; 1,

'Ves_Megamenu'=&gt; 1,

'Ves_Setup'=&gt; 1,

[在此输入图像说明] [2]

步骤5:在系统&gt;&gt;下禁用缓存缓存管理

第6步:打开商店后&gt;&gt;配置&gt;&gt;高级&gt;&gt;高级,该模块将显示在管理面板中。

  
    

升级数据库

  

如果需要升级数据库,请运行以下命令行:

php f bin / magento setup:dbschema:upgrade

<强> II。进口样本数据

转到管理员&gt;&gt; Ves_Setup&gt;&gt;导入

选择样本数据文件

选择导入配置

ImportSampleData ImportSampleData 刷新系统&gt;&gt;下的缓存缓存管理

答案 1 :(得分:0)

我推荐一种在Magento 2中创建简单模块的方法。 我们使用Namespace创建模块是Ves,模块名称是HelloWorld

步骤1:我们需要在app / code / Ves / HelloWorld / etc

中创建一个module.xml文件
<?xml version=”1.0″?>
<config xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation=”../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd”>
<module name=”Ves_HelloWorld” setup_version=”1.0.0″>
</module>
</config>

第2步:创建app / code / Ves / HelloWorld / registration.php文件

<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
‘Ves_HelloWorld’,
__DIR__
);

步骤3:在app / code / Ves / HelloWorld / etc / frontend / routes.xml中创建前端路由器

<?xml version=”1.0″?>
<config xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation=”urn:magento:framework:App/etc/routes.xsd”>
<router id=”standard”>
<route id=”helloworld” frontName=”helloworld”>
<module name=”Ves_HelloWorld”/>
</route>
</router>
</config>

路径字符串的第一部分指示Magento应查看哪个节点以查找URL的前端名称

然后,路由器ID显示我们将使用哪个路由器:frontend或adminhtml(与Magento1相同)。请注意,前面的名称是URL的第一部分,它应该是唯一的。

步骤4:创建Controller操作

在app / code / Ves / HelloWorld / Controller / Index中创建文件index.php。这将映射到http://localhost/magento2/helloworld/index/index

helloworld:正面名称 index:控制器文件夹的名称 index:操作文件的名称 - index.php

每个动作都是自己的类扩展\ Magento \ Framework \ App \ Action \ Action。在每个操作文件中,都会有一个方法名称excute(),当调用该操作时,它将被隐藏起来

<?php
namespace Ves\HelloWorld\Controller;

class Index extends \Magento\Framework\App\Action\Action
{
/**
* @var \Magento\Framework\View\Result\PageFactory
*/
protected $resultPageFactory;

public function __construct(
\Magento\Framework\App\Action\Context $context,
\Magento\Framework\View\Result\PageFactory $resultPageFactory
) {
parent::__construct($context);
$this->resultPageFactory = $resultPageFactory;
}

/**
* Blog Index, shows a list of recent blog posts.
*
* @return \Magento\Framework\View\Result\PageFactory
*/
public function execute()
{
$resultPage = $this->resultPageFactory->create();
$resultPage->getConfig()->getTitle()->prepend(__(‘Ves HelloWorld’));
return $resultPage;
}

}

步骤5:在以下目录中创建布局文件app \ code \ Ves \ Helloworld \ view \ frontend \ layout \ helloworld_index_index.xml

<?xml version=”1.0″?>
<page xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:noNamespaceSchemaLocation=”urn:magento:framework:View/Layout/etc/page_configuration.xsd”>
<body>
<referenceContainer name=”content”>
<block class=”Ves\HelloWorld\\Block/HelloWorld” name=”ves.helloworld” template=”helloworld.phtml”/>
</referenceContainer>
</body>
</page>

步骤6:让我们为我们的模块创建一个块。创建块文件app / code / Ves / HelloWorld / Block / HelloWorld.php

<?php
namespace Ves\Helloworld\Block;

class HelloWorld extends \Magento\Framework\View\Element\Template
{

}

步骤7:创建模板文件app / code / Ves / HelloWorld / view / frontend / templates / helloworld.phtml

步骤8:激活Ves_HelloWorld扩展

我们有两种方式来激活Ves_Helloworld扩展:

  1. 直接编辑文件app / etc / config.php:在数组模块中,添加元素:'Ves_Helloworld'=&gt; 1
  2. enter image description here

    1. 在magento的文件夹根目录中打开命令行并运行命令 php bin / magento setup:upgrade
    2. enter image description here

      您已了解在Magento2中编写简单模块的所有步骤。当您运行链接时:

      http://localhost/magento2/helloworld/index/index,结果将显示如下

      enter image description here

      创建Magento 2 Extensions作为示例

      Magento 2 Page Builder

      Drag & Drop Magento 2 Mega Menu

      Magento 2 Form Builder