2012-07-26 15 views
5

हमें एक समस्या का सामना करना पड़ा है जहां हमारे पास एक Magento स्टोर पर स्थायी रीडायरेक्ट है, जिस पर हम काम कर रहे हैं, और मैं देख रहा हूं कि हम शब्दों में रिक्त स्लेट के साथ कैसे शुरुआत कर सकते हैं इन रीडायरेक्ट्स में से। हमें किसी विकासशील साइट के बाद से किसी की आवश्यकता नहीं है, और हम इस डोमेन के भीतर कुछ भी पुनर्निर्देशित नहीं करना चाहते हैं। दुकान लाइव नहीं है, और निम्नलिखित क्या हुआ है।Magento: सभी स्थायी रीडायरेक्ट को कैसे हटाएं

हमें सिस्टम -> कॉन्फ़िगर -> कैटलॉग -> एसईओ के तहत यूआरएल रिवाइट प्रबंधन विकल्प के बारे में पता नहीं था, इसलिए इसे "स्थायी रीडायरेक्ट बनाएं ..." के लिए "हां" के रूप में चिह्नित किया गया था। कुछ उत्पादों को एक के माध्यम से अपलोड किया गया था फ़ीड, लेकिन वे गलत तरीके से अपलोड किए गए थे। इसलिए, हमने उन्हें लिखने के लिए फिर से अपलोड किया। नतीजा यह था कि "श्वेत शर्ट ए" में इसकी यूआरएल कुंजी व्यवस्थापक या निर्यातित डेटा फीड में "श्वेत-शर्ट-ए.html" है, लेकिन उत्पाद को लाने वाला वास्तविक लिंक "श्वेत-शर्ट-ए -1 है। एचटीएमएल। " अगर हम "श्वेत-शर्ट-ए.html" पर जाते हैं, तो यह हमें 404 नहीं मिला है।

हम इन सभी स्थायी रीडायरेक्ट को कैसे साफ़ कर सकते हैं? हमने कैटलॉग -> यूआरएल रिवाइट मैंगमेंट के तहत इन विशिष्ट अनुरोध पथ और लक्ष्य पथ प्रविष्टियों को अक्षम या हटाने का प्रयास किया है, लेकिन उनके पास कोई प्रभाव नहीं है।

उत्तर

10

अपनी दुकान अभी तक प्रकाशित नहीं किया गया है, इस का पालन करें:

  1. खाली/डाटाबेस से core_url_rewrite तालिका काटें।

  2. Magento बैकएंड से स्थायी रीडायरेक्ट अक्षम करें।

  3. रेंडेक्स कैटलॉग यूआरएल रिवाइट्स और आपके सभी यूआरएल को सही किया जाएगा।

+0

core_url_rewrite के बारे में, हमारे पास एक ऐसा व्यक्ति है जो Magento प्रोग्रामिंग के साथ हमारी सहायता कर रहा है, और उसने हमें बताया कि हमें 'कोर _..' में कुछ भी नहीं हटाना चाहिए। इस पोस्ट से पहले, मैंने उससे उसे छेड़छाड़ करने के लिए कहा था, और वह बहुत संकोचजनक था। इस तालिका को छीनने से केवल उन रीडायरेक्ट को प्रभावित किया जाएगा जो किसी और चीज को प्रभावित किए बिना किए गए हैं? हम बस चाहते हैं कि हमारे उत्पाद यूआरएल उनके नामों का साफ संस्करण हो, जैसा कि 'व्हाइट शर्ट ए' उदाहरण में है। – musicliftsme

+0

नहीं, कोर_रिल_rewrite तालिका को छोटा करने से यूआरएल रीराइट्स (रेडियरेक्ट) की तुलना में अन्य सुविधाओं पर कोई प्रभाव नहीं पड़ता है। http://www.youtube.com/watch?v=8xttr_ILd6A&feature=player_embedded अजीब यूआरएल फिक्सिंग पुनर्लेखन http: के बाद यह ताज़ा नया (स्वच्छ) यूआरएल core_url_rewrite तालिका –

+0

में बनाने के लिए यूआरएल अनुक्रमण सूची यहां नहीं है : //www.yireo.com/tutorials/magento/magento-administration/664-fixing-url-rewrites-with-magento –

0

मुझे गारंटी नहीं है कि यह सुरक्षित है। लेकिन अब तक ऐसा लगता है कि काम किया है।

मैं इस क्वेरी चलाने है

"! हटाएँ * core_url_rewrite से कहां is_system = 1";

उस क्वेरी को सभी कस्टम नियमों को फिर से लिखने के लिए हटा दिया गया, जिनमें से हमारे पास 500,000 की तरह कुछ था। उनमें से अधिकतर तब बनाए गए जब किसी ने खोज इंजन ऑप्टिमाइज़ेशन में ".html" एक्सटेंशन को "बिना किसी बदलाव के" पुनर्निर्मित नियम बनाएं "को बदलने के बिना बंद कर दिया।

0

सभी स्थायी पुनर्निर्देश आप कर सकते हैं को निकालने के लिए:

1) प्रत्यक्ष क्वेरी निष्पादित (अनुशंसित नहीं):

DELETE FROM core_url_rewrite WHERE options IS NOT NULL AND is_system = 0 

2) इसे और अधिक धीरे कार्य करें:

$write = Mage::getSingleton('core/resource')->getConnection('core_write'); 
try { 
    $write->beginTransaction(); 
    $table = Mage::getSingleton('core/resource')->getTableName('core/url_rewrite'); 
    $count = $write->exec('DELETE FROM ' . $table . ' WHERE options IS NOT NULL AND is_system = 0'); 
    $write->commit(); 
    $this->_getSession()->addSuccess($this->__('Successfully removed %s redirects.', $count)); 
} catch(Exception $e) { 
    $write->rollback(); 
    $this->_getSession()->addException($this->__("An error occurred while clearing url redirects: %s", $e->getMessage()));    
} 

3) या आप Custom Product Urls एक्सटेंशन इंस्टॉल कर सकते हैं जो आपको व्यवस्थापक पैनल से सभी स्थायी रीडायरेक्ट को साफ़ करने में सक्षम बनाता है।

संबंधित मुद्दे