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

ควรใช้สำหรับคำถามเกี่ยวกับโมดูลแค็ตตาล็อก

5
วิธีตั้งค่า ID ร้านค้าบน Mage_Catalog_Model_Resource_Product_Collection
งานนั้นไม่สำคัญ ฉันต้องการรับรายการผลิตภัณฑ์สำหรับมุมมองร้านค้าโดยเฉพาะด้วยการเปิดใช้งานแค็ตตาล็อกแบบแบน ทางออกที่ชัดเจนที่สุดคือ: $collection = Mage::getResourceModel('catalog/product_collection') ->setStore($storeId); ในความเป็นจริงsetStore()วิธีการไม่ได้สร้างความแตกต่างใด ๆ ที่นี่เพราะมันถูกเรียกหลังจาก_initSelect()วิธีการMage_Catalog_Model_Resource_Product_Collectionที่ได้รับชื่อของตารางแบนตามรหัสร้านค้า เนื่องจาก ID ร้านค้ายังไม่ได้ตั้งค่าจะใช้ ID ร้านค้าปัจจุบัน ดังนั้นวิธีแก้ปัญหาที่ชัดเจนคือการตั้งค่า ID ร้านค้าปัจจุบันก่อนรับโมเดล Mage::app()->setCurrentStore($storeId); $collection = Mage::getResourceModel('catalog/product_collection'); มันจะทำงาน. แต่ถ้าคุณต้องการรับชุดหนึ่งครั้ง หากคุณต้องการรับคอลเล็กชันในลูปหรือคุณต้องการคอลเลกชันสองหลังถึงหลังคุณจะไม่สามารถตั้งค่าร้านค้าเฉพาะสำหรับพวกเขาได้ เหตุผลคือMage_Catalog_Model_Resource_Product_Flatคลาสนั้นมี_storeIdคุณสมบัติเป็นของตัวเองและใน Constructor นั้นจะถูกตั้งค่าเป็น ID ร้านค้าปัจจุบัน นั่นเป็นเหตุผลที่มันจะถูกตั้งค่าเป็นครั้งแรก ด้วยเหตุผลบางอย่าง (สวรรค์รู้ว่าฉันหวังว่าจะมีหนึ่ง) ในMage_Eav_Model_Entity_Collection_Abstract::_initแต่ละโมดูลทรัพยากรถูกเรียกเป็นซิงเกิล ดังนั้นไม่มี Constructor สำหรับการโทรครั้งที่สอง ทั้งหมดนี้ดูผิดไปมากจนฉันค่อนข้างมั่นใจว่าฉันผิดและไม่ใช่ Magento bug ตัวอื่น (หรือสองตัว) หวังว่าใครบางคนสามารถหลั่งน้ำตาแสงบนมัน

8
คำถามที่คาดหวังในการสัมภาษณ์ผู้พัฒนาตำแหน่ง Magento Junior
ประการแรกฉันอยากจะบอกว่าฉันหวังว่าฉันจะไม่โพสต์ผิดที่กับคำถามนี้และถ้าฉันโปรดแนะนำฉันที่ (ถ้าที่ใดก็ได้ในโลก stackexchange มีความเหมาะสม) ฉันควรโพสต์มัน ฉันมีบทสัมภาษณ์สองสามข้อที่กำลังจะเกิดขึ้นสำหรับตำแหน่งนักพัฒนาระดับต้นของ Magento ฉันมีประสบการณ์ในการพัฒนา Magento แต่ฉันไม่เคยสัมภาษณ์งานเหล่านี้ดังนั้นฉันจึงไม่แน่ใจว่าจะเกิดอะไรขึ้น ฉันขอขอบคุณความคิดเห็นและคำตอบทั้งหมดและฉันคิดว่าโพสต์นี้อาจเป็นประโยชน์กับผู้พัฒนารุ่นเยาว์รายอื่น ๆ ที่พยายามเจาะเข้าสู่วีโอไอพี
33 product  cart  catalog 

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 …

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 

