Wie setze ich get_product_list als Plugin um

webmagier

Aktives Mitglied
6. November 2008
381
1
Aschheim
AW: Wie setze ich get_product_list als Plugin um

OK, ich habe jetzt mal alles rausgeworfen und nur noch folgendes in der PHO Datei übriggelassen:

Code:
<?php 
	function holeMeineProdukte()
	{
		
	}
?>

Selbst das liefert mir noch den Fehler. Jemand ne Idee?
 

webmagier

Aktives Mitglied
6. November 2008
381
1
Aschheim
AW: Wie setze ich get_product_list als Plugin um

Ich habe den Fehler gefunden. Ich habe nochmal ein wenig mit der Firebug Console gespielt und irgendwo tief versteckt folgendes gefunden:


Fatal error: Cannot redeclare holeMeineProdukte() (previously declared in /var/customers/webs/jtl/testshop2/drichter/includes/plugins/danielrichter_css3slider/version/100/frontend/css3slider.php:5) in /var/customers/webs/jtl/testshop2/drichter/includes/plugins/danielrichter_css3slider/version/100/frontend/css3slider.php on line 5
Ich interpretiere es mal so: Ich habe im PHP File die Funktion holeMeineProdukte() deklariert und beim Laden der Seite wird die Definition über den Aufruf von Hook 140 in die Seite reingeschrieben. Das liefert noch keinen Fehler. Nun wähle ich eine Varkombi und die Seite wird dabei nicht neu geladen, sondern es passiert irgendwelches Magic mit Ajax. Dabei wird offensichtlich auch der Hook 140 getriggert und über die registrierten Listener mein Plugin. Nun wird die definierte Funktion ein zweites mal in die Seite geschrieben, was verständlicherweise zu einem Fehler führt.

Sollte ich bis hierher Unsinn geschrieben haben korrigiert mich bitte...wie gesagt, ich komme aus der Java Welt und PHP ist neu für mich.

Gelöst habe ich es so: Ich habe die Funktion in eine eigene Klasse ausgelagert:

Code:
class CSS3SliderFunctions
{
    function holeMeineProdukte()
    {

    }
}

Diese Klasse lade ich dann mit require_once in meiner Plugin PHP Datei die vom Hook 140 aufgerufen wird:

Code:
<?php 
    require_once(dirname(__FILE__) . "/classes/class.CSS3SliderFunctions.php");
    if(class_exists("CSS3SliderFunctions"))
    {
        $functions = new CSS3SliderFunctions();
        
        $artikelliste = $functions->holeMeineProdukte();
    }
?>

Voila, es funktioniert nun alles so wie es soll.

Hat mich auch nur einen halben Tag gekostet das rauszufinden...für einen PHP Newbie nicht so schlecht oder ;)
 

Bjoern3003

Offizieller Servicepartner
SPBanner
13. November 2006
504
4
AW: Wie setze ich get_product_list als Plugin um

Hättest die funktion auch in if(function_exists('holeMeineProdukte')) packen können ;)
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu POS im Kundencenter buchen, aber wie und wo? Allgemeine Fragen zu JTL-POS 2
Neu Wie Ebaypreise anheben (incl. Varianten)? eBay-Anbindung - Fehler und Bugs 0
Neu Produktverkauf von max. 24 Stück am Tag - wie umsetzen ? User helfen Usern - Fragen zu JTL-Wawi 1
Neu wie Wawi eigene Felder (Kunden) an Shop DB übertragen? User helfen Usern - Fragen zu JTL-Wawi 3
Neu Workflow funktioniert nicht so wie gewollt :) User helfen Usern - Fragen zu JTL-Wawi 1
Webinar: Strategien der E-Commerce-Leader - wie unterschiedliche Produktrollen Umsatz und Marge steigern Messen, Stammtische und interessante Events 0
Meine Bestellungen sind in einer Pickliste "verschollen" - WIE bekomme ich sie in die Wawi-Pickliste??? JTL-Wawi 1.11 2
Artikel Z besteht aus den Positionen A, B und C mit unterschiedlichen Steuersätzen. Wie im Angebot, Auftrag, Rechnung richtig dargestellen ? JTL-Wawi 1.11 4
Neu Wie wird die Seite "suche nach:" erzeugt? Allgemeine Fragen zu JTL-Shop 4
Neu Mit Ameise nur einen Artikel & die dazu gehörenden Varianten exportieren - wie? Schnittstellen Import / Export 3
Neu Wo verändere ich die Variable #firma.name# die in Mail-Vorlagen zu finden ist? Allgemeine Fragen zu JTL-Shop 2
Neu Wo kann ich in JTL das Datum sehen, an dem eine Bestellung als bezahlt bestätigt wurde? User helfen Usern - Fragen zu JTL-Wawi 1

Ähnliche Themen