Magento

คำถาม & คำตอบสำหรับผู้ใช้แพลตฟอร์ม Magento e-Commerce

3
วิธีคืนวัตถุ JSON ด้วย REST API ที่กำหนดเองใน Magento 2
ฉันกำลังเขียนการสาธิต REST API ที่กำหนดเอง ตอนนี้มันสามารถคืนค่าตัวเลขและสตริงในการสาธิตของฉันได้ แต่ฉันต้องการให้ส่งคืนออบเจ็กต์ JSON เช่น REST API อื่น ๆ ในการสาธิตของฉันฉันเรียก Magento 2 API (เช่นรับข้อมูลลูกค้า: http: //localhost/index.php/rest/V1/customers/1 ) ด้วย curl และส่งคืนสตริง JSON: "{\" id \ ": 1, \" group_id \ ": 1, \" default_billing \ ": \" 1 \ ", \" created_at \ ": \" 2016-12-13 14: 57: …
14 magento2  api  rest 

2
วิธีการเปลี่ยนรูปแบบวันที่ของตัวกรองกริดผู้ดูแลระบบ magento 2 โดยไม่ใช้คอมโพเนนต์ ui
ด้านล่างเป็นsome_grid_block.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> <referenceBlock name="adminhtml.qrcode.grid.container"> <block class="Oneteam\Qrcode\Block\Grid" name="adminhtml.qrcode.grid" as="grid"> <arguments> <argument name="id" xsi:type="string">QrcodeGrid</argument> <argument name="dataSource" xsi:type="object">Oneteam\Qrcode\Model\ResourceModel\Qrcode\Collection</argument> <argument name="default_sort" xsi:type="string">qr_id</argument> <argument name="default_dir" xsi:type="string">desc</argument> </arguments> <block class="Magento\Backend\Block\Widget\Grid\Column\Filter\Date"> <filterRange name="created_at" class="Magento\Backend\Block\Widget\Grid\Column\Filter\Date"> <argument name="data" xsi:type="array"> <item name="config" xsi:type="array"> <item name="dataScope" xsi:type="string">created_at</item> <item name="label" xsi:type="string" translate="true">Created</item> </item> </argument> <filterDate name="from"> …

2
วิธีการทำตารางผลิตภัณฑ์ใน frontend ในโมดูล magento 2 ที่กำหนดเอง
ฉันสร้างหน้าแบรนด์เพื่อแสดงรายละเอียดพร้อมกับรายการผลิตภัณฑ์ที่เกี่ยวข้อง ฉันต้องการแสดงรายการผลิตภัณฑ์ในกริดเหมือนกับผู้ดูแลระบบ เป็นไปได้ไหมที่จะแสดงตารางในส่วนหน้าเหมือนส่วนหลังหรือไม่

7
Magento 2.1.1 เข้ากันไม่ได้กับ PHP 7.1.0
ฉันเป็นเซิร์ฟเวอร์ใหม่ที่v7.1.0RC3ติดตั้งPHP ตามDevDocs Magento 2 เข้ากันได้กับ7.0.2 up to 7.1.0, except for 7.0.5ที่ทำให้PHP 7.1.0เข้ากันได้กับ M2 แต่เมื่อพยายามติดตั้ง repo ฉันได้รับข้อผิดพลาดดังต่อไปนี้: ปัญหา 1 - คำขอติดตั้งสำหรับ magento / product-community-edition 2.1.1 -> พอใจโดย magento / product-community-edition [2.1.1] - magento / product-community-edition 2.1.1 ต้องมี php ~ 5.6.0 | 7.0.2 | ~ 7.0.6 -> เวอร์ชั่น PHP ของคุณ (7.1.0RC3) ไม่ตรงตามข้อกำหนดดังกล่าว

5
เมื่อใดที่ฉันควรพิจารณา Magento2 แทน Magento1
สาธารณรัฐเช็กในชุมชนเรามีการอภิปราย ไม่ว่าจะเป็นวีโอไอพี 2.x เป็นมูลค่าที่จะเริ่มใช้หรือมันจะดีกว่าที่จะติดกับวีโอไอพีรุ่น 1.x ฉันยังไม่มั่นใจที่จะเปลี่ยนเป็น M2 จาก M1 และทิ้งทุกสิ่งที่เราเรียนรู้เกี่ยวกับ M1 - ประสบการณ์ทั้งหมดที่เรามี ทุกคนสามารถชี้แจงประเด็นสำคัญในการเริ่มใช้ Magento2 แทน Magento1 ได้อย่างไร ฉันยังไม่เข้าใจ

15
Security Patch SUPEE-10752 - ปัญหาที่เป็นไปได้หรือไม่
แพทช์รักษาความปลอดภัยใหม่ออกมาสำหรับ Magento 1 โดยระบุปัญหา 25 APPSEC https://magento.com/security/patches/supee-10752 ปัญหาทั่วไปที่คุณต้องระวังเมื่อใช้โปรแกรมแก้ไขนี้ SUPEE-10752, Magento Commerce 1.14.3.9 และ Open Source 1.9.3.9 มีการปรับปรุงความปลอดภัยหลายอย่างที่ช่วยปิดการเรียกใช้รหัสระยะไกล (RCE) ของผู้ดูแลระบบที่ผ่านการรับรองความถูกต้องการปลอมแปลงคำขอข้ามไซต์ (CSRF) และช่องโหว่อื่น ๆ ข้อมูลเกี่ยวกับการเปลี่ยนแปลงทั้งหมดในรุ่น 1.14.3.9 และ 1.9.3.9 มีอยู่ในบันทึกประจำรุ่นของ Magento Commerce และ Magento Open Source แพตช์และการอัปเกรดพร้อมใช้งานสำหรับ Magento รุ่นต่อไปนี้: Magento Commerce 1.9.0.0-1.14.3.9: SUPEE-10752 หรืออัพเกรดเป็น Magento Commerce 1.14.3.9 Magento Open Source 1.5.0.0-1.9.3.9: SUPEE-10752 หรืออัพเกรดเป็น …

3
ทำไมวิธีการป้องกันที่ไม่สามารถดักจับได้?
ฉันสงสัยว่าทำไมมันเป็นไปไม่ได้ที่จะสร้างปลั๊กอินสำหรับprotectedวิธีการ มีรหัสชิ้นนี้ในMagento\Framework\Interception\Code\Generator\Interceptor: protected function _getClassMethods() { $methods = [$this->_getDefaultConstructorDefinition()]; $reflectionClass = new \ReflectionClass($this->getSourceClassName()); $publicMethods = $reflectionClass->getMethods(\ReflectionMethod::IS_PUBLIC); foreach ($publicMethods as $method) { if ($this->isInterceptedMethod($method)) { $methods[] = $this->_getMethodInfo($method); } } return $methods; } มันจะตรวจสอบว่าวิธีการpublicก่อนที่จะอนุญาตให้มีการดัก มันสามารถเปลี่ยนแปลงได้อย่างง่ายดายโดยการสร้างpreferenceในdi.xmlโมดูลเองแน่นอนเช่นนี้ <?xml version="1.0"?> <config> <preference for="Magento\Framework\Interception\Code\Generator\Interceptor" type="MyVendor\MyModule\Model\MyInterceptorModel" /> </config> และเขียนใหม่_getClassMethodsด้วยการ\ReflectionMethod::IS_PUBLICเปลี่ยนเป็น\ReflectionMethod::IS_PUBLIC | \ReflectionMethod::IS_PROTECTEDภายในของวิธีการ แต่ฉันสงสัยว่าทำไมมันเป็นไปไม่ได้ที่จะสกัดกั้นวิธีการป้องกันในคำนิยามวิธีการเดิม? มันมีผลกระทบสำคัญกับประสิทธิภาพหรือมีเหตุผลอื่น ๆ เช่นการอนุญาตให้โมดูลของบุคคลที่สามสร้างตรรกะของวีโอไอพีด้วยเช่นกัน "ยุ่ง"?
14 magento2 

5
วิธีการเตรียมตัวสำหรับการรับรองผู้เชี่ยวชาญด้านโซลูชันวีโอไอพี [ปิด]
ปิด คำถามนี้เป็นคำถามความคิดเห็นตาม ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้สามารถตอบข้อเท็จจริงและการอ้างอิงได้โดยแก้ไขโพสต์นี้ ปิดให้บริการใน2 ปีที่ผ่านมา ใครบ้างที่นี่มีประสบการณ์กับการสอบ Magento Solution Specialist? อดีตปัจจุบันและอนาคต ทุกคนที่ฉันพูดจะบอกฉันว่าฉันจะผ่านไปอย่างแน่นอน แต่ฉันคิดว่ามันยากที่จะกระโดดเพราะมันจะยิ่งน่าอายถ้าฉันล้มเหลว! ขณะนี้ฉันกำลังรวบรวมประสบการณ์และความรู้มากมายเกี่ยวกับ Magento เพื่อเพิ่มความมั่นใจก่อนที่จะลงมือทำ หากคุณได้ทำหรือวางแผนที่จะทำฉันชอบที่จะรู้ว่าคุณเตรียมอย่างไรสิ่งที่คุณคิดว่ามีประโยชน์มีความเกี่ยวข้องกับทรัพยากรที่มีอยู่และโดยทั่วไปแล้วคุณพบข้อสอบอย่างไร

3
ปัญหาการรีเฟรชหน้าเช็คเอาต์
ก่อนอื่นฉันต้องการให้ภาพหน้าจอเพื่อทำความเข้าใจปัญหาของฉัน ตอนนี้ฉันต้องการเพิ่มรหัสที่เกี่ยวข้องที่นี่ etc / ส่วนหน้า / di.xml <?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> <type name="Magento\Checkout\Model\CompositeConfigProvider"> <arguments> <argument name="configProviders" xsi:type="array"> <item name="checkout_deliverysign_block" xsi:type="object">Kensium\DeliverySign\Model\DeliverySignConfigProvider</item> </argument> </arguments> </type> </config> DeliverySignConfigProvider <?php namespace Kensium\DeliverySign\Model; use Magento\Checkout\Model\ConfigProviderInterface; use Magento\Store\Model\ScopeInterface; class DeliverySignConfigProvider implements ConfigProviderInterface { /** * @var \Magento\Framework\App\Config\ScopeConfigInterface */ protected $scopeConfiguration; protected $checkoutSession; protected $logger; /** …

2
Magento 2 - ใช้ \ Magento \ Catalog \ Block \ Adminhtml \ Product \ Widget \ Chooser โดยมีให้เลือกหลายแบบ?
ใช้รหัสนี้ $chooser = $this->_layout->createBlock('\Magento\Catalog\Block\Adminhtml\Product\Widget\Chooser'); var_dump(get_class_methods($chooser)); $configChooser = [ 'button' => [ 'open' => __('Select Products'), 'type' => '\Magento\Catalog\Block\Adminhtml\Product\Widget\Chooser', ] ]; $chooser->setConfig($configChooser) ->setFieldsetId($fieldsetData->getId()) ->prepareElementHtml($productChooser); ฉันสามารถเลือกผลิตภัณฑ์สวย ๆ สำหรับฟิลด์ที่กำหนดเองของฉันในแบบฟอร์มที่กำหนดเองของฉัน แต่ฉันต้องการมันเพื่อให้สามารถเลือกผลิตภัณฑ์หลายอย่าง มีตัวเลือกตัวเลือกที่ฉันสามารถตั้งค่าได้หรือไม่?

4
เมื่อใดที่จะส่งเหตุการณ์ในโมดูลที่กำหนดเอง
นี่เป็นคำถามเกี่ยวกับทั้ง Magento 1 และ Magento 2 ฉันเข้าใจว่าในทางปฏิบัติผู้พัฒนาโมดูลบุคคลที่สามได้รับการสนับสนุนให้จัดส่งกิจกรรมในโมดูลที่กำหนดเองเพื่อให้ทำงานกับโมดูลอื่นได้ง่ายขึ้น ผมอยากจะรู้ว่า: นักพัฒนาควรจัดส่งกิจกรรมในโมดูลที่กำหนดเอง มีจุดแนะนำให้จัดส่งกิจกรรมใดบ้าง เช่นตัวควบคุมโมเดลบล็อกผู้ช่วยเหลือผู้สังเกตการณ์? เหตุการณ์ที่ส่งผลกระทบต่อประสิทธิภาพการทำงานอย่างไร

2
วีโอไอพี 2 ดีกว่าวีโอไอพี 1 อย่างไร
ฉันแค่อยากรู้เกี่ยวกับประสิทธิภาพของวีโอไอพี 2 และมันดีกว่าวีโอไอพีรุ่น 1.xอย่างไร เมื่อเร็ว ๆ นี้ฉันเริ่มเรียนรู้วีโอไอพี 2 และพบว่ามันเป็นทฤษฎีชุดใหม่ทั้งหมดที่ใช้สถาปัตยกรรมของเซนด์ล้วนๆ ดังนั้นฉันแค่อยากรู้ว่ามันดีกว่า Magento 1.x เวอร์ชั่นหรือไม่

2
เรียกบล็อกแบบคงที่ใน view.phtml ติดตั้งไฟล์ phtml
เรากำลังแสดงฟิลด์ข้อความในหน้ามุมมองเพื่อตรวจสอบความพร้อมใช้ของ COD view.phtml echo $this->getLayout()->createBlock('core/template')->setTemplate('checkdelivery/checkdelivery.phtml')->toHtml(); ในview.phtmlเรากำลังเรียกไฟล์ด้านล่าง แต่ฉันต้องการเรียกตัวระบุบล็อกแบบคงที่ [รหัสตัวระบุ - ตรวจสอบ] แทนไฟล์ด้านล่าง แม่แบบ / checkdelivery / checkdelivery.phtml <div class="block block-list block-check-delivery"> <div class="block-title"> <?php $blockLabel = Mage::getStoreConfig('checkdelivery/general/block_title'); ?> <strong><span><?php echo $this->__($blockLabel) ?></span></strong> </div> <div class="block-content" > <br> <input name="zipcode" size="17" type="text" id="zipcode" value="<?php echo Mage::getModel('core/cookie')->get('zip'); ?>" maxlength="10" class="input-text" placeholder="<?php echo $this->__('Enter …

2
วีโอไอพี 2: ใช้ข้อความเปรียบเทียบกับเส้นทางของคลาสโดยตรง?
ฉันอาจจะพลาดจุดหนึ่ง แต่ฉันแค่สงสัยว่าทำไมบางครั้งมีคำสั่ง "ใช้" สำหรับชั้นเรียนที่เฉพาะเจาะจงและบางครั้งเราไม่ ตัวอย่าง: app\code\Magento\Email\Model\Template.phpเรามีที่ด้านบนของไฟล์: namespace Magento\Email\Model; use Magento\Store\Model\ScopeInterface; use Magento\Store\Model\StoreManagerInterface; จากนั้นใน__constructวิธีการเรามีพารามิเตอร์ต่อไปนี้: public function __construct( \Magento\Framework\Model\Context $context, \Magento\Framework\View\DesignInterface $design, \Magento\Framework\Registry $registry, \Magento\Store\Model\App\Emulation $appEmulation, StoreManagerInterface $storeManager, \Magento\Framework\View\Asset\Repository $assetRepo, \Magento\Framework\Filesystem $filesystem, \Magento\Framework\App\Config\ScopeConfigInterface $scopeConfig, \Magento\Email\Model\Template\Config $emailConfig, \Magento\Email\Model\TemplateFactory $templateFactory, \Magento\Framework\Filter\FilterManager $filterManager, \Magento\Framework\UrlInterface $urlModel, \Magento\Email\Model\Template\FilterFactory $filterFactory, array $data = [] ) ดังนั้นเราจะเห็นได้อย่างชัดเจนว่าเมื่อเราเรียกuse Magento\Store\Model\StoreManagerInterface;ที่ด้านบนของชั้นเรียนเราสามารถทำได้StoreManagerInterface $storeManagerในพารามิเตอร์ตัวสร้าง …

6
Magento 2 reindex ส่งกลับไม่มีเอนทิตีดังกล่าว
ฉันย้ายข้อมูลแคตตาล็อกจาก Magento 1.9.2.3 ไปเป็น Magento 2.0.2 เรียบร้อยแล้ว หลังจากการโยกย้ายผม Reindex php bin/magento indexer:reindexใช้คำสั่ง ทั้งหมดถูกทำดัชนีใหม่สำเร็จยกเว้นดัชนีcatalog_category_productและcatalog_product_categoryกลับมาNo such entity.ในเชลล์และการแจ้งเตือนReindex Requiredในผู้ดูแลระบบ ฉันได้ตรวจสอบแล้วvar/log/แต่ไม่มีข้อผิดพลาด ดังนั้นผลิตภัณฑ์จะถูกเพิ่มลงในหมวดหมู่ในส่วนหลัง แต่หมวดหมู่จะแสดงว่างในส่วนหน้า สิ่งที่อาจทำให้เกิดปัญหานี้ ฉันจะดีบักได้อย่างไร

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.