【问题标题】:Magento 'Featured Categories' Images Not Loading on FrontendMagento“特色类别”图像未在前端加载
【发布时间】:2017-12-02 05:05:49
【问题描述】:

在我的 Magento (1.9.3.3) 管理面板中,我为每个类别上传了图片,我可以从类别编辑表单中看到它们。但是,在前端主页上,我的特色图片没有显示。如果我检查主页,每个类别图像 src 都是空白的:

<img alt="" src="">

生成这个的代码如下:

<?php
$_subcategories = Mage::getResourceModel('catalog/category_collection')
->addAttributeToSelect('*')
->addAttributeToFilter('is_active', 1)
->addAttributeToFilter('is_featured', 1)
->addAttributeToSort( 'feature_position'); 

$_subcategories->getSelect()->limit(7,0);

$categories_count = count($_subcategories);
?>

<div class="row">
<?php 
$count = 0;
if($_subcategories): ?>
<ul id="myList">
    <?php foreach ($_subcategories as $cat): 
        $count = $count + 1; 
        if( $count > 6 ) {
            break;
        }
    ?>
        <li class="col-md-4 cat-item col-sm-4 col-xs-12" style="display: list-item;">
            <a class="image-link" href="<?php echo $cat->getUrl($cat);?>"><div class="feature-cat"><img alt="" src="<?php echo $cat->getImageUrl();?>">
                <div class="feature-cat-name"><?php echo $cat->getname(); ?></div>
            </div>
            </a>
        </li>
    <?php endforeach; ?>
    </ul>
<?php endif; ?>
</div>

因此,每个类别的最终 HTML 输出如下所示:

<a class="image-link" href="http://127.0.0.1/product-category/product1">
    <div class="feature-cat"><img alt="" src="">
        <div class="feature-cat-name">Batteries</div>
    </div>
</a>

任何想法 $cat->getImageUrl() 返回 NULL,但所有其他类别属性都很好?我尝试了很多事情都没有成功。谢谢!

【问题讨论】:

    标签: php magento magento-1.9


    【解决方案1】:

    还可以在过滤器中添加以下属性,然后尝试。

    $_subcategories = Mage::getResourceModel('catalog/category_collection')
    ->addAttributeToSelect('*')
    ->addAttributeToFilter('is_active', 1)
    ->addAttributeToFilter('is_featured', 1)
    ->addAttributeToSort( 'feature_position')
    ->addAttributeToSelect('image');
    

    然后在for循环中获取每个类别的图片。

    foreach($_subcategories as $subcat) {
    echo "Image : ".$subcat->getImage();
    }
    

    【讨论】:

      【解决方案2】:

      试试这个

        if($_category->getImageUrl()){
      $catimg = $_category->getImageUrl(); 
      }else{
      $catimg=null;
      continue;
      

      或者只是

      $catimg = $_category->getImageUrl();
      

      【讨论】:

        【解决方案3】:

        这行得通:

        $_subcategories = 
            Mage::getResourceModel('catalog/category_collection')
            ->addAttributeToSelect('*')
            ->addAttributeToFilter('is_active', 1)
            ->addAttributeToFilter('is_featured', 1)
            ->addAttributeToSort( 'feature_position')
            ->addAttributeToFilter('image', array('notnull' => true));
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多