คำถามติดแท็ก magento-1

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

5
มาตรฐานการเข้ารหัสวีโอไอพี
ฉันเพิ่งเริ่มทำงานอย่างกว้างขวางด้วยMagentoและดมกลิ่นรหัสและฉันอยากจะรู้ว่ามาตรฐานที่ฉันควรปฏิบัติตาม ฉันลองใช้มาตรฐานการเข้ารหัสของ Zendแต่ฉันไม่ต้องการใช้ขีด จำกัด 80 บรรทัดและไม่ได้ใช้ในแกนเช่นกัน หลังจากนั้นฉันลองใช้มาตรฐาน CS2แต่ก็ไม่ได้ผลเพราะ_ฟังก์ชั่นต่าง ๆ และชื่อคลาสที่มี_ในนั้นและไม่มีเนมสเปซ ดังนั้นจะมีมาตรฐานอื่นที่รหัสหลักตรงตาม 100% ด้วยหรือไม่ ถ้าไม่มีวีโอไอพีไม่ควรมีมาตรฐานการเข้ารหัสของตัวเอง? มันมีไซต์ stackexchange ของตัวเองมาตรฐานการเข้ารหัสที่กำหนดไว้อย่างดีบางอย่างอาจถูกนำไปใช้โดยนักพัฒนาส่วนขยาย

9
Security Patch SUPEE-10415 - ปัญหาที่เป็นไปได้หรือไม่
นิววีโอไอพี 1 แพทช์ได้รับการเผยแพร่สุภี-10415 โปรแกรมปรับปรุงนี้ช่วยป้องกันปัญหาด้านความปลอดภัยหลายประเภท หน้าข้อมูล: https://magento.com/security/patches/supee-10415 หน้าดาวน์โหลด: https://magento.com/tech-resources/download ปัญหาที่เป็นไปได้ที่ต้องระวังคืออะไร นอกจากนี้โปรดแบ่งปันข้อผิดพลาดและปัญหาที่คุณพบหลังจากติดตั้งแพตช์ ปัญหาเกี่ยวกับการใช้สุภี-10415 ในวานิลลา1.9.1.1การแสดงไม่สามารถนำมาใช้เนื่องจากข้อผิดพลาดก้อนใหญ่ที่Image.php แก้ไข: ณ วันที่ 7 ธันวาคม 2017 แก้ไขมีให้ใน SUPEE-10497 ต้องมีการติดตั้ง8788 เวอร์ชัน 2มิฉะนั้นจะเห็นข้อผิดพลาด "ชนิดข้อมูลที่ไม่สนับสนุน" ข้อมูลเพิ่มเติม. ข้อผิดพลาด"404: ไม่พบหน้าเว็บ"จากข้อผิดพลาด / ไดเรกทอรีหลังจากอัปเกรดเป็น SUPEE-10415 ปัญหานี้เกิดขึ้นเฉพาะในการติดตั้ง Magento ที่เรียกใช้ส่วนขยายของบุคคลที่สามที่แน่นอน วิธีแก้ปัญหา:ยืนยันว่าไม่มีคำเตือน PHP ที่สร้างขึ้นโดยส่วนขยายหรือการปรับแต่งใด ๆ

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

