Text von externer Quelle auslesen für Onlineshop

  • Hallo,

    ich dachte es wäre die einfachste Frage auf der ich etliche Antworten per google bekomme. Aber dem ist wohl nicht so :-(

    Ich bin gerade dabei einen Onlineshop zu erstellen. Die Artikeldaten kommen per CSV wo die Bilder und die Artikelbeschreibungen extern (html-Link) geladen werden. Beim Datenimport habe ich jedoch das Problem dass ich den Link der Quelle geliefert bekomme aber nicht den Inhalt.
    ich bin jetzt kein Programmier-Spezialist und stehe echt etwas auf dem Schlauch. Es muss doch ein Script, href Befehl geben der diesen Link automatisiert um die Daten zu lesen bzw. zu zeigen.

    Gebe ich den Link im Browser ein, wird die Artikelbeschreibung komplett gezeigt. Im Shop jedoch nur der Link :-(

    Wäre echt toll wenn mir da jemand helfen könnte ...... ich hab jetzt etliche Stunden gegoogelt und nichts gefunden ......


    Zum Beispiel: http#://web1.stuermer3.stuermer-maschinen.de/index.php?id=4194&tx_produktkatalog_pi1[tx_productkatalog]=59577

    Diese Info liefert mir die CSV-Datei (Raute# nach http hab ich hinzugefügt damit der Link komplett gezeigt wird)


    Liebe Grüße

    Illerip

  • Na ja ... wenn ich den Artikel öffne wird lediglich der Link angezeigt. Aber es sollte so sein, dass bei Aufruf des Artikels direkt der Text, welcher über den Link extern abgerufen wird, angezeigt wird.
    Ich verstehe nicht dass dies so schwer ist. Das muss doch eine gängige Anforderung sein.
    Andere Shops holen Ihre Artikeldaten auch extern von Servern ihrer Lieferanten um die Artikelpflege denen zu überlassen. Aber wie geschrieben suche ich einen Befehl das der Link automatisch, bei Aufruf der Artikelseite, die Daten abruft.


    Ich stehe echt auf dem Schlauch momentan .....;(

  • Du schreibst zwar von CSV, aber wenn ich den Link im Browser aufrufe, kommt eine HTML-Datei, die ganz normal im Browser angezeigt wird. Ein einfaches Verfahren, diese anzuzeigen, ist ein iFrame:

    http://wiki.selfhtml.org/wiki/…rschiedene_Frametechniken

    Ich wollte ein Demo bei jsfiddle machen, aber es funktioniert nicht, weil die URL keine gesicherte Verbindung hat. In einer Testdatei mit http funktioniert es jedoch.

    Code
    1. <iframe src="http://web1.stuermer3.stuermer-maschinen.de/index.php?id=4194&tx_produktkatalog_pi1[tx_productkatalog]=59577">
    2. </iframe>

    Wenn dein Shop eine sichere Verbindung hat, müsste man weiter sehen, ob es mit Ajax funktioniert.

  • Vielen Dank Sempervivum, aber mit der Framesetzung wird zwar der Text "endlich" automatisch gelesen aber in einem Frame der zumal die Artikelbeschreibung komplett an die falsche Position setzt ;(


    Die CSV-Datei, bzw. xls Datei welche ich vom Lieferanten bekommen habe beinhaltet alle Produktdaten. Lediglich die Bilder und die Artikelbeschreibung liegen bei denen auf dem Server.


    Schau selber mal .... http://kompressorenshop.de/pro…b-127-rohrbohrmaschine-2/


    Geplant war es irgendwie ohne Frame : http://kompressorenshop.de/pro…magnetkernbohrmaschine-2/


    :)

  • Ja, ein iFrame muss nicht unbedingt optimal sein. Ich habe ihn nur vorgeschlagen, weil es die einfachste Möglichkeit ist, eine externe HTML-Seite einzubetten.


    Zitat

    Die CSV-Datei, bzw. xls Datei welche ich vom Lieferanten bekommen habe beinhaltet alle Produktdaten. Lediglich die Bilder und die Artikelbeschreibung liegen bei denen auf dem Server.

    Das mit der CSV-Datei verstehe ich immer noch nicht. Erwartest Du, dass Du diese vom Lieferanten laden kannst? Wie gesagt, wenn ich die URL aufrufe, bekomme ich eine HTML-Seite mit einer lesbaren, strukturierten Beschreibung und keine CSV-Datei.


    Verstehe ich das richtig? Der erste Link (Rohrbohrmaschine) gibt an, wie die Seite ohne Artikelbeschreibung aussieht? Und der zweite (Magnetkernbohrmaschine) den Sollzustand, wie es eigentlich aussehen soll?

  • Hier die XLS Datei

    problem2.pngOh Mann .... ich glaube ich kann mich einfach nicht verständlich ausdrücken :-)

    Lieferant liefert eine XLS Datei (siehe Bild)

    Er schreibt bei den Bildern dass die Bilder über einen Skript eingelesen werden müssen. Das macht das Import-Plugin automatisch.

    Bei der Description jedoch wird ein Skript anscheinend erwartet der den Link, welcher die URL auf eine html-Seite zeigt, ausliest.


    Hier eine kleine Anleitung des Lieferanten:

    problem1.png


    Hoffe dass es jetzt etwas verständlicher ist :-)

  • Weitere Fragen: Wie entstehen denn die HTML-/PHP-Seiten, von denen Du die Links gepostet hast? Du schreibst ja, dass mit dem iFrame die Beschreibung sichtbar wird, nur komplett an der falschen Stelle. D. h. Du hast offenbar Zugriff darauf und kannst Sie ändern?


    Was ist das für ein Import-Plugin und was macht es?


    Die CSV-Datei bekommst Du offenbar vom Lieferanten. Es würde sich anbieten, diese mit PHP einzulesen und aus den Daten die Poduktseite zu generieren. Programmierst Du den Shop selber oder benutzt Du eine fertige Software?

  • http://kompressorenshop.de/produkt/rb-127-rohrbohrmaschine/


    Besser bekomme ich es anscheinend mit iframe nicht hin. Ist auch am richtigen Platz. Mich stört natürlich dass es ein Frame ist ......

    Ich hatte auf eine Lösung gesetzt welche nur den Textinhalt an dieser Position setzt. Kein Rahmen ....kein scrollen falls die Beschreibung etas länger ist.


    Der OnlineShop basiert auf WOOCOMMERCE ....Wordpress ....

    Das Plugin ist ein führendes Produkt und heißt WP ALL IMPORT

  • Na, das sieht doch schon ganz gut aus.

    Rahmen bekommst Du weg mit border:none

    Mit ein paar Zeilen Javascript kannst Du die Größe an den Inhalt anpassen, so dass die Scrollbars verschwinden:

    Code
    1. function resizeIFrameToFitContent(iFrame) {
    2. iFrame.height = $(iFrame.contentWindow.document.body).outerHeight(true);
    3. }
    4. var iFrame = document.querySelector('iframe');
    5. iFrame.onload = function() {
    6. resizeIFrameToFitContent(iFrame);
    7. }
    Zitat

    Ich hatte auf eine Lösung gesetzt welche nur den Textinhalt an dieser Position setzt. Kein Rahmen ....kein scrollen falls die Beschreibung etas länger ist.

    Eine bewährte Alternative ist, die Beschreibung mit jQuery-load in einen Container zu laden:
    http://api.jquery.com/load/