Zurück   rack::SPEED Support-Forum > rack::SPEED Kundensupport Magento 1.x > Magento - Fragen & Probleme

Magento - Fragen & Probleme Fragen & Probleme rund um MagentoConnect

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 06.11.2008   #1 (permalink)
rack::SPEED Kunde
 
Registriert seit: 23.10.2008
Beiträge: 20
Renommee-Modifikator: 0
cooee befindet sich auf einem aufstrebenden Ast
Standard Zeichensalat bei neuem Produktblock

Hallo,

habe einen neuen Block gefunden, der Produkte mit einem bestimmten Attribut auf der Startseite anzeigt. Anstelle einer Liste erhalte ich aber komischen Zeichensalat, der nicht so recht nach dem üblichen Mage-Fehlermeldungen aussieht (s. Anhang). Was könnte das sein?

Gruß,
cooee
Angehängte Grafiken
Dateityp: jpg screener_featured_product_m.jpg (119,3 KB, 6x aufgerufen)
cooee ist offline   Mit Zitat antworten
Alt 06.11.2008   #2 (permalink)
rack::SPEED Support
 
Benutzerbild von rack::SPEED
 
Registriert seit: 19.10.2008
Ort: Meerbusch
Beiträge: 920
Renommee-Modifikator: 10
rack::SPEED hat die Renommee-Anzeige deaktiviert
Standard

Hallo cooee,

ein ähnliches Problem hatte ich bei der Erstellung meines ersten Moduls auch. Mein Problem bestand darin, dass ich die Funktion nicht richtig überschrieben habe...

Kannst du den Code aus dem Block einmal hier posten, so dass wir das Ganze kurz im Testshop ausprobieren können?

Gruß
rack::SPEED ist offline   Mit Zitat antworten
Alt 06.11.2008   #3 (permalink)
rack::SPEED Kunde
 
Registriert seit: 23.10.2008
Beiträge: 20
Renommee-Modifikator: 0
cooee befindet sich auf einem aufstrebenden Ast
Standard

Aber gerne :-) Das Dingen steht als Homepage.php in /app/code/local:

Code:
<?php

class Cooee_Catalog_Block_Product_Homepage extends Mage_Catalog_Block_Product_Abstract
{
    public function __construct()
    {
        parent::__construct();

        $storeId    = Mage::app()->getStore()->getId();
        $product    = Mage::getModel('catalog/product');
        /* @var $product Mage_Catalog_Model_Product */
        $todayDate  = $product->getResource()->formatDate(time());
        $products   = $product->setStoreId($storeId)->getCollection()
            ->addAttributeToFilter('home_page_featured', array('yes'=>true))
            ->addAttributeToSelect(array('name', 'price', 'small_image'), 'inner')
            ->addAttributeToSelect(array('special_price', 'special_from_date', 'special_to_date'), 'left')
        ;
       /* @var $products Mage_Catalog_Model_Resource_Eav_Mysql4_Product_Collection */
        Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($products);
        Mage::getSingleton('catalog/product_visibility')->addVisibleInCatalogFilterToCollection($products);

      $products->setOrder('hot_deals')->setPageSize(5)->setCurPage(1);

        $this->setProductCollection($products);
    }
}
?>
Die zugehörige homepage.phtml:

Code:
<?php if (($_products = $this->getProductCollection()) && $_products->getSize()): ?>
<div class="home-page-cntr">
<?php $i=0; foreach ($_products->getItems() as $_product): ?>
    <?php if ($i>5): continue; endif; ?>

<div class="home-page-item">
        <div class="home-page-img">
            <a href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_product->getName()) ?>">
                 <img src="<?php echo $this->helper('catalog/image')->init($_product, 'small_image')->resize(65,65); ?>" alt="<?php echo $this->htmlEscape($_product->getName()) ?>"/>
            </a>
        </div>
        <div class="home-page-txt">
            <p><a class="product-name" href="<?php echo $_product->getProductUrl() ?>" title="<?php echo $this->htmlEscape($_product->getName()) ?>)"><?php echo $_product->getName() ?></a></p>
            <?php echo $this->helper('review/product')->getSummaryHtml($_product, 'short') ?>
            <?php echo $this->helper('catalog/product')->getPriceHtml($_product) ?>
            
</div>
</div>
<?php $i++; endforeach; ?>
<?php for($i;$i%5!=0;$i++): ?>
    <?php endfor ?>
</div>
<?php endif; ?>
Der Aufruf:
Code:
{{block type="catalog/product_homepage" name="home.catalog.product.homepage" alias="product_homepage" template="catalog/product/homepage.phtml"}}
cooee ist offline   Mit Zitat antworten
Alt 06.11.2008   #4 (permalink)
rack::SPEED Support
 
Benutzerbild von rack::SPEED
 
Registriert seit: 19.10.2008
Ort: Meerbusch
Beiträge: 920
Renommee-Modifikator: 10
rack::SPEED hat die Renommee-Anzeige deaktiviert
Standard

Schade, durch reines überfliegen werden wir da nicht weiterkommen... ;-)

Ich baue den Code morgen Vormittag in einen Testshop ein und werde dir meine Erkenntnisse hier posten.

Was mir auf den ersten Blick auffällt ist das "extends Mage_Catalog_Block_Product_Abstract". - Bei meinem ersten Modul-Versuch habe ich (gleich) versucht eine Abstract-Klasse zu überschreiben, was aber nicht so einfach möglich ist. Ob das hier auch zutrifft weiß ich noch nicht, aber mein Zeichensalat sah ähnlich aus...
rack::SPEED ist offline   Mit Zitat antworten
Alt 07.11.2008   #5 (permalink)
rack::SPEED Support
 
Benutzerbild von rack::SPEED
 
