Magento

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


15
SUPEE-10975潜在问题
SUPEE-10975已发布,很高兴知道在尝试应用此程序时是否有人遇到任何问题,这是否与最新的添加7.2支持的修补程序发生冲突? 到目前为止,这些是我可以看到的更改文件 app/code/core/Mage/Adminhtml/Block/Customer/Group/Edit.php app/code/core/Mage/Adminhtml/Block/Newsletter/Template/Edit.php app/code/core/Mage/Adminhtml/controllers/Cms/BlockController.php app/code/core/Mage/Adminhtml/controllers/Customer/GroupController.php app/code/core/Mage/Adminhtml/controllers/SitemapController.php app/code/core/Mage/Adminhtml/controllers/System/BackupController.php app/code/core/Mage/Captcha/Model/Observer.php app/code/core/Mage/Captcha/Model/Zend.php app/code/core/Mage/Captcha/etc/config.xml app/code/core/Mage/Catalog/Model/Api2/Product/Image/Rest/Admin/V1.php app/code/core/Mage/Catalog/Model/Product/Attribute/Media/Api.php app/code/core/Mage/Cms/Model/Wysiwyg/Images/Storage.php app/code/core/Mage/Core/etc/config.xml app/code/core/Mage/Core/sql/core_setup/upgrade-1.6.0.7.1.1-1.6.0.7.1.2.php app/code/core/Mage/Dataflow/Model/Convert/Container/Abstract.php app/code/core/Mage/ImportExport/Model/Import/Entity/Customer.php app/code/core/Mage/ImportExport/Model/Import/Entity/Customer/Address.php app/code/core/Mage/Payment/etc/config.xml app/code/core/Mage/Payment/etc/system.xml app/code/core/Mage/Payment/sql/payment_setup/upgrade-1.6.0.0.1.1-1.6.0.0.1.2.php app/code/core/Mage/Sendfriend/Block/Send.php app/code/core/Mage/Wishlist/controllers/IndexController.php app/code/core/Zend/Controller/Request/Http.php app/design/adminhtml/default/default/template/cms/browser/content/files.phtml app/design/frontend/base/default/layout/captcha.xml app/design/frontend/base/default/template/wishlist/sharing.phtml app/design/frontend/rwd/default/layout/page.xml app/design/frontend/rwd/default/template/sendfriend/send.phtml app/etc/modules/Mage_All.xml app/etc/modules/Mage_Captcha.xml app/locale/en_US/Mage_Wishlist.csv js/lib/jquery/jquery-1.12.0.js js/lib/jquery/jquery-1.12.0.min.js js/lib/jquery/jquery-1.12.0.min.map js/lib/jquery/jquery-1.12.1.js js/lib/jquery/jquery-1.12.1.min.js js/lib/jquery/jquery-1.12.1.min.map 有没有人遇到这些更改的任何问题?

4
SUPEE-9767,modman和符号链接
我想用SUPEE-9767给Magento商店打补丁。SUPEE-9767的文档告诉我在应用补丁之前禁用符号链接设置: 在应用补丁或升级到最新版本之前,请确保禁用Symlinks设置...如果启用该设置,它将覆盖配置文件设置,而更改该设置将需要直接修改数据库。 但是我使用modman来管理模块,并且由于某些模块正在使用模板文件,因此将根据modman的自述文件中的建议启用符号链接设置。将Symlinks设置保持为安全补丁SUPEE-9767-可能的问题之一是 安全的吗?建议(由于我是新用户,所以我无法评论帖子)? 使用modman管理Magento 1.x模块的用户应确保他们不禁用符号链接,因为这将禁用modman模块。 如果我将Symlinks设置保持启用状态,那么商店是否不会受到APPSEC-1281的影响:通过symlinks远程执行代码,此补丁旨在解决安全威胁? 在此修补程序之后,还有其他方式将modman与模板文件一起使用吗?(我知道modman的自述文件提到的“ Mage / Core / Block / Template.php的修补版本”选项,但是修补核心文件似乎很危险。)

4
如何在phtml magento 2中获取根目录路径?
$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $storeManager = $objectManager->get('\Magento\Store\Model\StoreManagerInterface'); $mediaPath = $fileSystem->getDirectoryRead(\Magento\Framework\App\Filesystem\DirectoryList::MEDIA)->getAbsolutePath(); 它返回媒体路径。如何在phtml页面中获取项目的根路径?


5
如何在.phtml文件中调用辅助方法
尝试在magento 2中进行开发。但是,我没有找到如何在template(.phtml)文件中调用Helper方法的方法。 我想要替换以下代码: $this->helper('modulename/helpername')->methodname(); 如果有人知道,请帮助我。
16 magento2  phtml  helper 

