Questions tagged «magento2»

有关Magento 2的一般问题,不专门针对次要版本。使用此标签可以区分Magento1。如果您对特定版本有疑问,请改用相应的“ Magento-2.x”标签。Magento 2次要版本之间的功能可能有所不同。


1
从Magento 2开始需要学习Magento 1吗?
我是magento的新手。 我想学magento。 我的第一步应该是什么。 我应该从magento 2开始。 在哪里可以找到它的资料。 还是有必要在开始Magento 2之前学习magento 1?
8 magento2 

2
magento2使用什么zend组件?
Magento2现在使用zend framewok 1,zend framework 2,symfony等。 我想知道zend framewok 1和zend framewok 2的组件是什么。 例如: Zend_Db(来自zend 1) Zend_Json(来自zend 2) Zend_mvc(来自Zend 1) 等等 还有每个框架有多少百分比(不完全是..我知道这很困难) 例如: zend framewok 1:45% zend framewok 2:25% symfony:30% 更新:通过作曲家,我无法识别使用magento的组件。 例如:symfony / config或zend / config(两个组件都存在于composer中)

2
如何通过magento 2中的单元测试的对象管理器获取ScopeConfigInterface?
我正在尝试从magento 2数据库的core_config_table中读取我的单元测试中的一行。我已阅读此链接,知道完成这项工作 。我必须使用: \Magento\Framework\App\Config\ScopeConfigInterface 通过: \Magento\Framework\TestFramework\Unit\Helper\ObjectManager 这是我的代码: protected function setUp() { $objectManager = new \Magento\Framework\TestFramework\Unit\Helper\ObjectManager($this); $this->scopeConfig = $objectManager->getObject('\Magento\Framework\App\Config\ScopeConfigInterface'); } public function testgetImageCDNConfigValue() { $this->scopeConfig->getValue($this->path, \Magento\Store\Model\ScopeInterface::SCOPE_STORE); if ($this->scopeConfig == null) { $this->assertFalse(true); } else { $this->assertTrue(true); } } 我可以使用testObject获得我想要的每个对象,\Magento\Framework\TestFramework\Unit\Helper\ObjectManager但是每当我想要获得时\Magento\Framework\App\Config\ScopeConfigInterface 致命错误:无法在第162行的C:\ xampp \ htdocs \ magento \ vendor \ magento \ framework …

