2017-06-28 2 views
0

In meinem Magento (1.9.3.3) Admin-Panel habe ich Bilder für jede Kategorie hochgeladen, und ich kann sie aus dem Kategorie-Bearbeitungsformular sehen. Auf der Frontend-Homepage werden meine vorgestellten Bilder jedoch nicht angezeigt. Wenn ich die Homepage, jede Kategorie Bild src inspizieren leer:Magento 'Featured Categories' Bilder werden nicht auf Frontend geladen

<img alt="" src=""> 

Der Code, der dies erzeugt ist wie folgt:

<?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> 

also die endgültige HTML-Ausgabe für jede Kategorie wie folgt aussieht:

<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> 

Irgendwelche Ideen, was $ Katzen-> getImageUrl() kommt zurück NULL, sondern auch alle anderen Kategorie Attribute sind in Ordnung? Ich habe einige Dinge ohne Erfolg ausprobiert. Vielen Dank!

Antwort

0

Fügen Sie auch unten Attribut zu Filtern hinzu und versuchen Sie es dann.

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

Dann holen Sie sich das Bild für jede Kategorie in for-Schleife.

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

Versuchen Sie, diese

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

Oder nur

$catimg = $_category->getImageUrl(); 
0

Das funktionierte:

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