4
Magento 2在运输方式中添加下拉列表
我为一些物流公司开发运输方式。该公司有许多办事处,客户可以在此获得他的订单。我可以在API中按сity列出办公室列表,但是现在我不能更好地表示这一步了吗? 现在,我只是\Magento\Quote\Model\Quote\Address\RateResult\Method 为城镇中的每个办公室设置了新的设备,在大城市中,计数> 100,并且我认为在结帐中设置100条线不是很好。 这将是用于不同结帐设计的公共模块,因此在用户选择一种运输方式后,如何在选中的运输方式附近呈现一些下拉列表以及办公室列表,并设置价格和方法。

5
当您有相关产品并且启用了全页缓存时,产品页面上的错误
我在某些具有相关产品的产品上收到此错误: Warning: Invalid argument supplied for foreach() in vendor/magento/module-catalog/Block/Product/ProductList/Related.php on line 129 仅在打开全页缓存时才会发生此问题。不幸的是,由于速度差异巨大(禁用页面缓存快2秒钟以上),因此不能选择禁用它。 我尝试了我所知道的一切:删除了主题,自定义模块等。 环境:生产,2.1.0,清漆。 这是完整的堆栈跟踪: a:4:{i:0;s:190:"Warning: Invalid argument supplied for foreach() in vendor/magento/module-catalog/Block/Product/ProductList/Related.php on line 129";i:1;s:5441:"#0 vendor/magento/module-catalog/Block/Product/ProductList/Related.php(129): Magento\Framework\App\ErrorHandler->handler(2, 'Invalid argumen...', '/home/11396-492...', 129, Array) #1 var/generation/Magento/Catalog/Block/Product/ProductList/Related/Interceptor.php(37): Magento\Catalog\Block\Product\ProductList\Related->getIdentities() #2 vendor/magento/module-page-cache/Model/Layout/LayoutPlugin.php(71): Magento\Catalog\Block\Product\ProductList\Related\Interceptor->getIdentities() #3 vendor/magento/framework/Interception/Interceptor.php(152): Magento\PageCache\Model\Layout\LayoutPlugin->afterGetOutput(Object(Magento\Framework\View\Layout\Interceptor), ' <script>\n ...') #4 var/generation/Magento/Framework/View/Layout/Interceptor.php(494): Magento\Framework\View\Layout\Interceptor->___callPlugins('getOutput', Array, …

2
Magento 2所谓的“ mixins”是如何实现的?
Magento 2的基于RequireJS的对象系统包含一个称为“ mixins”的功能。Magento 2 mixin不是软件工程师通常认为的mixin / trait。相反,Magento 2 mixin允许您在主程序使用该对象/值之前修改RequireJS模块返回的对象/值。您可以这样配置Magento 2混合(通过requirejs-config.js文件) var config = { 'config':{ 'mixins': { //the module to modify 'Magento_Checkout/js/view/form/element/email': { //your module that will do the modification 'Pulsestorm_RequireJsRewrite/hook':true } } } }; 然后,您需要拥有hook.js(或您配置的任何RequireJS模块), define([], function(){ console.log("Hello"); return function(theObjectReturnedByTheModuleWeAreHookingInto){ console.log(theObjectReturnedByTheModuleWeAreHookingInto); console.log("Called"); return theObjectReturnedByTheModuleWeAreHookingInto; }; }); 返回一个函数。Magento将调用此函数,并传递对要修改的“模块”的引用。在我们的示例中,这将是RequireJS模块返回的对象Magento_Checkout/js/view/form/element/email。这也可能是一个函数,甚至是一个缩放器值(取决于RequireJS模块返回的值)。 该系统似乎已被调用,mixins因为如果原始RequireJS模块返回的对象支持该extend方法,则它允许您创建类似混合的行为。 define([], …


3
在视图Js或html文件中获取基本网址或动态网址
我想出了要在前端获取动态网址的方法,我可以简单地定义mage/url并将其用作url.build('<Modulename>/<controllername>/<action>/') 当我为后端尝试相同的操作时,它没有返回预期的结果。 它给出了当前的URL,并附加了我给出的路径。 谁能解释这是怎么回事。我需要在某个地方定义baseUrl吗?

7
在结帐页面Magento2中添加页眉和页脚
默认情况下,Magento 2 在CHECK OUT页面中不提供HEADER和FOOTER。 所以我检查了路径上的checkout_index_index.xml文件 app/design/frontend/package_name/theme_name/Magento_Checkout/layout/override/base 有删除页眉和页脚属性集 所以我将remove属性从remove = true取消设置为remove = false。 但是结帐页面上仍然没有显示页眉和页脚,因此有人可以告诉我如何在结帐页面上获取页眉和页脚吗?

1
Magento 2:两个网格组件数据提供者之间有什么区别?
在Magento 2.1中,总共配置和使用了25个UI组件列表/网格数据提供程序。他们的数据提供程序类和ui_component文件在下面列出 Magento\Bundle\Ui\DataProvider\Product\BundleDataProvider bundle_product_listing.xmlMagento\Catalog\Ui\DataProvider\Product\Attributes\Listing product_attributes_grid.xml Magento\Catalog\Ui\DataProvider\Product\ProductCustomOptionsDataProvider product_custom_options_listing.xml Magento\Catalog\Ui\DataProvider\Product\ProductDataProvider configurable_associated_product_listing.xml Magento\Catalog\Ui\DataProvider\Product\ProductDataProvider product_listing.xml Magento\Catalog\Ui\DataProvider\Product\Related\CrossSellDataProvider crosssell_product_listing.xml Magento\Catalog\Ui\DataProvider\Product\Related\RelatedDataProvider related_product_listing.xml Magento\Catalog\Ui\DataProvider\Product\Related\UpSellDataProvider upsell_product_listing.xml Magento\Cms\Ui\Component\DataProvider cms_block_listing.xml Magento\Cms\Ui\Component\DataProvider cms_page_listing.xml Magento\ConfigurableProduct\Ui\DataProvider\Attributes product_attributes_listing.xml Magento\Customer\Ui\Component\DataProvider customer_listing.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider customer_online_grid.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_creditmemo_grid.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_grid.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_invoice_grid.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_shipment_grid.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_view_creditmemo_grid.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_view_invoice_grid.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider sales_order_view_shipment_grid.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider search_synonyms_grid.xml BraintreeTransactionsDataProvider (virtual type) braintree_report.xml Magento\Framework\View\Element\UiComponent\DataProvider\DataProvider Magento\GroupedProduct\Ui\DataProvider\Product\GroupedProductDataProvider grouped_product_listing.xml …

5
在Magento 2中安装第三方扩展的最佳实践是什么?
在为Magento 2进行客户项目工作时-我发现了许多加载并跟踪第三方扩展的方法。 假设我们正在使用集成器安装方法(composer!),那么管理第三方扩展的最佳实践是什么? 到目前为止,我购买或下载的每个扩展都有其自己的composer.json文件-而且我知道扩展作者建议至少三种不同的方式来安装其扩展: 将这些文件复制到应用程序/代码中 将此zip复制到文件夹中,将其添加为工件存储库,并要求它 添加此在线存储库(使用/不使用身份验证)并要求它 到目前为止,我遇到过1和2,只是有点怀疑#3的存在。但是然后,注意到那些建议#1的人,我发现您可以拥有一个“路径”存储库-将扩展从app / code移到了我决定放置这些工件的同一文件夹中,并以此方式要求。 在此过程中,我的存储库配置如下所示: "repositories": { "0": { "type": "composer", "url": "https://repo.magento.com/" }, "artifacts": { "type": "artifact", "url": "artifacts" }, "third-party": { "type": "path", "url": "artifacts/*/*" }, }, 因此,我对您的问题是-最佳做法是什么?您如何管理第三方扩展? 到目前为止,我相信我的方法是最好的方法-仅因为读取了他们的composer.json并且任何依赖关系冲突(或PHP版本约束)都会变得很明显-但我认为这不够确定。

1
Magento 2 minicart,欢迎消息,其他在客户登录后禁用页面缓存的情况下不起作用
使用Magento 2.0.4缓存,更具体地说,启用页面缓存,一切正常。 如果我禁用它,请清除cookie,然后以客户身份登录,而不是minicart中的产品。 欢迎消息并不正确。我必须从产品页面将产品添加到购物车才能看到迷你车。比起结帐,我的国家/地区没有显示在地址摘要中(送货地址已添加到我的帐户中)。 我已经调试完毕,看来问题出在: module-customer/view/frontend/web/js/customer-data.js。Cookie private_content_version已设置在中module-page-cache/view/frontend/web/js/page-cache.js并在中使用customer-data.js。参见customerData::reload功能。 在禁用页面缓存的情况下,不会像该功能dataProvider::getFromServer()那样从服务器加载数据。 当禁用页面缓存时,cookie private_content_version不在其中(不在页面之外执行page-cache.js)。但是cookie section_data_ids只有'*'和'messages'=>为空(false或null)。 启用页面缓存后private_content_version,将section_data_ids具有并带有哪些键和值: *: null cart: 123 compare-products: 123 customer: 123 directory-data: 123 last-ordered-items: 123 multiplewishlist: 123 review: 123 wishlist: 123 在启用页面缓存的情况下登录后,在客户仪表板上,还有2个其他的ajax请求加载数据: http://test.localhost/customer/section/load/?sections=&update_section_id=false&_=123 http://test.localhost/customer/section/load/?sections=directory-data&update_section_id=false&_=123 这些包含具有客户特定数据和目录数据的json对象,例如所有国家和地区。通过这些呼叫,在结帐时,地址摘要将显示国家/地区名称。请参阅:module-customer/view/frontend/web/js/sections-config.js 和module-checkout/view/frontend/web/js/view/shipping-address/address-renderer/default.js,函数getCountryName。 这是Magento 2错误还是我搞砸了?谢谢

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.