Registriert seit: 19.10.2008
Ort: Meerbusch
Beiträge: 920
Renommee-Modifikator: 10
rack::SPEED hat die Renommee-Anzeige deaktiviert
Standard

Ich habe das Problem lösen können. Da allerdings einiges verändert werden muss, werde ich den Code erst morgen in einer sauberen Form posten können. - Das Ganze funktioniert zwar schon, aber es gibt noch 1-2 Punkte die nicht ganz sauber sind...
rack::SPEED ist offline   Mit Zitat antworten
Alt 08.11.2008   #6 (permalink)
rack::SPEED Kunde
 
Benutzerbild von Ingo
 
Registriert seit: 20.10.2008
Ort: Bremen
Beiträge: 249
Renommee-Modifikator: 4
Ingo befindet sich auf einem aufstrebenden Ast
Standard

Das Modul wäre auch für mich sehr interessant. Besteht die Möglichkeit, es hier im Forum freizugeben, wenn es fertig ist?
__________________
ABUS Security-Tech Fachhändler

"Hohe Bildung kann man dadurch beweisen, dass man die kompliziertesten Dinge auf einfache Art zu erläutern versteht." (George Bernard Shaw)
Ingo ist offline   Mit Zitat antworten
Alt 08.11.2008   #7 (permalink)
rack::SPEED Support
 
Benutzerbild von rack::SPEED
 
Registriert seit: 19.10.2008
Ort: Meerbusch
Beiträge: 920
Renommee-Modifikator: 10
rack::SPEED hat die Renommee-Anzeige deaktiviert
Idee TOP Produkte auf der Startseite anzeigen (Featured products)

Wie versprochen das fertige Modul.

Vorbereitungen
Als erstes wird ein neues Attribut (Ja / Nein Optionsschalter) "home_page_featured" angelegt und zum aktuellen Attributset hinzugefügt. Sobald das Set gespeichert wurde können wir den Schalter für unsere TOP-Produkte auf "ja" setzen.

Als nächstes wird über
Code:
CMS => SEITEN VERWALTEN => Home Page
auf der Startseite folgendes Snippet eingefügt:
Code:
{{block type="catalog/product_homepage" template="catalog/product/homepage.phtml"}}
Das Ganze sollte am besten über folgendem Tag stehen:
Code:
<div class="box best-selling">
Cache leeren nicht vergessen!

Dateien kopieren
Abschließend werden alle Dateien aus dem Anhang auf den Server geladen.

Fertig
Die Produkte mit der Option "Ja" sollten jetzt auf der Startseite angezeigt werden.

EDIT: Neue Version: Zeichensalat bei neuem Produktblock
Angehängte Dateien
Dateityp: zip featured.zip (6,0 KB, 3x aufgerufen)
rack::SPEED ist offline   Mit Zitat antworten
Alt 10.11.2008   #8 (permalink)
rack::SPEED Kunde
 
Registriert seit: 23.10.2008
Beiträge: 20
Renommee-Modifikator: 0
cooee befindet sich auf einem aufstrebenden Ast
Standard

Okay, dankeschön, werde das gleich mal ausprobieren. Das mit dem Zeichensalat scheint jedoch noch eine Sache zu sein, die auch auf anderem Wege ausgelöst werden könnte. Ich wollte gerade einfach mal in der Navigation (left.phtml) die aktuelle Kategorie via
Code:
echo $this->getCurrentChildCategories()
ausgeben lassen, mit dem selben Resultat. Woran könnte es denn noch liegen?

Gruß, cooee
cooee ist offline   Mit Zitat antworten
Alt 10.11.2008   #9 (permalink)
rack::SPEED Support
 
Benutzerbild von rack::SPEED
 
Registriert seit: 19.10.2008
Ort: Meerbusch
Beiträge: 920
Renommee-Modifikator: 10
rack::SPEED hat die Renommee-Anzeige deaktiviert
Standard

Leider kenne ich mich mit dem Zend-Framework noch nicht so gut aus, daher habe ich deinen Code wahrscheinlich auch erst gar nicht zum laufen bekommen. - In meinem Modul liegen die Dateien auch an ganz anderen Stellen...

Was mir gerade erst aufgefallen ist:

Code:
<?php $i=0; foreach ($_products->getItems() as $_product): ?>
heißt bei mir:

Code:
<?php $i=0; foreach ($_products as $_product): ?>
Auf Wunsch von Ingo habe ich das Ausgabetemplate noch einmal überarbeitet, die neuen Dateien befinden sich im Anhang.
Angehängte Dateien
Dateityp: zip featured_1_1.zip (6,3 KB, 1x aufgerufen)
rack::SPEED ist offline   Mit Zitat antworten
Alt 10.11.2008   #10 (permalink)
rack::SPEED Kunde
 
Benutzerbild von Ingo
 
Registriert seit: 20.10.2008
Ort: Bremen
Beiträge: 249
Renommee-Modifikator: 4
Ingo befindet sich auf einem aufstrebenden Ast
Standard

Hallo Maik,

super Arbeit! Jetzt habe ich nur noch ein klitzekleines Problem: Die Links in den Boxen sind leider englisch (auch der Button "Add to Cart"). Gibts da eine Möglichkeit, dass die auch noch eingedeutscht werden können?

Ansonsten nochmals ein großes DANKE für dieses Modul.
__________________
ABUS Security-Tech Fachhändler

"Hohe Bildung kann man dadurch beweisen, dass man die kompliziertesten Dinge auf einfache Art zu erläutern versteht." (George Bernard Shaw)
Ingo ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an



Alle Zeitangaben in WEZ +2. Es ist jetzt 10:50 Uhr.


Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Content Relevant URLs by vBSEO 3.6.0
© 2008 by rack::SPEED

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17