Magento

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



1
如何在Magento 2中管理config.php
首先,这可能是一个已经回答的问题,但是我没有找到关于该主题的任何信息。 这不是问题,而是有关config.php在Magento 2中管理文件的最佳方式的问题。 实际上,我们config.php没有版本化(默认情况下,在M2 .gitignore文件中),因此它不在我们的存储库中。问题是,当有人安装项目时,他没有此文件,但他已经有数据库,因此无法运行bin/magento setup:install ...以生成文件。 我们知道,只有在文件存在的情况下,才能向其中bin/magento setup:upgrade添加未声明的模块,config.php并且bin/magento module:enable可以添加模块,但是我们希望避免在每次部署或安装项目时启动该模块。 我的问题(S): -我们必须删除config.php从.gitignore和版本呢? -我们是否必须在存储库中第一次添加它,然后再添加它.gitignore? -管理此文件的最佳方法是什么?

5
将产品添加到购物车magento 2时弹出微型购物车
我正在使用magento 2.0.7,我想做的是在向其中添加产品时弹出购物车(右上方的ajax minicart购物车),基本上是触发它。我试图将“ showcart”类添加到“添加到购物车”按钮类中,但是如果这样做,则该按钮只是打开购物车,不再添加产品了。
15 magento2  cart  popup 

3
Magento 2:使用服务合同的好处是什么?
因此,如您所知,Magento 2建议的处理CRUD行为的模型/集合的方法是使用服务合同。 但是仍然根据Magento SE问答,似乎大多数人倾向于直接使用模型/资源模型/集合来代替。 作为加载报价的示例,我可以这样直接通过工厂进行报价: $this->quoteFactory->create()->load($quoteId); $this->quoteFactory的实例在哪里\Magento\Quote\Model\QuoteFactory 但是我也可以通过服务合同来做到这一点: $this->quoteRepository->get($quoteId); $this->quoteRepository的实例在哪里\Magento\Quote\Api\CartRepositoryInterface 所以我的问题是,与工厂相比,使用服务合同有什么好处?


2
注释中的“#@ +”和“#@-”字符串是什么意思?
在某些Magento 2类的注释中,我看到很多“#@ +”和“#@-”字符串。 \Magento\Customer\Api\Data\AttributeMetadataInterface interface AttributeMetadataInterface extends \Magento\Framework\Api\MetadataObjectInterface { /**#@+ * Constants used as keys of data array */ const ATTRIBUTE_CODE = 'attribute_code'; ... const IS_SEARCHABLE_IN_GRID = 'is_searchable_in_grid'; /**#@-*/ ... } 这些标记的目的是什么?

3
Magento 2:获取重写的产品网址
我试图rewrite product url从load product自定义模块中获取。我正在获取url http://localhost/m2/catalog/product/view/id/1401/category/23/格式。 但是我想要 http://localhost/m2/juno-jacket.html 这是代码 在构造函数中 public function __construct( \Magento\Catalog\Helper\Product $catalogProductHelper, ) { $this->catalogProductHelper = $catalogProductHelper; } 自定义功能 public function abc(){ $product_id = '123'; return $this->catalogProductHelper->getProductUrl($product_id); } abc() method 像这样返回网址 http://localhost/m2/catalog/product/view/id/1401/category/23/

6
Magento 2的本地安装不会在pub / static文件夹中生成文件
我刚刚通过MAMP在本地安装了带有示例数据的Magento 2社区版(从他们的网站下载而未与composer一起安装)。安装过程成功完成,但是pub / static文件夹中的所有文件都丢失了,除了.htaccess。这意味着所有css,js等都为前端和后端返回404。 我花了几个小时试图解决这个问题。到目前为止,这是我所做的: Options Indexes FollowSymLinks AllowOverride在/MAMP/conf/apache/httpd.conf中从“无” 更改为“全部”,然后重新启动MAMP 确保LoadModule rewrite_module modules/mod_rewrite.so在httpd.conf中未添加注释 在MAMP中设置开发域(magento.dev) 尝试php bin/magento setup:static-content:deploy使用Terminal在magento.dev根目录中运行。但是,这返回: 致命错误:在第64行的/Applications/MAMP/htdocs/magento.dev/vendor/magento/framework/Locale/Bundle/DataBundle.php中找不到类“语言环境” RewriteBase /在magento.dev根目录的.htaccess文件中取消注释,并将RewriteBase更改为。 将Magento设置为开发模式 手动清除缓存并php bin/magento setup:static-content:deploy再次运行 大多数指南和论坛帖子都告诉我要运行:php bin/magento setup:static-content:deploy但是我不确定我是否做对了。 作业系统:OSX 10.11.2 MAMP版本:3.5 PHP版本:7.0 Apache版本:2.4.16 MySQL版本:5.6.25 任何帮助,将不胜感激。

4
如何使用sql列出所有禁用的产品?
我需要使用MySQL查询列出所有禁用的产品。 我的数据库中有太多产品无法使用这样的功能(创建集合,加载它并对其进行循环):http : //www.srikanth.me/get-all-disabled-products-on-magento/
15 product  mysql  query 

