Jump to content
xt:Commerce Community Forum

Froogle Modul Automatisieren + Übertragung


Sirmad

Recommended Posts

HI Leute

hab in der Suchmaschine bisher zu diesem Thema einfach nichts gefunden.

Ich denke es wird den einen oder anderen interessieren.

Immoment importiere/exportiere ich die froogle Datei an Google Base per Hand hoch ....

Es muss doch eine Möglichkeit geben dies jeden Monat oder wenn etwas an den Preisen geändert wurde an Froogle zu schicken (Cronjob eventl.)

Was meint ihr dazu?

Ich denke mal das wird den einen oder anderen hier interessieren,da das uploaden per Hand sehr nervig ist ...

Würde mich über Antworten freuen :)

Link to comment
Share on other sites

Hallo Sirmad,

klar gibt es sowas. Wir haben eine Erweiterung für den Shop entwickelt die dies ermöglicht. Ist bei mehreren Kunden im Einsatz und funktioniert auch mit mehreren Google-Base Konten für verschiedene Länder. Es kann sowohl die Steuerklasse manuell eingestellt werden wie auch die Währung.

Aber um hier natürlich auch Hilfe für eine Selbstprogrammierung zu geben: Es muß das bestehende Modul umprogrammiert werden und via FTP-Funktionen die Exportdatei zu froogle upgeloadet werden. Die neue Export-Datei wird dann regeömäßig mit einem Cronjob aufgerufen. Bitte beachte dass Du einige "variable" sessionabhängige Einstellungen fest vorgeben mußt!

Soweit ich weiß gibt es auch noch anderen Modul von anderen Programmierern. Manche auch für unterschiedliche Exportformate. Evtl. schaust Du Dich auch da mal um.

Viele Grüße

Walter

Link to comment
Share on other sites

  • 2 months later...

Geht auch gratis und ohne Cron ;-)

Log Dich bei Goggle Base ein und aktiviere "Uploads -> Zeitplan" auf der Seite "Daten-Feeds" wo Du normalerweise die Datei hochlädst. Ist ein recht neues Feature von Base, was erst seit einigen Wochen verfügbar ist. Hast Du wohl übersehen - steht direkt über "Manuell hochladen" *g*

Google lädt dann selbst die Exportdatei in konfigurierbaren Zeitabständen von der von Dir angegebenen URL (z.B: jeden morgen um 5 von deinshop.xy/export/artikelliste.txt).

Musst dann halt nur noch immer eine aktuelle Version auf Deinem Server vorhalten. ;)

Cheers,

IaN

Link to comment
Share on other sites

Habe alles installier bekomme aber folgende Fehlermeldung :confused:

Warning: process(/www/htdocs/w0092784/Net/FTP.php) [function.process]: failed to open stream: No such file or directory in /www/htdocs/w0092784/admin/includes/modules/export/froogle.php on line 194

Warning: process(/www/htdocs/w0092784/Net/FTP.php) [function.process]: failed to open stream: No such file or directory in /www/htdocs/w0092784/admin/includes/modules/export/froogle.php on line 194

Fatal error: process() [function.require]: Failed opening required '/www/htdocs/w0092784/Net/FTP.php' (include_path='.:/usr/share/php:..') in /www/htdocs/w0092784/admin/includes/modules/export/froogle.php on line 194

Hoffe es kann mir jemand Helfen

PS: Runterladen funktioniert aber nicht auf dem Server speichern

Hat sich erledigt danke

Link to comment
Share on other sites

Geht auch ohne PEAR und der NET Verzeichnis:

Vorhandene if ( MODULE_FROOGLE_FTP_STATUS == true )Abfrage mit folgendes ersetzen

if ( MODULE_FROOGLE_FTP_STATUS == true )

{

// Make connection

$connection_id = ftp_connect(MODULE_FROOGLE_FTP_SERVER);

// Login

ftp_login($connection_id, MODULE_FROOGLE_FTP_USER, MODULE_FROOGLE_FTP_PASS);

// file upload

ftp_put($connection_id, MODULE_FROOGLE_FILE, DIR_FS_DOCUMENT_ROOT.'export/'.MODULE_FROOGLE_FILE, FTP_ASCII))

// close connection

ftp_quit($connection_id);

}

Natürlich sollten Abfragen und Fehlermeldungen eingebaut werdenfalls irgendwas fehlerhaft ist aber das sind die Basisfunktionen für einen ftp Upload.

Link to comment
Share on other sites

  • 1 month later...

Geht auch ohne PEAR und der NET Verzeichnis:

Vorhandene if ( MODULE_FROOGLE_FTP_STATUS == true )Abfrage mit folgendes ersetzen

if ( MODULE_FROOGLE_FTP_STATUS == true )

{

// Make connection

$connection_id = ftp_connect(MODULE_FROOGLE_FTP_SERVER);

// Login

ftp_login($connection_id, MODULE_FROOGLE_FTP_USER, MODULE_FROOGLE_FTP_PASS);

// file upload

ftp_put($connection_id, MODULE_FROOGLE_FILE, DIR_FS_DOCUMENT_ROOT.'export/'.MODULE_FROOGLE_FILE, FTP_ASCII))

// close connection

ftp_quit($connection_id);

}

Natürlich sollten Abfragen und Fehlermeldungen eingebaut werdenfalls irgendwas fehlerhaft ist aber das sind die Basisfunktionen für einen ftp Upload.

Hallo Rovert,

Dein Eintrag ist zwar schon etwas her, aber er funzt super.

Für diejenigen, die wie Axel Fehlermeldungen erhalten:

Die Zeile

ftp_put(
$connection_id, MODULE_FROOGLE_FILE,
DIR_FS_DOCUMENT_ROOT.'export/'.MODULE_FROOGLE_FILE,
FTP_ASCII))[/PHP]

muss wie folgt geändert werden (man beachte das Ende der Zeile):

[PHP]ftp_put(
$connection_id, MODULE_FROOGLE_FILE,
DIR_FS_DOCUMENT_ROOT.'export/'.MODULE_FROOGLE_FILE,
FTP_ASCII);[/PHP]

Tschö

MarkOtti

Link to comment
Share on other sites

Mark, danke und für alle die mein Code ausprobiert haben und Problemen bekommen haben: sorry.

Ich stelle öfters Codeschnipseln ins Forum und habe, ehrlich gesagt, diesmal nicht darauf geachtet. 99 von 100 der PHP Programmiererleid (Semikolons) sind von mir aber richtig platziert.

T

Link to comment
Share on other sites

  • 1 month later...

Ich habe mich bereits bei Google-Base angemeldet und das weiter oben erwähnte froogle Modul installiert. Leider bekomme ich bei dem Versuch, die Feed-Datei zu erstellen immer folgende Fehlermeldung:

Warning: froogle::require(/opt/lampp/htdocs/takeaseat/html/Net/FTP.php) [function.froogle-require]: failed to open stream: No such file or directory in /opt/lampp/htdocs/takeaseat/html/admin/includes/modules/export/froogle.php on line 230

