Magento

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

4
วิธีหลีกเลี่ยงข้อผิดพลาด 404 ในการติดตั้งส่วนขยายใหม่
เป็นข้อผิดพลาดทั่วไปที่แสดงใน Magento เมื่อคุณติดตั้งส่วนขยายใหม่ที่มีการกำหนดค่าsystem.xml : เมื่อคุณไปที่System->Configuration->Extensionแท็บจะมีข้อผิดพลาด 404 ปรากฏขึ้น คุณต้องออกจากระบบและลงชื่อเข้าใช้อีกครั้งจากนั้นก็โอเค แต่มีวิธีที่จะหลีกเลี่ยงปัญหานี้หรือไม่?


2
ปล่อยให้เข้าร่วมตารางในแบบสอบถามการรวบรวม
ฉันกำลังทำสิ่งต่อไปนี้เพื่อรับคำสั่งบางส่วนจากระบบเพื่อการส่งออก: $orders = Mage::getModel('sales/order')->getCollection() ->addFieldToFilter('status', $statusToExport) ->addFieldToFilter('store_id', $this->processingStoreId) ->addFieldToFilter('updated_at', array('gteq' => date('Y-m-d H:i:s', $lastSyncTime))); ฉันต้องเพิ่มบางอย่างที่มันไม่ส่งออกหากคำสั่งซื้อentity_idอยู่ในตารางที่กำหนดเองที่ฉันมี ถ้าฉันใช้ SQL ฉันจะทำ: left join myTable as mt on main_table.entity_id = mt.entity_id where mt.entity_id is null แต่ฉันไม่แน่ใจว่าจะแก้ไขแบบสอบถามคอลเลกชันเพื่อทำสิ่งที่คล้ายกันได้อย่างไร หมายเหตุ: ฉันลองแล้ว $orders = $orders->getSelect() ->joinLeft( array("t1" => $myTable), "main_table.entity_id = t1.entity_id", array("admin_field_id" => "t1.id") ) ->where("t1.id is …

4
รับ URL ผลิตภัณฑ์จาก id อย่างมีประสิทธิภาพ
วิธีที่มีประสิทธิภาพมากที่สุดในการรับ URL ของผลิตภัณฑ์คือ ID คืออะไร ในบางแห่งในรหัสของเราเรามีสิ่งต่าง ๆ เช่นMage::getModel('catalog/product')->load($id)->getProductUrl()เพื่อให้ได้ URL ของผลิตภัณฑ์เนื่องจากจำนวนของกิจกรรมและอื่น ๆ ที่เกี่ยวข้องกับผลิตภัณฑ์ที่ดูเหมือนจะค่อนข้างสิ้นเปลืองมีวิธีที่ง่ายกว่าไหม ความสามารถในการระบุรหัสหมวดหมู่ก็ดีเช่นกัน นอกจากนี้มีวิธีที่มีประสิทธิภาพในการทำสิ่งเดียวกันสำหรับแอตทริบิวต์เดียวสำหรับผลิตภัณฑ์เช่นชื่อหรือไม่

5
ทำไมฉันไม่สามารถโหลดผลิตภัณฑ์ตาม SKU โดยใช้ loadBySku () ได้
สรุป ฉันต้องการโหลดผลิตภัณฑ์ตาม SKU มีหลายบทความโพสต์บล็อกผลการล้นสแต็คและอื่น ๆ ทั้งหมดที่ฉันอยากรู้คือ - ทำไมมันจึงยากที่จะโหลดผลิตภัณฑ์โดย SKU // This method does not work (Of all, I expect this to work) $product = Mage::getModel('catalog/product')->loadBySku($sku); // These do not work either $product = Mage::getModel('catalog/product')->loadByAttribute($sku, 'sku'); $product = Mage::getModel('catalog/product')->loadByAttribute('sku', $sku); // This does not work $product = Mage::getModel('catalog/product')->load($sku, 'sku'); แน่นอนฉันคาดหวังมากเกินไปจาก Magento …

4
ปิดการใช้งานโมดูล - การปรับปรุงประสิทธิภาพ
คำถามนี้มี 2 ส่วน: การปิดใช้งานโมดูลหลักจะปรับปรุงประสิทธิภาพโดยรวมของร้านค้าหรือไม่และหากจำเป็นต้องปิดการใช้งานในผู้ดูแลระบบ (เช่นปิดใช้งานส่วนหน้าเอาต์พุต) หรือปิดใช้งานผ่าน config.xml เพื่อให้เห็นการปรับปรุงประสิทธิภาพนี้ หากมีการปรับปรุงประสิทธิภาพที่จะได้รับซึ่งโมดูลในสต็อกการสร้าง CE 1.7.0.2 สามารถปิดใช้งานได้อย่างปลอดภัยผ่านวิธีการตอบในส่วนที่ 1

4
ส่งคืน $ นี้หลังจากผู้สังเกตการณ์
ฉันเห็นข้อมูลที่ขัดแย้งกันบนอินเทอร์เน็ตและในโมดูลของบุคคลที่สามเหมือนกัน - มันเป็นข้อกำหนดหรือวิธีปฏิบัติที่ดีที่สุดในการกลับมา$thisที่จุดสิ้นสุดของวิธีการสังเกตการณ์หรือไม่? เช่น: MyCompany_Module_Model_Observer.php public function salesOrderSaveAfter($observer){ //do stuff return $this; }

3
is_salable มาจากไหน
หมายเหตุ: หากคุณได้รับการแก้ไขผลิตภัณฑ์ด้วยรหัส PHP จากนั้นทำดัชนีอีกครั้งในผู้ดูแลระบบหลังจากบันทึกชั่วโมงการทำงานของคุณเองเพื่อพยายามหาสาเหตุที่ไม่แสดงเช่นฉันด้านล่าง ... ฉันจะวนไปวนมาเพื่อหาวิธีการis_salableตั้งค่าสำหรับผลิตภัณฑ์และลองคิดดูว่าทำไมผลิตภัณฑ์ของฉันถึงแสดงตอนนี้ มีเพียงที่เดียวในรหัสที่ฉันสามารถหาได้ $salable = $this->isAvailable(); แต่ฉันไม่สามารถหาวิธีที่จะได้รับสิ่งนี้จากเมื่อฉันติดตามisAvailableมันดูเหมือนว่าจะวนกลับไปมา .... /app/code/core/Mage/Catalog/Model/Product.php public function isSalable() { Mage::dispatchEvent('catalog_product_is_salable_before', array( 'product' => $this )); $salable = $this->isAvailable(); $object = new Varien_Object(array( 'product' => $this, 'is_salable' => $salable )); Mage::dispatchEvent('catalog_product_is_salable_after', array( 'product' => $this, 'salable' => $object )); return $object->getIsSalable(); } การติดตาม …
27 catalog  core 

4
สถานะของปัญหาการปัดเศษใน 1.7 คืออะไร?
เราใช้ Magento CE 1.7 และมีปัญหาการปัดเศษที่หลากหลาย ในการคำนวณต่างๆมีความแตกต่าง EUR 0,01 ปัญหาพื้นฐานอาจเป็นไปได้ว่าราคาบทความรวมอยู่ด้วย ภาษี. โปรแกรมเมอร์ร่วมเขียนทับMage_Core_Model_Store::roundPrice()วิธีการคำนวณด้วยความแม่นยำ 4 หลัก แต่ดูเหมือนว่าจะทำให้เกิดปัญหากับการชำระเงินด้วย PayPal มีวิธีแก้ไขปัญหาเหล่านั้นหรือไม่? แก้ไข: เราพยายามจริงแพทช์หลักอย่างเป็นทางการซึ่งโดยทั่วไปเพิ่ม 4 หลักปัดเศษ\Mage_Tax_Model_Sales_Total_Quote_Shipping::_round, \Mage_Tax_Model_Sales_Total_Quote_Subtotal::_deltaRoundและ\Mage_Tax_Model_Sales_Total_Quote_Tax::_deltaRoundซึ่งการแก้ไขคูปองปัดเศษปัญหา แต่ไม่ได้เป็นปัญหาของ PayPal


8
รถเข็นวางรายการทั้งหมด / เซสชันรถเข็นล้าง
เว็บไซต์ที่ฉันจัดการโดยฉับพลัน (อาจเกิดขึ้นเมื่อ 2 สัปดาห์ที่ผ่านมา - จากสถิติของ GA และรายงานเฉพาะตอนนี้) เริ่มทิ้งรายการรถเข็นเมื่อคุณดูรถเข็นหรือไปชำระเงิน 'mini-cart' ด้านบนจะแสดงรายการในเมนูแบบเลื่อนลงจนกว่าคุณจะเรียกดูรถเข็น / เช็คเอาต์จากนั้นคุณก็จบลงที่ตะกร้าด้วยข้อความ 'ไม่มีรายการในรถเข็น' ดูเหมือนว่าปัญหาเซสชัน มันจะไม่เกิดขึ้นเมื่อเข้าสู่ระบบ ลบตัวเลือกการตรวจสอบความถูกต้องของเซสชันทั้งหมดใน 'system-> web-> การตั้งค่าการตรวจสอบความถูกต้องของเซสชัน' และเปิดใช้งานตัวเลือกที่ระบุว่า 'Use SID on Frontend' นี่เป็นการแก้ปัญหา แต่เนื่องจากการตั้งค่าเหล่านี้ไม่ได้เปลี่ยนแปลงในช่วง 3 เดือนที่ผ่านมาฉันจึงรู้ว่ามีปัญหาพื้นฐานบางอย่าง หากเป็นเช่นนั้นจะทำให้เกิดปัญหาเกี่ยวกับปัญหา id-id? ยังไงก็ตามไซต์กำลังเปิดใช้งาน store-id ใดและปล่อยข้อมูลเซสชัน / ตะกร้าสินค้า บางทีผู้สังเกตการณ์ / เหตุการณ์ / เขียนใหม่โดยบางโมดูล ฉันไม่สามารถทำซ้ำปัญหาบน dev ท้องถิ่นหรือบนเซิร์ฟเวอร์ UAT DB บน ​​UAT นั้นมีอายุ 2 …
27 checkout  session  cart 

4
อัปเกรดสคริปต์ - สร้างแอตทริบิวต์เลือกใหม่พร้อมตัวเลือก
ฉันต้องการสร้างคุณสมบัติผลิตภัณฑ์ใหม่พร้อมตัวเลือกที่กำหนดไว้ล่วงหน้าโดยใช้สคริปต์อัปเกรด ฉันได้อัพเกรดสคริปต์ทำงานดังนั้นสิ่งเดียวที่ฉันไม่รู้ว่าต้องทำคือการเพิ่มตัวเลือกแบบหล่นลงพร้อมกับคุณลักษณะ ฉันกำลังเพิ่มคุณสมบัติของฉันภายในสคริปต์อัพเกรดโมดูลโดยใช้สิ่งต่อไปนี้: $installer->addAttribute('catalog_product', "shirt_size", array( 'type' => 'int', 'input' => 'select', 'label' => 'Shirt Size', 'sort_order' => 1000, 'required' => false, 'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE, )); ฉันจะเพิ่มตัวเลือก 3 ตัวพร้อมกันได้อย่างไร: เล็กกลางและใหญ่ ฉันไม่ต้องการใช้โมเดลแหล่งที่มาที่กำหนดเอง ฉันต้องการตัวเลือกปกติ

4
ล้างการเขียนซ้ำ URL ทั้งหมด - องค์กร (1.13)
หลังจากที่มีการนำเข้าเกิดความสับสนหลายครั้งฉันก็ถูกทิ้งให้โหลด URL ใหม่ที่ฉันต้องลบ ฉันใช้ Enterprise 1.13 เมื่อฉันมีปัญหานี้ในชุมชนฉันเพิ่งตัดทอนcore_url_rewriteและทำดัชนีใหม่ อย่างไรก็ตามในองค์กรฉันสังเกตเห็นว่ามีตารางจำนวนมากที่ควบคุมการเขียนซ้ำ enterprise_url_rewrite enterprise_url_rewrite_category_cl enterprise_url_rewrite_product_cl enterprise_url_rewrite_redirect enterprise_url_rewrite_redirect_cl enterprise_url_rewrite_redirect_rewrite ฉันปลอดภัยที่จะตัดทอนทั้งหมดของพวกเขาหรือไม่ ฉันคาดหวังอย่างเต็มที่สำหรับใครบางคนที่จะบอกฉันว่าฉันไม่ควรตัดทอนตารางเหล่านี้ดังนั้นขอโทษสำหรับความไร้เดียงสาล่วงหน้า

1
Magento 2.1: การใช้ตัวจัดการเอนทิตี
จาก 2.1 Magento ได้เปิดตัวMagento/Framework/Model/EntityManager ฉันอาจจะผิดที่นี่ แต่จากความเข้าใจของฉันมันคือการแทนที่Magento/Framework/Model/AbstractModelซึ่งมีการใช้คุณสมบัติผ่านทางมรดกและแก้ปัญหานี้ผ่านทางองค์ประกอบ (FYI: https://en.m.wikipedia.org/wiki/Composition_over_inheritance ) คุณสามารถรับตัวอย่างได้ที่นี่ในไฟล์หลัก: https://github.com/magento/magento2/blob/59671558ecdab652b40db2d1a7c63d5b1dea0a92/app/code/Magento/Cms/Model/Block.php โดยทั่วไปการดำเนินการ CRUD ทั้งหมดจะประกาศอย่างชัดเจนในชั้นเรียนและเลื่อนไปEntityManagerเรียน ก่อนหน้า 2.1 วิธีการหลักถูกเรียกผ่านการสืบทอด ดังนั้นคำถามของฉันคือ: สิ่งที่เป็นประโยชน์ของEntityManagerระบบสืบทอด 2.1 ก่อน? เป็นเพียงแค่การประกาศวิธีการ CRUD นี้ (เช่นตัวอย่างข้างต้น) พอที่จะเริ่มต้นการดำเนินการนั้นในโมดูล CRUD ที่กำหนดเองหรือจะมีมากขึ้นหรือไม่

2
Magento 2: Plugin vs Observer
ใน Magento 2 ข้อดีและข้อเสียของการใช้ปลั๊กอินกับผู้สังเกตการณ์เพื่อให้ได้อะไร ฉันเข้าใจว่าผู้สังเกตการณ์สมัครเป็นสมาชิกของเหตุการณ์ในขณะที่ปลั๊กอินสามารถกระโดดเข้ามาก่อนและ / หรือหลังจากวิธีการสาธารณะที่เรียกในคลาสวีโอไอพี แต่แน่นอนว่าพวกเขากำลังเข้าใกล้เส้นทางข้ามมากตอนนี้หรือไม่

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