मुझे कुछ अलग 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;
मेरी समस्या यह है कि मैग्नेटो साइटों में से एक पर हम चल रहे हैं 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"; ?>
लेकिन यह तरीका थोड़ा अक्षम है!
EDIT 21/03/14: मुझे अभी भी यह समस्या आ रही है। मैंने महसूस किया है कि getProductUrl()
साइट के कुछ टेम्प्लेट फ़ाइलों पर वांछित URL को पुनर्प्राप्त किया गया है, लेकिन अन्य नहीं। उदाहरण के लिए, मैं मुखपृष्ठ पर एक संग्रह लोड कर रहा हूं और यह मुझे मेरे इच्छित URL दे रहा है। लेकिन getProductUrl()
मुझे वह URL नहीं दे रहा है जो मैं किसी श्रेणी दृश्य पर समान कोड के साथ चाहता हूं।