目标:在 Magento 的类别 GridView 中实现鼠标悬停操作时产品图片的自动更改。
我首先要道歉,我不是编码员,所以请原谅我的愚蠢问题。
我想出了下面的代码来实现换图功能:
<a href="TARGET URL GOES HERE"><img src="URL OF FIRST IMAGE GOES HERE" onmouseover="this.src='URL OF SECOND IMAGE GOES HERE'" onmouseout="this.src='URL OF FIRST IMAGE GOES HERE'" /></a>
但是,我需要先判断产品是否有第二张图片,如果有,我需要调出第二张图片的 URL 才能使该功能起作用。
我想这需要一段 php 代码才能做到这一点。
如果有任何有问题的人提供帮助,我将不胜感激。
最好的问候 亮
PS:这里有一些关于该页面的更多信息。 变量:
<?php
$_productCollection=$this->getLoadedProductCollection();
$_helper = $this->helper('catalog/output');
?>
这是调出主/第一张图片的代码。
<a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" class="product-image"><img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(170, 255); ?>" width="170" height="255" alt="<?php echo $this->stripTags($this->getImageLabel($_product, 'small_image'), null, true) ?>" /></a>
最佳答案
对于Magento
要让 OnMouseOver 更改图像并在产品网格或 ListView 中显示默认缩略图,请将以下代码添加到主题的 list.phtml 文件中:
onmouseover="this.src='<?php echo $this->helper('catalog/image')->init($_product, 'thumbnail')->constrainOnly(FALSE)->keepAspectRatio(TRUE)->keepFrame(FALSE)->resize(135,135) ?>';"
onmouseout="this.src='<?phpecho $this->helper('catalog/image')->init($_product, 'small_image')->constrainOnly(FALSE)->keepAspectRatio(TRUE)->keepFrame(FALSE)->resize(135,135) ?>';"
新代码将是:
<a href="<?php echo $_product->getProductUrl() ?>"
title="<?php echo $this->htmlEscape($this->getImageLabel($_product, 'small_image')) ?>"
class="product-image">
<img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(135, 135); ?>"
width="135" height="135"
alt="<?php echo $this->htmlEscape($this->getImageLabel($_product, 'small_image')) ?>"
onmouseover="this.src='<?php echo $this->helper('catalog/image')->init($_product, 'thumbnail')->constrainOnly(FALSE)->keepAspectRatio(TRUE)->keepFrame(FALSE)->resize(135,135) ?>';"
onmouseout="this.src='<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->constrainOnly(FALSE)->keepAspectRatio(TRUE)->keepFrame(FALSE)->resize(135,135) ?>';"/>
</a>
关于php - Magento中调用第二个图片URL实现鼠标悬停换图功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11691898/