2
重新编写块时是否需要在Magento2中重写模板?
这个问题是关于遵循Magento2最佳实践的。 我必须重写\ Magento \ Theme \ Block \ Html \ Topmenu :: _ addSubMenu()方法,以便在元素周围添加一些包装。现在,因为它是一种受保护的方法,所以我的理解是我必须使用首选项功能: <preference for="Magento\Theme\Block\Html\Topmenu" type="MyCompany\Theme\Block\Html\Topmenu" /> 并添加一个带有我的重写的类: <?php namespace MyCompany\Theme\Block\Html; class Topmenu extends \Magento\Theme\Block\Html\Topmenu { protected function _addSubMenu($child, $childLevel, $childrenWrapClass, $limit) { // my stuff } } 尽管默认类被重写,但在下一页重新加载时,出现以下错误: main.CRITICAL:模块:“ MyCompany_Theme”块的名称:“ catalog.topnav”中无效的模板文件:“ html / topmenu.phtml” [] [] Magento尝试在我的扩展名下而不是在Magento_Theme下找到html / …

2
Magento2-如何在触发checkout_cart_product_add_after后以编程方式将产品添加到购物车
考虑有两种产品,即:产品A和产品B。产品B是一种虚拟产品,当将产品A添加到购物车时,我需要将其添加到购物车中。 为此,我正在尝试通过观察事件将产品B添加到购物车checkout_cart_product_add_after。添加产品A后,我将检索为产品A添加的产品数量,并基于此我尝试以编程方式添加产品B。要添加产品B,我编写了以下代码: <?php namespace MyModule\Applicationcharges\Observer; use Magento\Framework\Event\ObserverInterface; use Magento\Framework\App\RequestInterface; class AddCharges implements ObserverInterface { protected $_productRepository; protected $_cart; public function __construct(\Magento\Catalog\Model\ProductRepository $productRepository, \Magento\Checkout\Model\Cart $cart){ $this->_productRepository = $productRepository; $this->_cart = $cart; } public function execute(\Magento\Framework\Event\Observer $observer) { $item=$observer->getEvent()->getData('quote_item'); $product=$observer->getEvent()->getData('product'); $item = ( $item->getParentItem() ? $item->getParentItem() : $item ); $product->getQty(); $params = …

2
Magento 2代理类覆盖
我需要\Magento\Catalog\Model\Product\Link使用首选项覆盖该类,这可以正常工作,但是上述类具有自动生成的代理类\Magento\Catalog\Model\Product\Link\Proxy,该代理类不包括在覆盖中添加的新方法。有什么方法可以将这些方法注入代理类中? 编辑 我试图对此进行深入研究,发现我们可以使用di.xml注入代理。但是,当我尝试这样做时,出现了类Package\Module\Model\Class\Proxy不存在的异常。这意味着我尝试生成的新代理不会自动生成。

3
Magento 2:不在后端网格中显示客户
有一些从Magento 1.9.1.0导入的客户,这些客户位于客户eav customer_entity和相关表中。但是管理员客户网格未显示任何记录。我还测试了从后端添加新客户,他们被添加了。那些导入的客户可以登录前端。客户索引管理始终显示处理过程。 我试图手动重新索引bin/magento indexer:reindex customer_grid。 它似乎什么也没做。我认为设置cron也不会有帮助。但是,这是我的本地主机。 客户网格索引已在00:00:00成功重建 非常感谢您的建议。 先感谢您

4
Magento 2.0的Magmi替代品?
由于Magmi没有任何Magento 2.0兼容版本(或者我找不到它),因此我已经在互联网上寻找Magento 2.0的Magmi替代产品了。 如果您中有任何人有使用Magento 2.0中的模块或工具来导入/导出类别和产品的经验,请与我分享一下吗?谢谢 考虑到我已经尝试使用Firebear。

6
如何在Magento 2中更改货币格式?
目前价格显示为$ 2.999,00 我希望产品页面上的语言环境es_MX(西班牙语,墨西哥)的价格显示为$ 2,999.00 ,其他任何货币格式正确的地方。 我已经尝试了stackexchange中的所有解决方案,但没有人能解决。 文件app / code / Jsp / Currency / etc / di.xml <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> <preference for="Magento\Framework\Locale\Format" type="Jsp\Currency\Model\Format"/> </config> 档案app / code / Jsp / Currency / Model / Format.php <?php namespace Jsp\Currency\Model; use Magento\Framework\Locale\Bundle\DataBundle; class Format extends \Magento\Framework\Locale\Format { private static $defaultNumberSet = 'latn'; …

3
是否可以在Magento2中删除页面布局中的元素?
当我阅读有关页面布局的文档(http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/layouts/layout-types.html#layout-types-page)时,允许以下XML文档中的说明: <container> <referenceContainer> <move> <update> 由于<referenceBlock name="block.name" remove="true" />不是允许的指令之一,我如何才能删除特定页面布局中的某个元素? 我想要的顶级类别是整个其他页面设计。我不需要某些容器和块来进行此设计。对于这些类别,我只想显示子类别,而不是产品。 我现在要做的是,在页面布局中添加了以下几行:(在中design\frontend\Vendor\Name-of-theme\Magento_Theme\page_layout\catalog-blocks.xml) <move element="category.image" destination="delete"></move> <move element="category.description" destination="delete"></move> <move element="category.products" destination="delete"></move> <move element="page.main.title" destination="delete"></move> 在design\frontend\Vendor\Name-of-theme\Magento_Theme\layouts.xml我补充说: <layout id="catalog-blocks"> <label translate="true">Catalog Blocks</label> </layout> 我在admin中为所有顶级类别提供了此目录块页面布局。 然后在主布局(design\frontend\Vendor\Name-of-theme\Magento_Theme\layout\default.xml)中添加: <referenceBlock name="delete" remove="true" /> 因此,整个删除块都将被删除,而所有我搬到这里的东西都将在页面布局中删除。这很好用!它完全达到了我想要的目的,但是整个事情在我看来似乎有些破绽。 这被认为是一种好习惯吗?如果没有,那么什么是不错的选择? 编辑1:更改了remove我的问题中的-tag,使用了正确的标签以避免混淆。 编辑2:有关文件和文件位置的更多信息。

2
如何从magento 2获取我的自定义表格数据
我使用自定义模块创建了一个新表,并将值存储到该表中,现在,我需要从magento 2的数据库中的php文件块中获取表数据,如何实现呢? TableName="email_format" columns="customerid"而"format"现在,我需要从表中检索客户ID和格式值。 谢谢,

1
Magento2 CSS IE黑客
在Magento2中,要添加CSS,专门用于IE 8,使用 <css src="css/ie-8.css" /> 在本地源代码中找不到任何地方。
8 magento2  css 

7
Magento 2在产品列表页面上获取所有产品图像
在Magento 1中,我一直使用 $_product->getMediaGallery('images') 但是从Magento 2的源中我看到了 $productImage = $block->getImage($_product, $image); echo $productImage->toHtml(); 它只是获得第一个产品图片。如何获得第二个或第三个图像(不仅是基本图像)? GetMediaGallery函数不存在? 更新: $ _product-> getMediaGalleryImages()在var_dump中抛出NULL 和 对于getMediaGallery和getMediaGalleryEntries,我得到相同的通知错误: Undefined property: Magento\Catalog\Model\Product\Interceptor::$getMediaGallery

2
Magento2:如何在自定义模块中创建PDF
我想在销售时生成自定义pdf,并将其附加到所有自定义模块中的销售电子邮件中。 我认为我需要扩展Magento\Sales\Model\Order\Pdf\AbstractPdf以生成pdf,但我不确定。 有没有人做过这件事,或者我是否在正确的轨道上有任何想法? //编辑: 根据评论,这是有关如何将http://www.fpdf.org/纳入自定义模块的基本布局: 首先,我下载了fpdf软件包。我提取了文件并将它们全部放入“模块” Helper文件夹,现在看起来像这样: - Helper -- font (folder) -- makefont (folder) -- FPDF.php -- Data.php Data.php 是我在此文件夹中已经拥有的唯一文件,因为它包含我的助手数据类。 接下来,我编辑了FPDF.php并将模块命名空间添加到其中。 我编辑了助手Data.php文件,并使用了命名空间FPDF类: use Company\ModuleName\Helper\FPDF as FPDF; 我在数据类中定义了我需要的任何pdf信息-您不需要这样做: // PDF INFOS protected $pdfFileDir = 'someDir/someSubDir/'; protected $logo1 = 'myLogo.jpg'; protected $logo2 = 'myExtraLogo.jpg'; /** * @var \Company\ModuleName\Helper\FPDF */ protected $_pdf; …
8 magento2  pdf 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.