6
การดีบักการโหลด XML โครงร่าง
TL: DR:มีวิธีที่ฉันสามารถดีบักการโหลดเค้าโครงหรือไม่ เพราะฉันเชื่อว่าเลย์เอาต์ของโมดูลหนึ่งขัดแย้งกับโมดูลอื่น ที่เกี่ยวข้องกับคำถามก่อนหน้านี้ที่ฉันทำ: วิธีการทำให้รูปแบบโมดูลที่จะแสดงในทุกรูปแบบ ฉันโหลดโมดูลของฉันสำเร็จแล้วในสภาพแวดล้อมการทดสอบในพื้นที่ (หรือที่เรียกว่า PC สำหรับการพัฒนาของฉัน) ทดสอบการสลับระหว่าง 3 ธีมที่แตกต่างกันและมันก็โอเค จากนั้นฉันอัปเดตโมดูลในการทดสอบหรือสภาพแวดล้อม "ก่อนการผลิต" ที่เรามีซึ่งมีโมดูลที่แตกต่างกันจำนวนมากบางส่วนเป็นกรรมสิทธิ์อื่น ๆ ที่ทำโดยเรา ในสภาพแวดล้อมนี้โมดูลจะไม่แสดงสิ่งที่จำเป็นในหน้าแรกของผลิตภัณฑ์ หลังจากการทดสอบบางอย่างในที่สุดฉันก็มาถึงข้อสรุปว่าปัญหาควรจะอยู่ในกระบวนการโหลดรูปแบบ ดังนั้นมีวิธีที่ฉันสามารถดีบักการโหลดโครงร่างโมดูลต่าง ๆ แทนที่หรือเพิ่มบล็อกของตัวเองได้อย่างไร ประเด็นของฉันคือฉันเชื่อว่ามีอย่างน้อยหนึ่งโมดูลที่ควรขัดแย้งกับของฉัน และในขณะที่เรามีโมดูลจำนวนมากฉันกำลังมองหาวิธีการที่แตกต่างกันในการปิดใช้งานโมดูลทีละคนและดูว่าเป็นปัญหาที่มีปัญหา ไฟล์ config.xml ของฉันคือ: <?xml version="1.0" encoding="UTF-8"?> <config> <modules> <Dts_Banners> <version>0.1.0</version> </Dts_Banners> </modules> <global> <blocks> <banners> <class>Dts_Banners_Block</class> </banners> </blocks> .... <events> <controller_action_layout_load_before> <observers> <attributesethandle> <class>Dts_Banners_Model_Observer</class> <method>addAttributeSetHandle</method> </attributesethandle> …

2
ฉันจะแก้ไข URL ฐานของฉันเพื่อให้สามารถเข้าถึงเว็บไซต์ Magento ได้อย่างไร
ฉันเปลี่ยน URL พื้นฐานและตอนนี้เว็บไซต์ของฉันไม่สามารถเข้าถึงได้ ฉันย้ายทุกอย่างไปยังเซิร์ฟเวอร์ใหม่ไม่ได้เปลี่ยน base_url และเว็บไซต์ของฉันไม่สามารถเข้าถึงได้ ฉันจะเปลี่ยนหรือคืนค่า base_url การตั้งค่า BaseURL ของฉันได้อย่างไร

5
Symlinks บนแม่แบบมีปัญหาด้านความปลอดภัยหรือไม่และถ้าใช่ทำไม
Magento แนะนำให้ไม่ใช้เทมเพลตผ่าน symlinks: Advanced > Developer > Template Settings > Allow Symlinks คำเตือน! ไม่แนะนำให้เปิดใช้งานคุณสมบัตินี้ในสภาพแวดล้อมการใช้งานจริงเนื่องจากอาจมีความเสี่ยงด้านความปลอดภัย จนถึงวันนี้ฉันไม่เห็นความเสี่ยงใด ๆ ที่นี่ ความเสี่ยงคืออะไร?

7
ย้าย Javascript ทั้งหมดรวมถึงก่อนหน้า </body>
ไม่มีใครรู้วิธีการมีแท็กสคริปต์ JS ของ Magento ทั้งหมดเช่น&lt;script type="text/javascript" src="http://sitename.com/js/prototype/prototype.js"&gt;&lt;/script&gt;แสดงออกก่อนปิด&lt;/body&gt;? ฉันเคยลองครั้งนี้มาก่อน แต่ฉันได้รับข้อผิดพลาดซึ่งฉันคิดว่าเป็นไปตามแนวของวิธีการ addJS ที่ไม่สามารถใช้งานได้เมื่อฉันใช้มันอาจเป็นส่วนท้ายในการอ้างอิง

