Magento1.7で製品グリッド全体をクリック可能にしたくありません。つまり、画像と製品名だけでなく、その周囲の空白も含まれます。
これに対する解決策を持っている人はいますか?
app/design/frontend/default/your_company/template/catalog/product
グリッド モード セクション (またはリスト モード) で呼び出されるファイルを編集すると、次list.phtml
のような開始リスト項目が表示されます。
<li class="item<?php if(($i - 1) % $_columnCount == 0) : ?> first<?php elseif($i % $_columnCount == 0) : ?> last<?php endif; ?>">
window.open
イベント内に JavaScript 関数を追加するonclick
と、コードは次のようになります。
<li class="item<?php if(($i - 1) % $_columnCount == 0) : ?> first<?php elseif($i % $_columnCount == 0) : ?> last<?php endif; ?>" onclick="window.open('<?php echo $_product->getProductUrl() ?>', '_self'); return false;">
注:リンクを新しいタブ/ウィンドウで開く場合window.open
など、2 番目のパラメーターを別のパラメーターに変更できます。詳しくはこちらをご覧ください。リスト項目のホバーをポインター カーソルに変更するために、少し CSS を追加することをお勧めします。_blank
.category-products li:hover { cursor: pointer; }
JS と css を使用してこれを実現できます
jQuery の使用例 (デフォルトの css クラス名を使用していると仮定して、製品リスト ページに含まれる js ファイルにこのコードを追加します)
$(document).ready(function() {
$('ul.products-grid').click(function(e) {
if($j(e.target).is("img"){
window.location.href = $(e.target).closest("li").find('a:first').attr("href");
}
});
});
CSS
.products-grid li:hover { cursor: pointer; }