我必须创建Magento 2.x扩展,但据我所知,Magento团队已经更改了扩展结构。谷歌未能帮助我。 可能有人有指令的链接我正在寻找?
答案 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扩展:
您已了解在Magento2中编写简单模块的所有步骤。当您运行链接时:
http://localhost/magento2/helloworld/index/index,结果将显示如下
创建Magento 2 Extensions作为示例