2
$ _product-> getProductUrl () กำลังให้เส้นทาง URL โดยไม่มีคีย์ URL
ฉันได้รับชุดผลิตภัณฑ์บางประเภทในหน้าหนึ่งในเว็บไซต์ Magento ที่แตกต่างกัน รหัสของฉันสำหรับรับชุดคือ: $category = new Mage_Catalog_Model_Category(); $category->load($id); $collection = $category->getProductCollection(); $collection->addAttributeToSelect('*'); $collection->addAttributeToFilter('status', 1); $collection->addFieldToFilter(array(array('attribute'=>'visibility', 'neq'=>"1" ))); $collection->getSelect()->limit(12); foreach ($collection as $shopProduct) : echo $shopProduct->getProductUrl(); endforeach; ปัญหาของฉันคือว่าหนึ่งในเว็บไซต์ Magento ที่เรากำลังเรียกใช้ProductUrl()นั้นเป็น URL ที่http://www.my site.com/catalog/product/view/id/2309/s/shopcat/category/373/ไม่เหมือนhttp://www.site.com/shopcat/product-url-key.htmlใคร แต่ในเว็บไซต์อื่น ๆ มันปรากฏตามที่เราต้องการ ไม่มีใครรู้ว่าทำไมสิ่งนี้อาจเป็นเพราะอะไร? ขอบคุณ! ฉันลองใช้getUrlPath()ด้วย แต่ก็ไม่ได้อะไรกลับมา ฉันรู้ว่าฉันสามารถทำสิ่งนี้ได้โดยทำสิ่งที่ชอบ<?php echo $this->getBaseUrl().$shopProduct->getUrlKey().".html"; ?>แต่วิธีการนั้นดูเหมือนไม่มีประสิทธิภาพ! แก้ไข 21/03/14:ฉันยังคงมีปัญหานี้ ฉันได้รับรู้ถึงการgetProductUrl()ดึง URL ที่ต้องการในไฟล์เทมเพลตบางไฟล์ของเว็บไซต์ ตัวอย่างเช่นฉันกำลังโหลดคอลเล็กชันหนึ่งในหน้าแรกและมันมอบ …