3
ทำไมและเมื่อต้องใช้“ แค็ตตาล็อกแบน”?
ในขณะที่ทำการค้นคว้าเล็กน้อยสำหรับปัญหาเรื่องความเร็วของเว็บไซต์ magento ฉันมีลิงค์บางส่วนที่ผู้คนบอกว่าเปิดใช้งาน"Catalog Catalog"เพื่อเพิ่มประสิทธิภาพและความเร็ว ปัญหาคือว่าทำไมมันไม่เปิดใช้งานโดยค่าเริ่มต้นคือความเร็วเป็นปัญหา การเปิดใช้งาน "แค็ตตาล็อกแบบแบน" จะมีผลข้างเคียงหรือไม่ เว็บไซต์คุณภาพเยี่ยมของฉันมีผลิตภัณฑ์ 100 รายการและผลิตภัณฑ์ที่รวม 500 รายการและความเร็วค่อนข้างเป็นปัญหาเนื่องจากฉันโหลด 36 ผลิตภัณฑ์ในครั้งเดียว การเปิดใช้งาน "แค็ตตาล็อกแบบแบน" จะแก้ไขปัญหาของฉันหรือไม่

4
ฉันจะแก้ไข“ รายการ (Mage_Catalog_Model_Product) ด้วยรหัสเดียวกัน” xxx“ มีอยู่แล้ว” ได้อย่างไร
ฉันได้รับข้อผิดพลาดนี้เมื่อพยายามกรองชุดผลิตภัณฑ์ Item (Mage_Catalog_Model_Product) with the same id "6058" already exist และต้องการถามสิ่งที่อาจทำให้เกิดข้อผิดพลาดเนื่องจากมีผลิตภัณฑ์ (มองเห็นได้) เพียงผลิตภัณฑ์เดียวที่มี ID เดียวกันภายใน Magento มีตารางที่ต้องล้างค่าเพื่อลบรายการที่ซ้ำกันนี้หรือไม่?

2
เมื่อใดที่ฉันควรใช้ตัวเลือกประเภทโต๊ะแบน
ตามคำถามก่อนหน้านี้ฉันต้องการทราบว่า: เมื่อใดที่ฉันควรใช้ตัวเลือกประเภทโต๊ะแบน ในขณะที่ googling ฉันพบคำแนะนำให้เปิดใช้งาน " เมื่อคุณมีหมวดหมู่มาก " แต่อะไรกันนะ ? ฉันสามารถเข้าใจได้ง่ายว่าการเปิดใช้งานโต๊ะแบนสำหรับผลิตภัณฑ์เป็นการตัดสินใจที่ดีในแง่ของประสิทธิภาพ แต่มันสำคัญมากสำหรับแคตตาล็อกหรือไม่ และสิ่งที่เกี่ยวข้องสรุปจากนี้ ฉันเพิ่งเรียนรู้ว่าการเปิดใช้งานตารางหมวดหมู่แบบแฟลตทำให้ไม่สามารถบันทึกตำแหน่งผลิตภัณฑ์หมวดหมู่ได้ อย่างน้อยก็ไม่ง่ายเหมือนไม่มีตัวเลือกแบบแบน (ขอบคุณสำหรับMariusสำหรับความช่วยเหลือของคุณ) มีสิ่งที่กล่าวถึงอื่น ๆ อีกไหม? ขอบคุณล่วงหน้า :)

