คำถามติดแท็ก magento2

คำถามทั่วไปเกี่ยวกับ Magento 2 ไม่ใช่เฉพาะรุ่นรอง ใช้แท็กนี้เพื่อแยกความแตกต่างจาก Magento 1. หากคุณมีปัญหากับรุ่นที่เฉพาะเจาะจงโปรดใช้แท็ก 'Magento-2.x' ที่เหมาะสมแทน ฟังก์ชันการทำงานระหว่าง Magento 2 รุ่นรองอาจแตกต่างกัน

1
Magento 2: เรียงลำดับและ จำกัด การรวบรวมผลิตภัณฑ์
ฉันต้องการเรียงลำดับการรวบรวมผลิตภัณฑ์ตามคำสั่ง ID DESC และเพิ่มขีด จำกัด ในการรวบรวมผลิตภัณฑ์ นี่คือรหัสของฉัน: $objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $productCollection = $objectManager->create('Magento\Catalog\Model\ResourceModel\Product\CollectionFactory'); $collection = $productCollection->create() ->addAttributeToSelect('*') ->load();

1
Magento 2.1 การเพิ่มปัญหาประเภทองค์ประกอบใหม่
ฉันเพิ่มประเภทองค์ประกอบแบบฟอร์มใหม่ที่เรียกว่าCompany\Module\Data\Form\Element\PdfButtonเมื่อเป็นversion EE 2.0.7และใช้องค์ประกอบนี้ในแท็บที่กำหนดเอง (เพิ่มโดยการแทนที่Magento\Catalog\Block\Adminhtml\Product\Edit\Tabs) ของหน้าผู้ดูแลระบบแก้ไขผลิตภัณฑ์ หลังจากอัปเกรดเป็น Magento EE 2.1 แล้วแท็บที่กำหนดเองก็หายไป เพื่อให้มันปรากฏขึ้นฉันได้เพิ่มตัวปรับแต่งเพื่อสร้างแท็บใหม่ในหน้าผลิตภัณฑ์ ฉันเพิ่มแท็บใหม่โดยการคัดลอกโมดิฟายเออร์ในไฟล์ผู้ขายและฉีดไปยังโมดูลของฉัน แต่เมื่อฉันต้องการใช้องค์ประกอบที่กำหนดเองของฉัน ดังนั้นในฟิลด์ children ของ meta array ฉันเพิ่มรหัสต่อไปนี้: $children[$website['id']] = [ 'arguments' => [ 'data' => [ 'config' => [ 'dataType' => Form\Element\DataType\Number::NAME, 'componentType' => Form\Field::NAME, 'formElement' => Form\Element\Wysiwyg2::NAME, 'description' => __($website['name']), 'tooltip' => $tooltip, 'sortOrder' => $sortOrder, 'dataScope' …


2
Magento 2.2.x แคชถูกปิดใช้งานโดยอัตโนมัติ
ก่อนอื่นฉันไม่สามารถหาข้อมูลเกี่ยวกับปัญหาประเภทนี้ได้ทุกที่บนเว็บ เรามีสภาพแวดล้อมการผลิตที่มีการรวมคอมไพล์ เราดึงการเปลี่ยนแปลงของเราไปทาง git ( git pull ) เท่านั้น ปัญหาคือว่าอย่างใดในหนึ่งในขั้นตอนวีโอไอพีแคชพิการโดยอัตโนมัติ (ศูนย์ทั้งหมดเมื่อตรวจสอบแคช: สถานะ) ที่ทำให้เกิดปัญหาหากพลาดผ่านโปรแกรมเมอร์เพิ่มเติมทำให้เซิร์ฟเวอร์เกินเนื่องจากการรับส่งข้อมูลสูง 'ทุบตี' Magento โดยไม่ต้องแคช บางทีบางคนเคยเห็นปัญหานี้มาก่อนหรือไม่ เราไม่รู้ว่าเกิดขึ้นเมื่อใดหรืออย่างไร และมันจะปรากฏขึ้นแบบสุ่ม ขั้นตอนปกติเราทำ: เปิดใช้งานการบำรุงรักษา git pull ผู้แต่งติดตั้ง (ถ้าจำเป็น) โมดูลเปิดใช้งาน Vendor_ModuleName (หากจำเป็น) การตั้งค่า: อัพเกรด (ถ้าจำเป็น) การล้างสิ่งคงที่ คำสั่งการปรับใช้ การล้างแคช การล้าง opcache ปิดใช้งานการบำรุงรักษา ฉันขอขอบคุณข้อเสนอแนะที่มีค่าซึ่งสามารถช่วยแก้ปัญหาประเภทนี้ได้

3
การรวมอย่างน้อยหนึ่งครั้งถูกรีเซ็ตเนื่องจากมีการเปลี่ยนแปลงการกำหนดค่า xml
ผมได้ติดตั้ง Magento2 ในเซิร์ฟเวอร์ AWS หลังจากการปรับใช้ฉันได้รับข้อความเตือนนี้ที่ด้านบนสุดของแผงควบคุมของผู้ดูแลระบบ คำเตือน: มีการรีเซ็ตการรวมอย่างน้อยหนึ่งรายการเนื่องจากการเปลี่ยนแปลงการกำหนดค่า xml ของพวกเขา ฉันตรวจสอบใน google แต่ไม่มีใครรายงานข้อผิดพลาดนี้
15 magento2  admin 

1
ตัวเลือกผลิตภัณฑ์ Magento2 Catalog
เราพบปัญหานี้เมื่อทำงานในการเริ่มต้นMagento2.1 ในขณะที่สร้างตัวเลือกที่ปรับแต่งได้สำหรับผลิตภัณฑ์ถ้าฉันเลือกฟิลด์ดรอปดาวน์เป็นครั้งที่สองสปินเนอร์จะไม่หยุดโหลด กรุณาค้นหาภาพหน้าจอด้านล่าง: ฉันคิดว่านี่เป็นข้อผิดพลาดหลักของMagento2ทุกคนสามารถยืนยันและแนะนำวิธีแก้ไขได้หรือไม่ ขอบคุณ

1
วิธีการสร้างภาพแบ็กเอนด์วีโอไอพี 2 อีกครั้งในส่วนหน้า
ใน Magento 2 มีตัวอัปโหลดรูปภาพเดียวที่มีลักษณะดังนี้: มันอัปโหลดภาพโดยใช้ AJAX และจะกลับมา JSON ต่อเนื่องที่มีข้อมูลภาพที่อัปโหลด มีวิธีการสร้างฟังก์ชั่นนี้ในไฟล์ PHP ส่วนหน้าหรือไม่?

1
app / etc / config.php ใน VCS หรือไม่
app/etc/config.phpฉันมีคำถามที่เกี่ยวข้องกับแฟ้ม ไฟล์นี้อธิบายไว้ที่นี่และกำหนดไว้: Magento base dir/app/etc/config.php ซึ่งมีรายการของโมดูลธีมและแพ็คเกจภาษาที่ติดตั้งไว้ เหมือนapp/etc/modules/*ใน Magento 1 (โดยปกติฉันมีไฟล์เหล่านี้ใน VCS) แต่ใน Magento 2 ไม่แนะนำให้แชร์ใน VCS (Official .gitignore ) ฉันมีคำถามหรือใช้เคสเพื่อการแชร์ใน VCS แต่ฉันต้องการเข้าใจเพราะไม่แนะนำให้เพิ่มใน VCS สภาพแวดล้อมการผลิต (พร้อมระบบปรับใช้Capistrano/Deployer, etc) คุณทำการปรับใช้ใหม่ ... และคุณต้องเปิดใช้งานโมดูล / s ใหม่php bin/magento module:enable VendorName_NewModuleก่อนsetup:upgrade คุณจัดการสถานการณ์นี้ได้อย่างไร คุณทำการปรับใช้ใหม่และคุณต้องปิดการใช้งาน (สำหรับสถานการณ์ใด ๆ ) ใหม่ / s โมดูล / s php bin/magento module:disable VendorName_NewModuleก่อนsetup:upgrade …

2
วิธีการตรวจสอบการทำสำเนารหัสใน magento 2 Extension?
ฉันได้สร้างโมดูลใน Magento 2 และตอนนี้ฉันกำลังพยายามส่งมันใน Magento Marketplace ส่วนขยายของฉันได้รับการส่งต่อจากการตรวจสอบธุรกิจและการตรวจสอบด้านเทคนิค แต่ฉันกำลังประสบปัญหาเกี่ยวกับการตรวจสอบคุณภาพ ฉันได้รับจดหมายจากตลาด Magento ที่ระบุว่าฉันมีการทำสำเนารหัสในส่วนขยายของฉัน ด้านล่างเป็นตัวอย่างของจดหมาย ปัญหาคุณภาพของรหัส: CPD: ส่วนขยายนี้มีรหัสซ้ำ เมื่อฉันไปที่ผลิตภัณฑ์ของฉันในบัญชี Marketplace และตรวจสอบรายงานทางเทคนิคฉันพบด้านล่าง ตรวจพบรหัสซ้ำ ส่วนขยายนี้มีรหัสที่คัดลอกโดยตรงจากรหัสวีโอไอพี นี่เป็นการละเมิดข้อ 3.1 และ 9.1b ของข้อตกลงผู้พัฒนา Magento โดยตรง File: vendor/module/vendor-module-1.0.0.0/Block/Adminhtml/Module/Edit/Tab/Stores.php Line: 58 File: magento/module-checkout-agreements/magento-module-checkout-agreements-100.0.6.0/Block/Adminhtml/Agreement/Edit/Form.php Line: 122 File: magento/module-cms/magento-module-cms-100.0.7.0/Block/Adminhtml/Block/Edit/Form.php Line: 100 File: vendor/module/vendor-module-1.0.0.0/Block/Adminhtml/Module/Renderer/Files.php Line: 49 File: magento/framework/magento-framework-100.0.16.0/Data/Form/Element/Image.php Line: 86 File: vendor/module/vendor-module-1.0.0.0/Model/ResourceModel/AbstractCollection.php Line: …


3
magento 2 ลบหน้ารายการรถเข็นขนาดเล็กโหลดใหม่?
ฉันจะโหลดหน้าซ้ำได้อย่างไรเมื่อฉันลบรายการรถเข็นขนาดเล็ก? ฉันรู้ว่ามันเป็นMagento 2บั๊ก ในหน้ารถเข็นชำระเงินมีสินค้ามากมายในรถเข็นขนาดเล็กเช่นเดียวกับในหน้ารถเข็นชำระเงินเมื่อฉันลบ In รถเข็นขนาดเล็กเนื้อหาไม่ได้อัปเดตและฉันรู้ว่ามันเป็นเรื่องใหญ่ในการอัปเดตเนื้อหาของหน้าตะกร้าชำระเงิน ลูกค้าลบรายการออกจากรถเข็นฉันต้องโหลดหน้าซ้ำ

4
Magento 2 แนวปฏิบัติที่ดีที่สุดสำหรับสถานที่เรียนและชื่อ
ในMagento 1เราถูกใช้เพื่อวางชั้นเรียนของเราในไดเรกทอรีเหล่านี้ บล็อก ผู้ช่วย แบบ ทรัพยากร และใช้ชื่อคลาสแบบง่าย ๆ โดยไม่มีอักษรตัวใหญ่อยู่กลางชื่อ ถ้าเรามาดูบางกรณีใน Magento 2 Core ผู้ช่วย ที่ตั้ง : - \Foo\Bar\Helper ชื่อ : - *.php ตัวอย่าง : - \Magento\ImportExport\Helper\Report -\Magento\Cms\Helper\Wysiwyg\Images ผู้สังเกตการณ์ ที่ตั้ง : - \Foo\Bar\Observer ชื่อ : - *.php - *Observer.php ตัวอย่าง : - \Magento\CustomerCustomAttributes\Observer\SalesOrderAddressAfterLoad -\Magento\CustomerBalance\Observer\ProcessBeforeOrderPlaceObserver ปลั๊กอิน ที่อยู่ : - \Foo\Bar\Plugin ชื่อ : …

3
magento 2 วิธีอัปโหลดรูปภาพและวิดีโอในโมดูลที่กำหนดเอง
ฉันใช้ magento 2.1 ฉันต้องอัปโหลดรูปภาพและวิดีโอหลายรายการโดยใช้องค์ประกอบ UI เช่นmagento-admin -> ผลิตภัณฑ์ -> caralog -> ผลิตภัณฑ์ ฉันต้องทำอะไรเพื่อให้บรรลุผลนี้

2
วิธีที่ดีที่สุดในการโหลดโมเดลที่กำหนดเองใน Magento 2
เพราะมันยากสำหรับฉันที่จะหาวิธีที่ถูกต้องด้านล่างคุณจะได้พบกับแนวปฏิบัติที่ดีที่สุดที่ฉันสร้างขึ้นมา สนุกแก้ไขภาษาอังกฤษของฉันถ้าจำเป็นและบอกฉันฉันผิดถ้าฉันเป็น :) แก้ไข: ... และฉันพบว่าฉันผิดในบางแง่มุม ดังนั้นฉันจึงอัพเดทโพสต์ต้นฉบับหลังจากคำตอบของราฟาเอลช่วยให้ฉันเข้าใจมากขึ้น ขอบคุณเขา! แนวคิดที่ใช้ด้านล่าง : มันจะง่ายขึ้นสำหรับคุณที่จะเข้าใจรหัสและคำอธิบายด้านล่างหากคุณพอใจกับแนวคิดเหล่านี้: การฉีดขึ้นอยู่กับ (เป็นทุก ๆ $this->variableตัวแปรในรหัสจะถูกฉีด) สัญญาบริการและพื้นที่เก็บข้อมูล โรงงาน บริบท : เพื่อให้มีบริบทมากขึ้นลองจินตนาการว่าเรามีโมดูลที่สร้างอย่างถูกต้องด้วย: คลาสบล็อก CustomBlock ที่มีเมธอด getCustomModel($id) , เมธอดนี้ส่งคืนออบเจกต์ CustomModel โดยอิงจาก id ที่ส่งเป็น param ประเภท CustomModel สอดคล้องกับรูปแบบใน \Vendor\Module\Model\CustomModel โมเดลนี้มาพร้อมกับโมเดลทรัพยากร (ใน \Vendor\Module\Model\ResourceModel\CustomModel ) และด้วยที่เก็บ (ใน\Vendor\Module\Model\CustomModelRepository) คำถาม : แนวปฏิบัติที่ดีที่สุดในการปล่อยให้ทุกสิ่งโหลดวัตถุ CustomModel คืออะไร คุณไม่สามารถใช้load()จากวัตถุ CustomModel เนื่องจากวิธีนี้เลิกใช้แล้ว แนวปฏิบัติที่ดีบอกว่าคุณต้องใช้ …

3
Magento 2 StoreManagerInterface มีอยู่แล้วในบริบทวัตถุในการรวบรวม
ฉันได้รับข้อผิดพลาดนี้ในส่วนขยายของฉัน PackageName \ ModuleName \ Block \ Enhanced การ พึ่งพาที่ไม่ถูกต้องในคลาส PackageName \ ModuleName \ Block \ Enhanced ใน /var/www/html/app/code/PackageName/ModuleName/Block/Enhanced.php \ Magento \ Store \ Model \ StoreManagerInterface มีอยู่แล้วใน วัตถุบริบท public function __construct( \Magento\Framework\View\Element\Template\Context $context, \Magento\Catalog\Model\Session $catalogSession, \Magento\Store\Model\StoreManagerInterface $storeManager, array $data = [] ) { parent::__construct($context, $data); $this->_catalogSession = $catalogSession; $this->_storeManager …

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