Magento

Magento电子商务平台用户的问答

2
通过布局XML删除UI组件子级
如何通过布局XML删除UI组件子级?例如,从下面的xml指令中checkout_index_index.xml。如何删除运送节点? <item name="sidebar" xsi:type="array"> <item name="children" xsi:type="array"> <item name="summary" xsi:type="array"> <item name="children" xsi:type="array"> <item name="totals" xsi:type="array"> <item name="children" xsi:type="array"> <item name="subtotal" xsi:type="array"> <item name="config" xsi:type="array"> <item name="title" xsi:type="string" translate="true">Subtotal</item> </item> </item> <item name="shipping" xsi:type="array"> <item name="config" xsi:type="array"> <item name="title" xsi:type="string" translate="true">Estimated Shipping</item> </item> </item> <item name="grand-total" xsi:type="array"> <item name="config" xsi:type="array"> …


8
Magento 2类*工厂不存在
我正在尝试安装插件,并删除了var / generation和var / cache / *。我已经检查了MAGE_MODE,并且正在开发中,但是现在当我访问前端和管理员时,我得到了随机错误,其含义是: Class Magento\Customer\Model\CustomerFactory does not exist Magento \ Sales \ Model \ ResourceModel \ Report \ OrderFactory类不存在 正在创建一些类,但不是全部。我尝试再次清除缓存和生成文件夹,但是然后我得到了相同的错误。 有任何想法吗?
15 magento2 

3
M1-TLS 1.2-PayPal Express NVP CURL连接错误#35:SSL连接错误
我在运行7.19.7的旧服务器上有一个开发环境。 最近,我注意到Paypal Express不再起作用,并返回错误"Unable to communicate with the PayPal gateway."。 深入研究异常日志,您可以看到 exception 'Exception' with message 'PayPal NVP CURL connection error #35: SSL connect error' in /path/app/code/core/Mage/Paypal/Model/Api/Nvp.php:983 Stack trace: #0 /path/app/code/core/Mage/Paypal/Model/Api/Nvp.php(616): Mage_Paypal_Model_Api_Nvp->call('SetExpressCheck...', Array) #1 /path/app/code/core/Mage/Paypal/Model/Express/Checkout.php(381): Mage_Paypal_Model_Api_Nvp->callSetExpressCheckout() #2 /path/app/code/core/Mage/Paypal/Controller/Express/Abstract.php(108): Mage_Paypal_Model_Express_Checkout->start('http://asdf...', 'http://asdf...', false) #3 /path/app/code/core/Mage/Core/Controller/Varien/Action.php(418): Mage_Paypal_Controller_Express_Abstract->startAction() #4 /path/app/code/core/Mage/Core/Controller/Varien/Router/Standard.php(254): Mage_Core_Controller_Varien_Action->dispatch('start') #5 /path/app/code/core/Mage/Core/Controller/Varien/Front.php(172): Mage_Core_Controller_Varien_Router_Standard->match(Object(Mage_Core_Controller_Request_Http)) #6 /path/app/code/core/Mage/Core/Model/App.php(365): …

4
如何在Magento2中获得当前产品?
我正在尝试在Magento 2的一个块中检索当前产品的属性。我可以获得一个产品,例如ID 1: $objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $product = $objectManager->create('\Magento\Catalog\Model\ProductRepository')->getById(1); 我不知道如何获取当前产品的ID。我怎么做?
15 magento2  product 

2
在Magento 2中设置管理路线
查看核心的Magento 2代码,似乎有两种方法来设置管理路径。 首先 #File: vendor/magento/module-media-storage/etc/adminhtml/routes.xml <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd"> <router id="admin"> <route id="adminhtml"> <module name="Magento_MediaStorage" /> </route> </router> </config> 与Magento 1类似。您将模块添加到adminhtml路径中的模块列表中,Magento会为您检查它。 第二 #File: vendor/magento/module-cms/etc/adminhtml/routes.xml <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd"> <router id="admin"> <route id="cms" frontName="cms"> <module name="Magento_Cms" before="Magento_Backend" /> </route> </router> </config> 有你建立一个新的路径(ID cms以上),然后将你的模块吧。 在Magento 2中,其中一种方法是“正确/首选”方法吗?如果没有,两者之间有什么区别?也就是说,您什么时候可以使用另一个? 要求不解决特定问题,但要确保我以正确的方式创建路由,并且避免了类似于Magento 1模块的问题(拉入ajax库,安全性等)。
15 magento2  php  xml  router 

3
为什么Magento 2有2个可能的根文件夹?
我试图弄清楚Magento 2的工作方式。我已经看到一些令我困惑的东西。 Magento 2有两个可能的根文件夹: /path/to/magento2/index.php /path/to/magento2/pub/index.php 一个是Magento 2分发文件夹的绝对顶级目录。第二个位于“ pub”文件夹中。 如果我将基本URL设置为其中之一,则magento可以正常运行。 谁能解释我为什么Magento 2使用2这样的根文件夹?
15 magento2  index 

