Magento

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

4
วิธีเพิ่มลูกค้าโดยใช้โปรแกรมใน Magento 2
ฉันต้องการสร้างลูกค้าตามโปรแกรมใน Magento 2 ฉันไม่พบเอกสารมากมายรอบตัว ... โดยทั่วไปสิ่งที่ฉันต้องทำคือแปลรหัสต่อไปนี้เป็น "Magento 2": $websiteId = Mage::app()->getWebsite()->getId(); $store = Mage::app()->getStore(); $customer = Mage::getModel("customer/customer"); $customer ->setWebsiteId($websiteId) ->setStore($store) ->setFirstname('John') ->setLastname('Doe') ->setEmail('jd1@ex.com') ->setPassword('somepassword'); try{ $customer->save(); }

2
คัดลอกตัวเลือกที่กำหนดเองแบบไดนามิกเพื่อพูดรายการสั่งซื้อรายการ
ฉันมีผู้สังเกตการณ์ที่กำลังเพิ่มตัวเลือกแบบกำหนดเองแบบไดนามิกให้กับหน้ารายละเอียดผลิตภัณฑ์ซึ่งเรียกว่าในcatalog_controller_product_viewเหตุการณ์ สิ่งนี้ทำให้ลูกค้าสามารถเลือกจากรหัสแบบหล่นลงของรหัสสิทธิ์ใช้งานที่มีอยู่ public function addLicenseOptions(Varien_Event_Observer $observer) { $product = $observer->getEvent()->getProduct(); if ($product->isSubscriptionProduct()) { $optionModel = Mage::getModel('catalog/product_option') ->setTitle('License Code') ->setProductId($product->getId()) ->setStoreId($product->getStoreId()) ->setId('license_code') ->setType('drop_down') ->setPrice(null) ->setPriceType(null) ->setIsRequire(true); $customer = Mage::getSingleton('customer/session')->getCustomer(); if ($customer->getId()) { $linksPurchased = Mage::getResourceModel('downloadable/link_purchased_collection') ->addFieldToFilter('customer_id', $customer->getId()); if ($linksPurchased->count() > 0) { foreach ($linksPurchased as $linkPurchased) { $valueModel = Mage::getModel('catalog/product_option_value') ->setTitle($linkPurchased->getData('key_code')) …

3
ลบไฟล์ system.log หรือไม่
ฉันสงสัยว่า: ฉันสามารถลบไฟล์ system.log ในไดเรกทอรี var / log ด้วยตนเองได้หรือไม่? หากฉันทำสิ่งนี้จะมีผลเสียต่อร้านค้าบนเว็บของฉันหรือไม่ ไฟล์นี้กำลังใช้พื้นที่ดิสก์บางส่วนในขณะนี้
13 log 

1
ใบลดหนี้ - คืนค่าเริ่มต้นเป็น 0 ผลิตภัณฑ์
กรณีการใช้งานทั่วไปของฉันสำหรับใบลดหนี้คือการปรับราคา (ปรับการจัดส่งการลดความเอื้อเฟื้อและอื่น ๆ ) มันหายากที่ฉันใช้มันเพื่อผลตอบแทนโดยรวม เป็นเรื่องแปลกสำหรับฉันที่พฤติกรรมเริ่มต้นของ Magento คือ CreditMemo ส่งคืนผลิตภัณฑ์ทั้งหมดและคืนเงินค่าจัดส่งทั้งหมด แม้ว่าจะมีการส่งคืนก็ยากที่การจัดส่งจะได้รับคืน มันจะดีกว่า (และปลอดภัยกว่า) หาก CreditMemo มีค่าเริ่มต้นเป็น $ 0 (ไม่มีผลิตภัณฑ์ที่คืนเงินและไม่มีการคืนเงินสำหรับการจัดส่ง) ดังนั้นผู้ดูแลระบบจะชัดเจนเกี่ยวกับสิ่งที่จะได้รับคืน (ไม่มีค่าเริ่มต้น) ตัวอย่างเช่นมิเช่นนั้นง่ายเกินไปที่จะสร้างใบลดหนี้ที่ตั้งใจจะคืนเงินค่าจัดส่ง แต่คืนเงินสำหรับการสั่งซื้อทั้งหมด! มีการกำหนดค่าหรือการปรับแต่งใด ๆ ที่จะสนับสนุนการเริ่มต้น CreditMemo เป็น $ 0 หรือไม่
13 creditmemo 

2
ที่อยู่อีเมลไม่ถูกต้อง“ admin@eternal.florist”
สวัสดีฉันซื้อชื่อโดเมนแฟนซีใหม่นี้และตอนนี้ฉันมีปัญหา ฉันพยายามตั้งค่าให้เป็นที่อยู่อีเมลของร้านค้าใน Magento admin และได้รับข้อผิดพลาดดังกล่าว ฉันจะทำอย่างไร (ฉันยังพยายามที่จะเปลี่ยนมันในฐานข้อมูล แต่ฉันไม่พบโต๊ะที่ถือมัน)
13 email 

3
การติดตั้ง Magento 2: ติดขัดโดยไม่มีข้อผิดพลาดที่“ การติดตั้งการกำหนดค่าผู้ใช้”
ฉันได้ติดตั้ง Composer และทำตามขั้นตอนเพื่อติดตั้ง Magento2 มันจะติดอยู่ที่ 93% มันไม่ได้ให้ข้อผิดพลาดที่เหมาะสม ... กรุณาตรวจสอบภาพ: นอกจากนี้มันจะแสดงในการกำหนดค่าตามภาพด้านล่าง เราพบข้อผิดพลาดใน: "การติดตั้งการกำหนดค่าผู้ใช้" มีใครประสบปัญหาเดียวกันหรือไม่ ถ้าเป็นเช่นนั้นคุณแก้ไขปัญหานี้ได้อย่างไร

5
คีย์รีจิสทรี Mage“ _singleton / weee / observer” มีอยู่แล้ว
เมื่อฉันพยายามเพิ่มหรือแก้ไขผลิตภัณฑ์ฉันได้รับข้อผิดพลาดต่อไปนี้: Mage registry key "_singleton/weee/observer" already exists Trace: #0 app/Mage.php(222): Mage::throwException('Mage registry k...') #1 app/Mage.php(476): Mage::register('_singleton/weee...', false) #2 app/code/core/Mage/Core/Model/App.php(1316): Mage::getSingleton('weee/observer') #3 app/Mage.php(447): Mage_Core_Model_App->dispatchEvent('adminhtml_catal...', Array) #4 app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tab/Attributes.php(143): Mage::dispatchEvent('adminhtml_catal...', Array) #5 app/code/core/Mage/Adminhtml/Block/Widget/Form.php(144): Mage_Adminhtml_Block_Catalog_Product_Edit_Tab_Attributes->_prepareForm() #6 app/code/core/Mage/Core/Block/Abstract.php(862): Mage_Adminhtml_Block_Widget_Form->_beforeToHtml() #7 app/code/core/Mage/Adminhtml/Block/Catalog/Product/Edit/Tabs.php(79): Mage_Core_Block_Abstract->toHtml() #8 app/code/core/Mage/Core/Block/Abstract.php(238): Mage_Adminhtml_Block_Catalog_Product_Edit_Tabs->_prepareLayout() #9 app/code/core/Mage/Core/Model/Layout.php(456): Mage_Core_Block_Abstract->setLayout(Object(Mage_Core_Model_Layout)) #10 app/code/core/Mage/Core/Model/Layout.php(472): Mage_Core_Model_Layout->createBlock('adminhtml/catal...', 'product_tabs') #11 app/code/core/Mage/Core/Model/Layout.php(239): Mage_Core_Model_Layout->addBlock('adminhtml/catal...', …

3
วิธีแทรก <iframe> ในแผงผู้ดูแลระบบ <field>
ฉันกำลังสร้างโมดูลที่กำหนดเองซึ่งแสดงGoogle Mapsในส่วนหน้าของ Magento ในการรับแผนที่เหล่านั้นผู้ดูแลระบบจะต้องป้อนและบันทึก URL ของที่ตั้งแผนที่ในแผงการดูแลระบบ ทั้งหมดนี้ทำงานได้ดี กำลังบันทึก URL ในฐานข้อมูลและแผนที่จะแสดงในส่วนหน้าของร้านค้า แต่ตอนนี้ฉันต้องการแสดงตัวอย่างของแผนที่นี้ในแผงการดูแลระบบด้วย วิธีนี้จะช่วยให้ผู้ดูแลระบบสามารถตรวจสอบได้ง่ายว่ามีการป้อนและบันทึก URL ที่ถูกต้องหรือไม่ ผมต้องการที่จะแสดงนี้Preview Mapในใหม่&lt;field&gt;(เพียงด้านล่างฟิลด์ที่ URL ที่ควรจะเข้ามา) &lt;label&gt;และใช้แผนที่ดูตัวอย่าง การจำลองด้านล่างแสดงสิ่งที่ฉันพยายามบรรลุ system.xmlไฟล์โมดูลของฉันฉันได้เพิ่มรหัสต่อไปนี้: &lt;fields&gt; .... &lt;preview translate="label comment"&gt; &lt;label&gt;Map Preview&lt;/label&gt; &lt;frontend_type&gt;link&lt;/frontend_type&gt; &lt;frontend_model&gt;mymodule/system_config_map&lt;/frontend_model&gt; &lt;comment&gt;Preview of your map&lt;/comment&gt; &lt;sort_order&gt;20&lt;/sort_order&gt; &lt;show_in_default&gt;1&lt;/show_in_default&gt; &lt;show_in_website&gt;1&lt;/show_in_website&gt; &lt;show_in_store&gt;1&lt;/show_in_store&gt; &lt;/preview&gt; &lt;/fields&gt; และฉันMyNamespace/MyModule/Block/System/Config/Map.phpมีรหัสต่อไปนี้: class MyNamespace_MyModule_Block_System_Config_Map extends Mage_Adminhtml_Block_Abstract implements Varien_Data_Form_Element_Renderer_Interface { public function …

1
ฉันจะตั้งค่าเริ่มต้นต่อเว็บไซต์ใน config.xml ได้อย่างไร
ด้วยโมดูลที่กำหนดเองฉันชอบที่จะทำให้การตั้งค่าระบบใน config.xml (ส่วนการตั้งค่าเริ่มต้น) สิ่งนี้ทำให้ง่ายขึ้นเมื่อฉันกดรหัสจากเครื่องท้องถิ่นของฉันไปยังสภาพแวดล้อม dev / การจัดเตรียม / การแสดงสดเนื่องจากฉันไม่จำเป็นต้องเข้าสู่การตั้งค่าผู้ดูแลระบบและป้อนการตั้งค่าอีกครั้ง มีประโยชน์อื่นด้วยเช่นกันการทำสิ่งต่าง ๆ ในโปรแกรมแก้ไขข้อความทำได้เร็วกว่าและคุณสามารถมีค่าเริ่มต้นที่เหมาะสมหากมีบางอย่างใน config.xml สำหรับสิ่งนั้น ฉันต้องการทำเช่นนี้กับร้าน Magento หลายเว็บไซต์ที่มีราคาจัดส่งแตกต่างกันสำหรับเว็บไซต์ต่างๆ (และมุมมองร้านค้า) ในขณะที่ร้านค้าของฉันถูกเรียกว่า 'ยูโร', 'usd' และ 'gbp' มุมมอง 'ยูโร' ใช้ค่าเริ่มต้นของผู้ดูแลระบบโดยไม่ต้องนั่งเกินระดับเว็บไซต์ในขณะที่มุมมอง 'gbp' และ 'usd' นั้นมาจากการนั่งเกินระดับเว็บไซต์ ... &lt;default&gt; &lt;carriers&gt; &lt;my_courier&gt; &lt;stuff_goes_here_such_as_price/&gt; &lt;price&gt;15.00&lt;/price&gt; ... &lt;/my_courier&gt; &lt;/carriers&gt; &lt;/default&gt;

1
วิธีใช้กลุ่มโดยในชุดข้อมูลวีโอไอพีพร้อมแบบสอบถามแบบใช้ร่วม
ในตารางผู้ดูแลระบบของโมดูลฉันใช้รหัสนี้เพื่อรับชุดและจัดกลุ่มตามรหัสลูกค้า $collection = Mage::getModel('referafriend/statistics')-&gt;getCollection(); $collection-&gt;getSelect()-&gt;group('entity_id'); $this-&gt;setCollection($collection); entity_idแต่ที่นี่ฉันจะต้องใช้ตัวแสดงผลและฟังก์ชั่นสำหรับตัวกรองข้อมูลของลูกค้าเช่นชื่อและอีเมล์กับแต่ละ ฉันต้องการเข้าร่วมโมเดลลูกค้าด้วยตารางโมดูลของฉัน สำหรับสิ่งนี้ฉันได้เขียนรหัสนี้ $collection = Mage::getModel('customer/customer')-&gt;getCollection() -&gt;addNameToSelect(); $collection-&gt;getSelect()-&gt;join(array('refer' =&gt; 'table_name'),'refer.entity_id = e.entity_id' ); $collection-&gt;getSelect()-&gt;group('entity_id'); $collection-&gt;addAttributeToSelect('*'); แต่มันทำให้ฉันมีข้อผิดพลาดนี้ SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'entity_id' in group statement is ambiguous ความช่วยเหลือใด ๆ จะได้รับการชื่นชมอย่างมาก

3
ทำความเข้าใจกับ Magento Registry
ฉันสงสัยอยู่เสมอว่าข้อมูลรีจิสตรีทั้งหมดเก็บไว้ใน Magento ที่ไหน? ฉันรู้ว่าแม้วัตถุเดี่ยวจะถูกเก็บไว้ในรีจิสทรี และรีจิสทรีเป็นเพียงตัวแปรอาเรย์แบบคงที่ของคลาสMage ฉันมีคำถามสองสามข้อที่นี่เพื่อล้างความสับสนของฉัน: รีจิสทรีแตกต่างจากผู้ใช้อื่นหรือไม่? ฉันหมายความว่ามันถูกสร้างขึ้นบนพื้นฐานต่อผู้ใช้ (ต่อคำขอHTTP )? ตัวอย่างเช่น, Mage::register('foo', 'Hello World'); //set a value for foo Mage::registry('foo'); //will this return hello world for all HTTP users ? ข้อมูลรีจิสทรีถูกจัดเก็บในเซสชันหรือไม่ หากไม่ใช่วีโอไอพีจะระบุได้อย่างไรว่าผู้ใช้รายใดเรียกข้อมูลรีจิสทรี ฉันได้อ่านบทความบล็อกของ Alan Storm และคำตอบของเขาใน StackOverFlow เกี่ยวกับเรื่องนี้ แต่ฉันไม่สามารถฆ่าความสับสน โปรดแก้ไขฉันถ้าฉันคิดว่าพื้นฐานของฉันยุ่งเหยิง ขอบคุณ

4
วิธีจัดการกับตาราง sales_flat_quote ขนาดใหญ่ - ลบการปฏิเสธรถเข็นที่ถูกทิ้งร้าง
สถานการณ์ ในฐานข้อมูลวีโอไอพีของเราเรามีสามตารางที่เติบโตใหญ่เกินไป sales_flat_quote_shipping_rate: 3045MB sales_flat_quote_address: 1688MB sales_flat_quote: 1897MB นั่นเป็นข้อมูลมากกว่า 6GB ฉันได้พบบทความเกี่ยวกับวิธีการที่จะตัดทอนตารางเหล่านี้ บทความนี้พูดถึงตารางที่สามเท่านั้น ฉันไม่แน่ใจเกี่ยวกับการตัดทอนและฉันต้องการลบข้อมูลทั้งหมดที่เก่ากว่า 60 วัน บทความพูดถึง 17 ล้านบันทึก - เรามี 20! หากฉันถูกต้องการลบระเบียนเหล่านี้จะไม่ล็อคตารางและฉันกำลังทดสอบสิ่งนี้ในการติดตั้งทดสอบ ดูเหมือนว่าจะใช้งานได้และไม่ขัดแย้งกับไซต์มากเกินไป คำถาม ฉันต้องการทราบว่าฉันสามารถใช้แบบสอบถามเดียวกันกับอีกสองตารางได้หรือไม่ ฉันสงสัยว่าตารางเหล่านี้มีไว้เพื่ออะไร
13 mysql  log  maintenance 

2
การจัดเรียงรายการสินค้า Magento 2 [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Magento Stack Exchange ปิดให้บริการใน3 ปีที่ผ่านมา ฉันเห็นว่าใน Magento 2 มีการเปลี่ยนแปลงบางอย่างในลักษณะที่หน้าเว็บทำงานเมื่อเรียงลำดับหน้ารายการผลิตภัณฑ์หรือเมื่อมีการเปลี่ยนแปลงจำนวนผลิตภัณฑ์ที่มองเห็นได้ต่อหน้า ใน Magento 1 มีการเพิ่มพารามิเตอร์ใน url สำหรับการเรียงลำดับ: http://demo.magentocommerce.com/men/shirts.html? dir = asc &amp; order = price http://demo.magentocommerce.com/men/shirts.html ? dir = ASC และขีด จำกัด = 24 และการสั่งซื้อ = ราคา แต่ในวีโอไอพี 2 การเรียงลำดับและการ จำกัด หน้าจะเปลี่ยนผ่านคำขอ POST เมื่อฉันเป็นนักเรียน 'การพัฒนาเว็บ' ฉันได้เรียนรู้ว่าการกรองและการเรียงลำดับทั้งหมดควรทำผ่าน GET …
13 sorting  magento2 

1
ฉันจะแก้ไขข้อผิดพลาดระบุรุ่นแบ็กเอนด์ไม่ถูกต้องได้อย่างไร
เมื่อฉันลองใช้ magento ฉันเห็นข้อผิดพลาดในไฟล์บันทึกต่อไป: a: 5: {i: 0; s: 74: "ระบุรุ่นของแบ็กเอนด์ที่ไม่ถูกต้อง: eav / entity_attribute_backend_time_updated"; i: 1; s: 6088: "# 0 \ app \ code \ core \ Mage \ Eav \ Model \ Entity \ แอตทริบิวต์ \ Abstract.php (346): Mage :: exception ('Mage_Eav', 'แบ็กเอนด์ไม่ถูกต้อง ... ') คุณช่วยฉันได้ไหม เพราะฉันไม่พบวิธีแก้ปัญหา ((โปรดแก้ไขปัญหาใด ๆ ขอบคุณ …

3
เป็นไปได้ที่จะเปลี่ยนประเภทบล็อกใน XML รูปแบบ?
เป็นไปได้ไหมที่จะเปลี่ยนประเภทบล็อกใน XML เลย์เอาต์? ฉันรู้วิธีเปลี่ยนแม่แบบโดยใช้setTemplateวิธีการ แต่ฉันพยายามเปลี่ยนประเภทของบล็อก เป็นไปได้ไหม
13 layout  blocks 

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