7
ข้อผิดพลาดร้ายแรงในหน้าผู้ดูแลระบบ
ฉันได้ติดตั้งวีโอไอพี 1.7 และมันใช้ได้ดีจนถึงตอนนี้ ฉันนำเข้าผลิตภัณฑ์ทุกวัน หากมีผู้ผลิตรายใหม่ฉันจะเพิ่มลงในแอตทริบิวต์ผู้ผลิตแบบหล่นลง วันนี้ฉันได้เพิ่มตัวเลือกผู้ผลิตใหม่ในคุณลักษณะแบ็คเอนด์และไปนำเข้าผลิตภัณฑ์มันประสบความสำเร็จในการนำเข้าผลิตภัณฑ์ แต่หลังจากนั้นฉันพยายามเปิดหน้าใด ๆ ในเว็บไซต์ผู้ดูแลระบบของ Magento มันจบลงด้วยข้อความแสดงข้อผิดพลาดด้านล่าง ข้อผิดพลาดร้ายแรง: ไม่สามารถแทนที่วิธีสุดท้าย Mage_Core_Model_Abstract :: clearInstance () ใน /var/www/html/app/code/core/Mage/Catalog/Model/Category.php บรรทัด 36 บรรทัด36เริ่มต้นเป็นลอน{สำหรับคลาสนี้ class Mage_Catalog_Model_Category extends Mage_Catalog_Model_Abstract { <-- this is line 36 และผมได้ตรวจสอบแต่ไม่มีวิธีที่กำหนดไว้กับชื่อMage_Catalog_Model_Category clearInstanceมันน่ารำคาญจริงๆ FYI: ฉันไม่ได้สัมผัสตัวอักษรรหัสเดียวฉันเพิ่งใช้ไซต์ ADMIN เพื่อนำเข้าผลิตภัณฑ์และเพิ่มคุณสมบัติที่จำเป็นบางอย่าง

3
การอัพเดทกฎของแคตตาล็อกทุกวันไม่ทำงาน
ฉันประสบกับปัญหาว่าแคตตาล็อกกฎของวีโอไอพีอัพเดททุกวันไม่ทำงาน ซึ่งหมายความว่าไม่มีการเปลี่ยนแปลงราคาผลิตภัณฑ์เมื่อถึงวันหมดอายุของกฎของแค็ตตาล็อกดังนั้นฉันต้องกดปุ่มใช้กฎกดในผู้ดูแลระบบ Cron ถูกกำหนดค่าและทำงาน ดูเหมือนว่า catalogrule / ผู้สังเกตการณ์ :: dailyCatalogUpdate วิธีควรตรวจสอบและใช้กฎโดยอัตโนมัติทุกวัน แต่มันไม่ (ฉันพยายามเปิดมันด้วยตนเอง) นี่คือรหัสหลักของวีโอไอพี: <!--file: app/code/core/Mage/CatalogRule/etc/config.xml--> <crontab> <jobs> <catalogrule_apply_all> <schedule> <cron_expr>*/1 * * * *</cron_expr> </schedule> <run> <model>catalogrule/observer::dailyCatalogUpdate</model> </run> </catalogrule_apply_all> </jobs> ... </crontab> สังเกตการณ์: /*file app/code/core/Mage/CatalogRule/Model/Observer.php*/ public function dailyCatalogUpdate($observer) { Mage::getResourceSingleton('catalogrule/rule')->applyAllRulesForDateRange(); return $this; } ฉันประสบความสำเร็จในการปรับเปลี่ยนวิธีสังเกตการณ์ดังนี้ /*file app/code/core/Mage/CatalogRule/Model/Observer.php*/ public function dailyCatalogUpdate($observer) …
15 rules  catalog  cron 

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); ฉันสามารถเลือกผลิตภัณฑ์สวย ๆ สำหรับฟิลด์ที่กำหนดเองของฉันในแบบฟอร์มที่กำหนดเองของฉัน แต่ฉันต้องการมันเพื่อให้สามารถเลือกผลิตภัณฑ์หลายอย่าง มีตัวเลือกตัวเลือกที่ฉันสามารถตั้งค่าได้หรือไม่?

2
ย้ายออกจากสต็อกผลิตภัณฑ์ไปยังจุดสิ้นสุดของรายการผลิตภัณฑ์แคตตาล็อก [ปิด]
ปิด. คำถามนี้เป็นคำถามปิดหัวข้อ ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นไปตามหัวข้อสำหรับ Magento Stack Exchange ปิดให้บริการใน4 ปีที่แล้ว ฉันต้องผลักสินค้าออกจากรายการสินค้าจนหมดรายการ โปรดแนะนำฉันเกี่ยวกับวิธีการแก้ปัญหานี้หรือไฟล์ที่จะขุด จนถึงตอนนี้ฉันได้พบToolbar.phpและทำงานรอบ ๆ มัน

5
404 ในการสลับร้านค้าด้วย Product Store ดูคีย์ URL ที่กำหนดขอบเขต
ตามค่าเริ่มต้นURL Keyในหน้าผลิตภัณฑ์จะกำหนดขอบเขตทั่วโลก แก้ไข: ตามที่ FlorinelChis แนะนำขอบเขตสามารถเปลี่ยนแปลงได้ในการจัดการคุณสมบัติ อย่างไรก็ตามสิ่งนี้จะหยุดพฤติกรรมการสลับมุมมองร้านค้า สิ่งนี้ได้รับการทดสอบใน 1.7.0.2 ด้วยข้อมูลตัวอย่างและเปิดใช้งาน "เพิ่มรหัสร้านค้าไปยัง URL" : แก้ไขผลิตภัณฑ์และตั้ง url อื่นสำหรับ storeview เฉพาะ (ภาษาฝรั่งเศส) Re-ดัชนี เปิดหน้าผลิตภัณฑ์บนเว็บไซต์ในมุมมองภาษาอังกฤษของร้านค้า เปลี่ยนเป็นภาษาฝรั่งเศส: คุณจะมี URL ของหน้าต่อไป /French/ เปลี่ยนกลับเป็นภาษาอังกฤษ -> ข้อผิดพลาดหน้า 404 (URL พลาดรหัสร้านค้า /default/ วิธีการทำให้ทำงานอย่างถูกต้องด้วยการสลับมุมมองร้านค้า / ภาษา? รายละเอียด: URL สำหรับภาษาอังกฤษ: /default/sony-vaio-vgn-txn27n-b-11-1-notebook-pc.html URL สำหรับภาษาฝรั่งเศส: /french/sony-vaio-vgn-txn27n-b-11-1-notebook-pc-french.html ถ้าฉันอยู่ในเว็บไซต์ภาษาอังกฤษในหน้านี้ -> /default/sony-vaio-vgn-txn27n-b-11-1-notebook-pc.html จากนั้นฉันเปลี่ยนเป็นภาษาฝรั่งเศส: ฉันได้รับ URL นี้ …

3
ค้นหาหมวดหมู่ที่ผลิตภัณฑ์เป็นของ
ฉันเปิดผลิตภัณฑ์ในแบ็กเอนด์ แต่เมื่อฉันสลับไปที่แท็บหมวดหมู่ทรีหมวดหมู่จะยุบทั้งหมด ฉันจะต้องขยายหมวดหมู่ทั้งหมดเพื่อดูว่ามีผลิตภัณฑ์ใดบ้าง ฉันจะดู (ในส่วนหลัง) ของผลิตภัณฑ์ประเภทใดได้อย่างรวดเร็ว

2
จะรับราคาสินค้าในทุกสกุลเงินได้อย่างไร
ฉันมีการตั้งค่าที่มีสองมุมมองร้านค้า มุมมองร้านค้าครั้งแรกมีฐานและสกุลเงินเดียวกำหนดเป็น USD อันที่สองมี 2 สกุลเงินที่อนุญาต - USD และ EUR EUR เป็นค่าเริ่มต้นที่แสดงหนึ่ง USD ถูกตั้งค่าเป็นฐานหนึ่ง ราคาของผลิตภัณฑ์ทั้งหมดมีการกำหนดเป็น USD เท่านั้นและอัตราแลกเปลี่ยนสำหรับ EUR ถูกกำหนดไว้ที่ 0.75 ราคาของผลิตภัณฑ์สมมติว่า $ 14 และรหัสของฉันไปที่: // Store ID 2 - default currency EUR, base currency USD // $product is instance of Magento\Catalog\Model\Product $priceInfo = $product->getPriceInfo(); $price = $priceInfo->getPrice('regular_price')->getValue(); รหัสนี้จะดึงราคาที่ถูกต้อง (10.50) เป็น …

3
รายการผลิตภัณฑ์ Magento2 - แสดงตัวเลือกผลิตภัณฑ์
ฉันกำลังทำงานกับชุด Magento 2 ใหม่ในขณะนี้ สำหรับชุดรูปแบบนี้ฉันต้องการแสดงตัวเลือกผลิตภัณฑ์ทั้งหมด (ตัวเลือกที่กำหนดเองและตัวเลือกผลิตภัณฑ์ที่กำหนดรูปแบบได้) ในรายการผลิตภัณฑ์ วิธีนี้ผู้ใช้สามารถเพิ่มผลิตภัณฑ์ลงในรถเข็นได้อย่างรวดเร็ว ฉันลองเพิ่มproduct.infoบล็อกเข้าไปcatalog_category_view.xmlและตั้งค่าผลิตภัณฑ์สำหรับบล็อกนั้น ตัวเลือกจะปรากฏขึ้นสำหรับทุกผลิตภัณฑ์ปัญหาคือตัวเลือกที่แสดงนั้นมาจากผลิตภัณฑ์แรกเท่านั้น ดังนั้นผลิตภัณฑ์อื่น ๆ ทั้งหมดจึงมีตัวเลือกนี้ --- ปรับปรุง --- ฉันจัดการเพื่อแสดงตัวเลือกผลิตภัณฑ์ แต่ราคาไม่ได้รับการปรับปรุง ใครบางคนชี้ให้ฉันในทิศทางที่ถูกต้อง? <form id='product_addtocart_form_<?php echo $product->getId(); ?>' class="c-product__details__add-to-cart" data-role="tocart-form" action="<?php echo $postParams[ 'action' ]; ?>" method="post"> <input type="hidden" name="product" value="<?php echo $postParams[ 'data' ][ 'product' ]; ?>"> <input type="hidden" name="<?php echo Action::PARAM_NAME_URL_ENCODED; ?>" …

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