5
在VCS下,Magento 2项目的首选结构是什么?
当我开始一个新的M2项目时,我要做的第一件事是通过composer安装核心: composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition 现在,我可以在下编写我的自定义模块和主题app/code。然后,我composer.*将整个app/code文件夹添加到我的VCS中。到目前为止,一切都很好。 假设现在我想为我的项目使用一些构建工具,比如说Grunt或Gulp。 如果我自己提交Gruntfile.js,克隆仓库后magento/magento2-base运行时,它将被程序包覆盖composer install。 如果我提交了我gulpfile.js,我真的不能在a中定义我的依赖package.json,因为它也会被magento/magento2-base。 如果我决定使用Magento的Grunt设置并希望通过编辑/dev/tools/grunt(例如themes.js)下的文件来自定义它,则不能,因为我的更改将被覆盖magento/magento2-base。 我的理解是,您实际上无法在文档根目录中做很多事情。对于这个问题,当然有很多解决方案: 我可以git checkout -在安装后立即运行以重置自己的文件 我可以将构建文件存储在专用文件夹中,/build例如 我可以使用其他构建工具,例如Phing,Ant或Rake(尽管我的前端开发人员不会那么高兴) 我可以替换magento/magento2-base为具有针对核心文件的自定义映射的自定义包(虽然不是最佳选择,但是,这是一个选择) 我个人不喜欢所有这些选项,因此我想知道是否有一种首选或更好的方法来实现我要做的事情。 有人有同样的问题吗?您是如何解决的?您如何在VCS下构建项目? 更新 与项目设置有关的一个额外要点。在实验中,我注意到Magento作曲家安装程序具有文件覆盖标志: "extra": { "magento-force": "override" } 如果我没记错的话,它在内部被视为布尔值,因此我尝试将其设置false为跳过重写。当我运行时composer install,由于文件已存在,安装失败。基本上,如果我不让Magento覆盖文件,就无法安装。 那么,该标志的目的是什么?是否只想对我进行检查?老实说,这对我来说没有多大意义,但也许有人可以阐明这个话题。


5
Magento 2:如何设置核心块的自定义模板
我正在尝试覆盖模块中的register.phtml,但似乎存在一些配置问题,这些问题使Magento无法使用我的自定义模板覆盖核心模块中的模板。我检查了代码,但找不到问题。有人可以帮忙吗?提前致谢。module.xml: <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd"> <module name="Namespace_ModuleName" setup_version="0.0.2"> <sequence> <module name="Magento_Customer"/> </sequence> </module> </config> 命名空间\模块名称\视图\前端\布局下的customer_account_create.xml: <?xml version="1.0"?> <layout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/layout_generic.xsd"> <referenceBlock name="customer_form_register"> <arguments> <argument name="template" xsi:type="string">Namespace_ModuleName::form/register.phtml</argument> </arguments> </referenceBlock> </layout> composer.json: { "name": "namespace/module-modulename", "description": "modulename", "type": "magento2-module", "version": "0.0.2", "license": [ "OSL-3.0", "AFL-3.0" ], "require": { "php": "~5.5.0|~5.6.0", "magento/framework": "~0.42", "magento/magento-composer-installer": …



6
Magento2如何以编程方式添加属性选项(不在设置中)
我尝试在导入器模块中添加有关尺寸和颜色属性的选项,但我不知道如何...: private function addOption($attributeCode, $value) { $ob = $this->_objectManager; /* @var $m \Magento\Eav\Model\Entity\Attribute\OptionManagement */ $m = $this->optionManagement; /* @var $option \Magento\Eav\Model\Entity\Attribute\Option */ $option = $this->attributeOption; $option->setLabel($value); $option->setValue($value); $m->add(\Magento\Catalog\Api\Data\ProductAttributeInterface::ENTITY_TYPE_CODE, $attributeCode, $option); 此报告错误(我将异常报告修改OptionMaganger.php为Exception-> message) 无法保存属性大小注意:未定义的索引:在第177行的/var/www/html/magento2/vendor/magento/module-swatches/Model/Plugin/EavAttribute.php中删除 OptionManagement和Option来自 _contstructor 使用OptionManagement,我可以检索现有项目,因此应该可以。 setLabel()并且setValue()是默认设置,但是我尝试了setData,加载选项实例并OptionManagement->getItems再次传递给add(...),但是错误仍然存​​在... 任何想法,如何在导入过程中附加EAV选项(样本?)?(不在模块设置中) 更新: 我可以添加选项的其他方式: $attributeCode = 137; /* on size, 90 on color ... …


3
将订单放置在magento2中后,将自定义数据从报价复制到订单和订单项目
我正在magento 2中构建具有自定义折扣的自定义模块。我正在尝试将折扣从报价,报价项目复制到订单和订单项目。在magento 1中,我这样声明config.xml: <fieldsets> <sales_convert_quote_address> <custom_discount_amount><to_order>*</to_order></custome_discount_amount> <base_custom_discount_amount><to_order>*</to_order></base_custome_discount_amount> </sales_convert_quote_address> <sales_convert_quote_item> <custome_discount_amount><to_order_item>*</to_order_item></custome_discount_amount> <base_custom_discount_amount><to_order_item>*</to_order_item></base_custom_discount_amount> </sales_convert_quote_item> </fieldsets> 并且我的自定义折扣金额已复制到表格中:sales_flat_order并按sales_flat_order_item预期进行。 在Magento 2中,我fieldset.xml使用以下代码创建了一个文件名: <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Object/etc/fieldset.xsd"> <scope id="global"> <fieldset id="sales_convert_quote_item"> <field name="custom_discount_amount"> <aspect name="to_order_item" /> </field> <field name="base_custom_discount_amount"> <aspect name="to_order_item" /> </field> </fieldset> <fieldset id="sales_convert_quote_address"> <field name="custom_discount_amount"> <aspect name="to_order" /> </field> <field name="base_custom_discount_amount"> <aspect name="to_order" /> </field> …

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.