1.9 RWD थीम पर उत्पाद विवरण पृष्ठ से ज़ूम कैसे निकालें


9

आप Magento 1.9 की rwd थीम से ज़ूम फीचर को कैसे हटाते हैं?

मैं इसे सीएसएस के साथ हटा सकता हूं

div.zoomContainer {
  display: none;
}

लेकिन मुझे नहीं लगता कि यह सबसे अच्छा तरीका है? इसे टेम्पलेट फ़ाइल से या xml के साथ निकालना बेहतर होगा।

मैंने टेम्पलेट / कैटलॉग / उत्पाद / दृश्य / media.phtml को संपादित करने की कोशिश की है, लेकिन कोई भाग्य नहीं था।


नहीं, यह सही तरीका नहीं है, अब अंतिम उत्तर को मेरे संपादन के साथ देखें।
Simbus82

जवाबों:


10

जैसा कि अन्य जवाबों में से एक में उल्लेख किया गया है, फ़ाइल में ज़ूम createZoomफ़ंक्शन फ़ंक्शन में शुरू होता है ।ProductMediaManager/skin/frontend/rwd/default/js/app.js

इसलिए, एक अन्य विकल्प createZoomजेएस के माध्यम से अलग-अलग फ़ंक्शन को प्रक्रिया में बाद में ओवरराइड करना है।

उदाहरण के लिए, यदि आप JS को अपनी थीम के एक भाग के रूप में सम्मिलित कर रहे हैं, तो आप ऑब्जेक्ट createZoomमें फ़ंक्शन को ओवरराइड करने के लिए निम्नलिखित जोड़ सकते हैं ProductMediaManager

// ProductMediaManager is outside document.read scope
if (typeof ProductMediaManager !== 'undefined') {

  // Override image zoom in /skin/frontend/rwd/default/js/app.js
  // and prevent the zooming of images on hover
  ProductMediaManager.createZoom = function(image) { return; }

}

इस पद्धति के साथ, आपको संपूर्ण app.jsफ़ाइल की प्रतिलिपि नहीं बनानी होगी। हालाँकि, आपको सुनिश्चित करना चाहिए कि मूल विषय के JS फ़ाइल के बाद आपके विषय का JS जोड़ा गया है। मुझे यह एक क्लीनर दृष्टिकोण लगता है।


मेरे लिए काम किया है, लेकिन ध्यान रखें कि ओवरराइट को बहुत देर से लोड नहीं किया जा सकता है। मैंने इसे एक jQuery दस्तावेज़ तैयार पर्यवेक्षक में लपेटा था, और ओवरराइट को कुछ भी करने के लिए बहुत देर हो चुकी थी। इसके बजाय मुझे अपने अधिलेखित जेएस फ़ाइल को लोड किए जाने के बाद ओवरराइट राइट को निष्पादित करना था, इसलिए मैंने इसे सिर्फ jQuery दस्तावेज़ तैयार पर्यवेक्षक के बाहर रखा।
लुई बी।

15

फ़ाइल /skin/frontend/rwd/default/js/app.js (उदाहरण के लिए /skin/frontend/rwd/mystyle/js/app.js) में ओवरराइड बनाएं

लाइन टिप्पणी करें (default line: 649):

//image.elevateZoom();

Magento कैश ताज़ा करें।


1
मैंने संपादित किया है क्योंकि सही तरीका है।
सिमबस 82

2
return;इस createZoomफ़ंक्शन की शुरुआत में थोड़ा बेहतर समाधान सिर्फ एक बयान जोड़ना हो सकता है , जिसमें यह image.elevateZoom();कॉल रहता है। इस तरह क्लाइंट पक्ष जावास्क्रिप्ट में से किसी को भी पहले स्थान पर निष्पादित नहीं करना है। (अभी भी अपने स्थानीय विषय में पहले इस फ़ाइल को ओवरराइड करने की प्रथा का पालन करें)
डैरेन फेल्टन

-3

नीचे /frontend/rwd/default/layout/catalog.xml, <catalog_product_view>अनुभाग में , नीचे की टिप्पणी में खोलें

<action method="addItem"><type>skin_js</type><script>js/lib/elevatezoom/jquery.elevateZoom-3.0.8.min.js</script></action>

धन्यवाद, लेकिन अगर उस js फ़ाइल को हटा दें तो मैं मुख्य गैलरी क्षेत्र के लिए थंबनेल छवियों का चयन नहीं कर सकता हूं
Holly

यह इस फ़ंक्शन को अक्षम करने का एक सही तरीका नहीं है।
सिमबस 82

3
आपको कभी भी फाइलों को / app / design / frontend / rwd / default / layout / या किसी भी फाइल को / app / design / frontend / base / default / layout / में संशोधित नहीं करना चाहिए । ऐसा करने से अपग्रेड फ्रेंडली प्रथाओं का पालन नहीं होता है। लेआउट अपडेट हमेशा आपके विषय के भीतर "local.xml" में किया जाना चाहिए। कोई लेआउट XML निर्देश नहीं है, जिसे स्थानीय। Xml में ओवरराइड, संशोधित, हटाया, आदि नहीं किया जा सकता है।
डेरेन फेल्टन

यह एक त्रुटि को फेंक देगा क्योंकि यह एलिवेट्ज़ूम को खोजने में सक्षम नहीं होगा
टिस्क
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.