วิธีลบการซูมออกจากหน้ารายละเอียดผลิตภัณฑ์ในธีม 1.9 RWD


9

คุณจะลบคุณสมบัติการซูมออกจากธีม rwd ของ Magento 1.9 ได้อย่างไร?

ฉันสามารถลบมันด้วย CSS

div.zoomContainer {
  display: none;
}

แต่ฉันไม่คิดว่านี่เป็นวิธีที่ดีที่สุดเหรอ? จะเป็นการดีกว่าถ้าจะลบออกจากไฟล์เทมเพลตหรือด้วย xml

ฉันลองแก้ไขเทมเพลต / แคตตาล็อก / ผลิตภัณฑ์ / ดู / media.phtml แต่ไม่มีโชค


ไม่มันไม่ใช่วิธีที่ถูกต้องในตอนนี้ดูคำตอบสุดท้ายพร้อมการแก้ไขของฉัน
Simbus82

คำตอบ:


10

ตามที่ระบุไว้ในหนึ่งในคำตอบอื่น ๆ ที่มีคุณลักษณะการซูมเริ่มต้นในcreateZoomการทำงานของProductMediaManagerใน/skin/frontend/rwd/default/js/app.jsไฟล์

ดังนั้นอีกทางเลือกหนึ่งคือการแทนที่แต่ละcreateZoomฟังก์ชั่นผ่าน JS ในภายหลังในกระบวนการ

ตัวอย่างเช่นหากคุณกำลังแทรก 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 และมันก็สายเกินไปที่ผู้เขียนจะทำอะไรไม่ได้เลย แต่ฉันต้องดำเนินการเขียนทับอย่างถูกต้องเนื่องจากโหลดไฟล์ JS ที่กำหนดเองของฉันดังนั้นฉันจึงวางมันไว้นอกผู้สังเกตการณ์เอกสาร jQuery
Louis B.

15

สร้างการแทนที่ของไฟล์ /skin/frontend/rwd/default/js/app.js (เช่นใน /skin/frontend/rwd/mystyle/js/app.js)

แสดงความคิดเห็นบรรทัด(default line: 649):

//image.elevateZoom();

รีเฟรชแคช Magento


1
ฉันแก้ไขเพราะเป็นวิธีที่ถูกต้อง
Simbus82

2
วิธีแก้ปัญหาที่ดีขึ้นเล็กน้อยอาจจะเพียงแค่เพิ่มreturn;คำสั่งที่จุดเริ่มต้นของcreateZoomฟังก์ชั่นนี้ซึ่งการimage.elevateZoom();โทรนี้อยู่ในนั้นด้วยวิธีนี้ไม่มี JavaScript ฝั่งไคลเอนต์ใดที่ต้องดำเนินการในตอนแรก (ยังคงปฏิบัติตามแบบฝึกหัดของการเอาชนะไฟล์นี้ในธีมท้องถิ่นของคุณก่อน)
Darren Felton

-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 ไฟล์ฉันไม่สามารถเลือกภาพขนาดย่อสำหรับพื้นที่หลักแกลเลอรี
ฮอลลี่

ไม่ใช่วิธีที่ถูกต้องในการปิดใช้งานฟังก์ชั่นนี้
Simbus82

3
คุณไม่ควรปรับเปลี่ยนไฟล์ใน/ app / ออกแบบ / ส่วนหน้า / RWD / default / รูปแบบ /หรือใด ๆ ของไฟล์ใน/ app / ออกแบบ / ส่วนหน้า / ฐาน / default / รูปแบบ / การทำเช่นนั้นจะไม่ปฏิบัติตามแนวทางปฏิบัติที่เป็นมิตรของการอัพเกรด การอัพเดตเลย์เอาต์ควรกระทำใน "local.xml" ในธีมของคุณเสมอ ไม่มีคำแนะนำ XML โครงร่างใด ๆ ที่ไม่สามารถเขียนทับแก้ไขลบออก ฯลฯ ใน local.xml
Darren Felton

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