5
วิธีตั้งค่า ID ร้านค้าบน Mage_Catalog_Model_Resource_Product_Collection
งานนั้นไม่สำคัญ ฉันต้องการรับรายการผลิตภัณฑ์สำหรับมุมมองร้านค้าโดยเฉพาะด้วยการเปิดใช้งานแค็ตตาล็อกแบบแบน ทางออกที่ชัดเจนที่สุดคือ: $collection = Mage::getResourceModel('catalog/product_collection') -&gt;setStore($storeId); ในความเป็นจริงsetStore()วิธีการไม่ได้สร้างความแตกต่างใด ๆ ที่นี่เพราะมันถูกเรียกหลังจาก_initSelect()วิธีการMage_Catalog_Model_Resource_Product_Collectionที่ได้รับชื่อของตารางแบนตามรหัสร้านค้า เนื่องจาก ID ร้านค้ายังไม่ได้ตั้งค่าจะใช้ ID ร้านค้าปัจจุบัน ดังนั้นวิธีแก้ปัญหาที่ชัดเจนคือการตั้งค่า ID ร้านค้าปัจจุบันก่อนรับโมเดล Mage::app()-&gt;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 ตัวอื่น (หรือสองตัว) หวังว่าใครบางคนสามารถหลั่งน้ำตาแสงบนมัน

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

3
ฉันจะปิดการใช้งานแคชสำหรับส่วนหรือบล็อกเฉพาะได้อย่างไร
ฉันได้พัฒนาฟังก์ชั่นรถเข็นบาร์ด้านบนสำหรับหน้าร้านที่แสดงผลิตภัณฑ์สามรายการล่าสุดที่เพิ่มลงในรถเข็นซึ่งใช้งานได้ดีเมื่อปิดการใช้งานแคช แต่เมื่อฉันเปิดใช้งานแคชมันจะแสดงผลรวมย่อยแปลก ๆ นี่ทำให้ฉันเศร้า: '( ฉันรู้ว่าสิ่งนี้เกิดขึ้นเพราะแคช มีอะไรที่ฉันสามารถปิดการใช้งานแคชสำหรับส่วนนี้เท่านั้น? ฉันได้ลองปิดการใช้งานแคชบล็อก html และตรวจสอบว่าตอนนี้ใช้งานได้ดี แต่ฉันพบว่าหมวดหมู่แฟลตกำลังมีปัญหาที่ไม่ระบุเมื่อบล็อก HTML ถูกปิดใช้งาน

5
การเรียนรู้การพัฒนาปลั๊กอิน Magento
ฉันเป็นนักพัฒนา PHP มานานกว่า 13 ปีมีความรู้กว้างขวางเกี่ยวกับ PHP ตราบเท่าที่โครงการยอดนิยมอื่น ๆ เช่น WordPress ฉันไม่มีประสบการณ์กับ Magento ตอนนี้ฉันมีงานเต็มเวลาทำงานให้กับ บริษัท ที่ใช้ Magento งานพัฒนาของฉันทั้งหมดจะอยู่ที่ Magento ในตอนนี้ ความคิดเริ่มแรกของฉันหลังจากดู Magento เป็นครั้งแรกว้าวฉันได้อะไรลงไปบ้าง? แต่แล้วนักพัฒนาที่มีประสบการณ์ในตัวฉันก็ออกมาและจำได้ว่ามันเป็นแค่ PHP ดังนั้นฉันจึงมีคำถามพื้นฐานเกี่ยวกับคุณภาพเยี่ยมฉันขอขอบคุณคำตอบจากนักพัฒนา Magento ที่มีประสบการณ์มากกว่า ... สถานที่ที่มีประโยชน์ที่สุดในการเรียนรู้เกี่ยวกับการพัฒนาวีโอไอพีข้างเว็บไซต์นี้คืออะไร ส่วนขยาย / ปลั๊กอินทำให้ฉันสับสนมากจนถึงตอนนี้ แพลตฟอร์มอื่น ๆ เช่น WordPress ช่วยให้คุณวางปลั๊กอินลงในโฟลเดอร์ของตัวเองและไฟล์ทั้งหมดจะอยู่ภายใต้โฟลเดอร์นั้น จากสิ่งที่ฉันได้เห็นจนถึงตอนนี้ปลั๊กอินอาจกระจัดกระจายไปทั่วหลายโฟลเดอร์ใน Magento นี่ถูกต้องหรือไม่ ฉันได้เรียนรู้เกี่ยวกับวิธีการใช้งานฟังก์ชั่นการทำงานของ Core มากขึ้น ดังนั้นหากไฟล์ในแกนตั้งอยู่ที่นี่/app/code/core/Mage/SitemapModel/Resource/Catalogฉันสามารถขับได้โดยสร้างไฟล์ในตำแหน่งนี้/app/code/local/Mage/SitemapModel/Resource/Catalogดังนั้นมันจะทำงานอย่างไรกับส่วนขยาย / ปลั๊กอิน? หากฉันสร้างปลั๊กอินที่จำเป็นต้องมีฟังก์ชั่นการทำงานหลักมากกว่านี้ฉันต้องมีไฟล์ของฉันอยู่ตรงนั้นเพื่อให้ส่วนขยายนั้นใช้งานได้หรือไม่ ข้อมูลอื่นใดที่คุณต้องการให้คุณรู้ตั้งแต่ตัววีโอไอพี ขอบคุณสำหรับความเข้าใจใด ๆ …

