1.9 RWDテーマの製品詳細ページからズームを削除する方法


9

Magento 1.9のrwdテーマからズーム機能をどのように削除しますか?

cssで削除できます

div.zoomContainer {
  display: none;
}

しかし、私はこれが最善の方法ではないと思いますか?テンプレートファイルから、またはxmlを使用して削除することをお勧めします。

template / catalog / product / view / media.phtmlを編集しようとしましたが、うまくいきませんでした。


いいえ、それは正しい方法ではありません。今のところ、私の編集で最後の回答を参照してください。
Simbus82 2014

回答:


10

他の回答の1つで述べたように、ズーム機能createZoomProductMediaManagerin /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 2014

2
少し優れた解決策はreturn;、このcreateZoom関数がimage.elevateZoom();存在するこの関数の最初にステートメントを追加することです。そうすれば、クライアント側のJavaScriptのいずれも、最初から実行する必要さえありません。(引き続き、ローカルテーマでこのファイルを最初にオーバーライドする方法に従ってください)
Darren Felton 2015

-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

この機能を無効にするのは適切な方法ではありません。
Simbus82 2014

3
/ app / design / frontend / rwd / default / layout /内のファイル、または/ app / design / frontend / base / default / layout / のファイルを変更しないでください。そうすることは、アップグレードに適した慣行に従いません。レイアウトの更新は、常にテーマ内の「local.xml」で行う必要があります。local.xmlには、オーバーライド、変更、削除などができないレイアウトXML命令はありません。
ダレンフェルトン2014年

これは、elevatezoomを見つけることができないため、エラーをスローします
Tisch
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.