Fatal error: froogle::require() [function.require]: Failed opening required '/opt/lampp/htdocs/takeaseat/html/Net/FTP.php' (include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/takeaseat/html/admin/includes/modules/export/froogle.php on line 230

Kann mir irgend jemand weiterhelfen? Ich verstehe den Fatal Error nicht wirklich...einer von euch vielleicht?

Link to comment
Share on other sites

Ich habe mich bereits bei Google-Base angemeldet und das weiter oben erwähnte froogle Modul installiert. Leider bekomme ich bei dem Versuch, die Feed-Datei zu erstellen immer folgende Fehlermeldung:

Warning: froogle::require(/opt/lampp/htdocs/takeaseat/html/Net/FTP.php) [function.froogle-require]: failed to open stream: No such file or directory in /opt/lampp/htdocs/takeaseat/html/admin/includes/modules/export/froogle.php on line 230

Fatal error: froogle::require() [function.require]: Failed opening required '/opt/lampp/htdocs/takeaseat/html/Net/FTP.php' (include_path='.:/opt/lampp/lib/php') in /opt/lampp/htdocs/takeaseat/html/admin/includes/modules/export/froogle.php on line 230

Kann mir irgend jemand weiterhelfen? Ich verstehe den Fatal Error nicht wirklich...einer von euch vielleicht?

Hallo Gandalf,

Deinen Verzeichnissen nach gehe ich davon aus, dass Dein Webserver unter Linux läuft. Laut php.net (http://de3.php.net/manual/de/ftp.installation.php) wird hier die FTP-Function nicht automatisch mitinstalliert.

Wenn Du Zugriff auf Deinen Server hast, kannst Du dies schnell und einfach mit YAST2 nachinstallieren.

Wenn nicht, kann ich Dir leider auch nicht weiterhelfen. Halte Dich dann an den Tipp von Rovert.

Gruß

Markus

Link to comment
Share on other sites

Danke erst mal für die schnellen Antworten.

Mein Server läuft aber leider nicht mit Linux und ich habe die Dateien laut Anleitung ersetzt bzw. eingefügt.

Nachdem ich die beschriebenen Änderungen an der froogle.php vorgenommen habe, kommt schon in XT-Commerce folgende Fehlermeldung:

Parse error: syntax error, unexpected T_SWITCH, expecting T_FUNCTION in /opt/lampp/htdocs/takeaseat/html/admin/includes/modules/export/froogle.php on line 251

Die Zeilen sehen jetzt folgendermaßen aus:

if ( MODULE_FROOGLE_FTP_STATUS == true )

{

// Make connection

$connection_id = ftp_connect(MODULE_FROOGLE_FTP_SERVER);

// Login

ftp_login($connection_id, MODULE_FROOGLE_FTP_USER, MODULE_FROOGLE_FTP_PASS);

// file upload

ftp_put($connection_id, MODULE_FROOGLE_FILE, DIR_FS_DOCUMENT_ROOT.'export/'.MODULE_FROOGLE_FILE, FTP_ASCII);

// close connection

ftp_quit($connection_id);

}

// FTP Übertragung starten

$google_ftp = new PHP_FTP(MODULE_FROOGLE_FTP_SERVER,MODULE_FROOGLE_FTP_USER,MODULE_FROOGLE_FTP_PASS,21);

$google_ftp->send(DIR_FS_DOCUMENT_ROOT.'export/'.MODULE_FROOGLE_FILE,MODULE_FROOGLE_FILE,true);

$google_ftp->kill();

//print_r($google_ftp);

}

Link to comment
Share on other sites

Danke erst mal für die schnellen Antworten.

Mein Server läuft aber leider nicht mit Linux und ich habe die Dateien laut Anleitung ersetzt bzw. eingefügt.

Nachdem ich die beschriebenen Änderungen an der froogle.php vorgenommen habe, kommt schon in XT-Commerce folgende Fehlermeldung:

Parse error: syntax error, unexpected T_SWITCH, expecting T_FUNCTION in /opt/lampp/htdocs/takeaseat/html/admin/includes/modules/export/froogle.php on line 251

Die Zeilen sehen jetzt folgendermaßen aus:

if ( MODULE_FROOGLE_FTP_STATUS == true )

{

// Make connection

$connection_id = ftp_connect(MODULE_FROOGLE_FTP_SERVER);

// Login

ftp_login($connection_id, MODULE_FROOGLE_FTP_USER, MODULE_FROOGLE_FTP_PASS);

// file upload

ftp_put($connection_id, MODULE_FROOGLE_FILE, DIR_FS_DOCUMENT_ROOT.'export/'.MODULE_FROOGLE_FILE, FTP_ASCII);

// close connection

ftp_quit($connection_id);

}

// FTP Übertragung starten

$google_ftp = new PHP_FTP(MODULE_FROOGLE_FTP_SERVER,MODULE_FROOGLE_FTP_USER,MODULE_FROOGLE_FTP_PASS,21);

$google_ftp->send(DIR_FS_DOCUMENT_ROOT.'export/'.MODULE_FROOGLE_FILE,MODULE_FROOGLE_FILE,true);

$google_ftp->kill();

//print_r($google_ftp);

}

Hallo Gandalf,

dieser Fehler deutet i.d.R. auf einen Programmierfehler hin.

So sehe ich auf anhieb ein } zuviel. Jedenfalls in Deinem obigen Auszug.

Schau mal nach, ob Du jede Befehlszeile mit einem ; abschließt und ob alle geöffneten Klammern (normale, eckige und geschweifte) auch wieder geschlossen werden.

Grüße

Markus

Link to comment
Share on other sites

Das da brauchst Du nicht... Ist doppeltgemoppelt

// FTP Übertragung starten

$google_ftp = new PHP_FTP(MODULE_FROOGLE_FTP_SERVER,MODULE_FROOGLE_F TP_USER,MODULE_FROOGLE_FTP_PASS,21);

$google_ftp->send(DIR_FS_DOCUMENT_ROOT.'export/'.MODULE_FROOGLE_FILE,MODULE_FROOGLE_FILE,true);

$google_ftp->kill();

//print_r($google_ftp);

}

Link to comment
Share on other sites

Es funktioniert wirklich phantastisch.

Leider steht aber bei der Artikelbeschreibung als erstes ein Hilfstext von der Internetseite ("Klicken Sie mit dem Mauszeiger auf das jeweilige Bild, um es zu vergrössern."). Wie kann ich dies verhindern?

(Seite: z.B. http://www.takeaseat.de/product_info.php?info=p74_Xenon-Schwarz---Chefsessel.html)

Irgendwelche Tipps?

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...