5
storeviews หรือเว็บไซต์ต่าง ๆ ในโฟลเดอร์ย่อย
ลูกค้าต้องการให้ร้านค้าหลายร้านของเขาตั้งค่าเช่นนี้: http://www.domain1.org/de/ -&gt; เว็บไซต์ 1, มุมมองร้านค้า 1 http://www.domain1.org/en/ -&gt; เว็บไซต์ 1, มุมมองร้านค้า 2 http://www.domain1.ch/de/ -&gt; เว็บไซต์ 2, มุมมองร้านค้า 3 http://www.domain1.ch/fr/ -&gt; เว็บไซต์ 2, มุมมองร้านค้า 4 http://www.domain1.ch/it/ -&gt; เว็บไซต์ 2, มุมมองร้านค้า 5 ... นี่เป็นตัวอย่าง แต่อาจมีโฟลเดอร์ย่อยที่แตกต่างกันมากมาย วิธีที่ดีที่สุดในการจัดการโฟลเดอร์ย่อยต่างๆสำหรับมุมมอง / เว็บไซต์ของร้านค้าที่ต่างกันคืออะไร ฉันรู้ว่าหนึ่งในวิธีการแก้ปัญหาคือการสร้างโฟลเดอร์ย่อยที่เรียกว่าde, enฯลฯ และคัดลอก index.php และ .htaccess ลงในโฟลเดอร์ย่อยที่สอดคล้องกัน อาจมีการแก้ไขปัญหาบางอย่าง (symlink สำหรับ index.php, การกำหนดค่า vHost …

20
Security Patch SUPEE-11155 - ปัญหาที่เป็นไปได้หรือไม่
Magento เปิดตัวแพตช์รักษาความปลอดภัยใหม่สำหรับ M1 และอัปเดตสำหรับ M1 และ M2 คุณต้องระวังปัญหาทั่วไปอะไรบ้างเมื่อใช้งาน patch / upgrade นี้ วีโอไอพี 1 https://magento.com/security/patches/supee-11155 วีโอไอพี 2 นี่ควรเป็นรีลีสล่าสุดในซีรีย์ 2.1 ซึ่งมาถึง EOL ในตอนท้ายของเดือนนี้ https://magento.com/security/patches/magento-2.3.2-2.2.9-and-2.1.18-security-update-13 https://github.com/magento/magento2/releases/tag/2.1.18 https://github.com/magento/magento2/releases/tag/2.2.9 https://github.com/magento/magento2/releases/tag/2.3.2

2
ปล่อยให้เข้าร่วมตารางในแบบสอบถามการรวบรวม
ฉันกำลังทำสิ่งต่อไปนี้เพื่อรับคำสั่งบางส่วนจากระบบเพื่อการส่งออก: $orders = Mage::getModel('sales/order')-&gt;getCollection() -&gt;addFieldToFilter('status', $statusToExport) -&gt;addFieldToFilter('store_id', $this-&gt;processingStoreId) -&gt;addFieldToFilter('updated_at', array('gteq' =&gt; 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-&gt;getSelect() -&gt;joinLeft( array("t1" =&gt; $myTable), "main_table.entity_id = t1.entity_id", array("admin_field_id" =&gt; "t1.id") ) -&gt;where("t1.id is …

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

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