2
从后端在前端自动登录
请参阅以下情形。 我有一些自定义模块,允许前端用户对某些自定义实体执行某些操作。(细节不是很重要)。 要求管理员应该能够使用客户帐户(没有密码)在前端登录,并能够为客户执行这些操作。 由于您不能使用后端的前端会话,并且我不想为前端创建永久的自动登录链接,因为这可能是一个很大的安全漏洞,这就是我到目前为止所做的。 为客户实体添加一个空属性。(叫它login_key) 在客户编辑页面的后端添加一个按钮,该按钮重定向到管理页面,在该页面中生成一个随机字符串并将其保存在属性中login_key。 在同一操作中,我将管理员重定向到这样的前端URL autologin/index/index/customer_id/7/login_key/ajkshdkjah123123(在上一步中生成的值)。 在前端网址中,如果客户ID与login_key特定客户匹配,则我在会话中设置了客户对象(如已登录)并删除了login_key该对象,因此该网址将来将无法使用。 这可以正常工作。我的意思是,我以所选客户的身份登录,并且用于自动登录的链接第二次不起作用。 不利的一面是,如果2个管理员大约同时单击“自动登录”按钮,则一个人将无法登录,但这是可以接受的风险。 我主要担心的是,这也可能是一个(不是那个)重大的安全问题。有人可以看到这种方法有问题吗?还是建议一个更好的? 可以忽略客户帐户可以由网站分隔的事实。这并不重要,也可以轻松管理。


1
最好的扩展模块的最佳方法,如_minicart.less?
那么<module>/web/css/source/module/,例如,哪一种是扩展较少文件内容的最佳方法Magento_Checkout/web/css/source/module/_minicart.less? 假设 A)超越 少相关的主题,您必须创建(或复制)具有与父主题相同名称的少主题,并像这样将其放入您的主题中theme-frontend-blank/web/css/source/_buttons.less-><your-theme>/web/css/source/_buttons.less 特定于模块的内容,您必须创建(或复制)与父主题名称相同的内容,然后将其放在您的主题中,如下所示theme-frontend-blank/Magento_Theme/web/css/source/_module.less-><your-theme>Magento_Theme/web/css/source/_module.less UI lib less,您必须在库文件夹中创建(或复制)具有相同名称内容的less,然后将其放在您的主题中,如下所示magento2-base/lib/web/css/source/lib/_buttons.less-><your-theme>Magento_Theme/web/css/source/lib/_buttons.less 并 B)延伸 与主题相关的较少,您必须在主题中创建一个_extend.less文件,并在名称中添加_extend这样的名称<your-theme>/web/css/source/_navigation_extend.less才能扩展并在_extend.less中theme-frontend-blank/web/css/source/_navigation.less使用@import指令注册该文件,而无需在web / css / source->中添加主题内容@import "_navigation_extend.less" 具体来说,您必须在主题模块路径中创建_extend.less文件,这样<your-theme>Magento_CatalogSearch/web/css/source/_extend.less才能扩展Magento_CatalogSearch原始_module.less UI lib less,您必须在库文件夹中创建具有相同名称内容的less,在此名称中添加_extend<your-theme>Magento_Theme/web/css/source/lib/_buttons_extend.less以扩展并在_extend中magento2-base/lib/web/css/source/lib/_buttons.less使用@import指令注册该文件,并在web / css / source中删除主题内容- >@import "lib/_buttons_extend.less" 理论上必须建议您创建一个_minicart_extend.less,但它不会自动运行。也许您应该像B1或B3所述将文件导入_extend.less而不是该模块中? 如果这是扩展它们的正确方法,但为什么必须将这些扩展较少的组件自动包含在css的解析中,而又必须将其导入_extend.less中呢? (这里还有另一个问题:web/css/source/lib/_buttons.less和之间有什么区别web/css/source/_buttons.less?) 我有点困惑。希望有人可以帮助我。 抱歉,这篇长篇文章。 资料来源: http://devdocs.magento.com/guides/v2.1/frontend-dev-guide/css-topics/css-overview.html http://inchoo.net/magento-2/working-with-css-in-your-first-magento-2-project/comment-page-1/#comment-434125

6
如何在magento 2中打印集合mysql查询?
还有getSelect()->__toString();就是在Magento 1可用于收集打印查询。像下面的例子 $products = Mage::getModel(‘catalog/product’) ->addAttributeToFilter(‘status’, array(‘eq’ => 1)); echo $products->getSelect()->__toString(); magento 2中有什么可用的方法吗?我找到了这个,->printLogQuery(true);但是对我不起作用。 更新:下面是代码。我正在尝试获得畅销产品。它的工作完美,但我想打印查询进行调试。 $this->_collection->getSelect() ->joinLeft( 'sales_order_item', 'e.entity_id = sales_order_item.product_id', array('qty_ordered'=>'SUM(sales_order_item.qty_ordered)')) ->group('e.entity_id') ->order('qty_ordered '.$this->getCurrentDirectionReverse());

2
如何从Scratch在magento 2中创建自定义模块开发?
如何在magento 2中从头开始创建自定义模块开发,重点如下。 1.如何创建模块 2.如何安装和升级数据库 3.如何创建模块,视图和控制器层 4,如何测试所有模块组件的集成 6,如何创建Magento CLI命令 7,如何在Magento 2中配置计划任务 8,如何创建菜单项 9,如何创建ACL资源 如何使用自定义表在Magento中实现Web API 11.如何在管理员中创建自定义网格 如何使用UI组件创建表单并保存并重定向到Grid 我想与所有人共享源代码
15 magento2  grid  crontab  cli  webapi 

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.