Bilder, Thumbnails & URLs - the neverending story

Hallo,

ich muss/möchte Artikelbilder extern verlinken.

  1. Versuch: Die wohl mühsamste Variante. URL im Mediamanager rausgesucht, umständlich kopiert und auf externer Seite eingefügt - funktioniert NICHT, weiße Seite

  2. Versuch: Aufgrund der Menge die Bild-URL aus dem Produktexport genommen. Dort ist angegeben www.domain.de/media/image/af/e1/14/bildname_1280x1280.jpg Über diese URL kann ich das Bild auch im Browser aufrufen. Ich möchte jedoch nicht 1280x1280, sondern meine Originalgröße 700x700 Pixel.

Gebe ich www.domain.de/media/image/af/e1/14/bildname.jpg (mein Originalname und die Anzeige im Mediamanager) im Browser ein, wird wieder NICHTS angezeigt.

Warum ist das so? Die Datei mit diesem Namen ist doch vorhanden.

Danach folgendes getestet:

www.domain.de/media/image/af/e1/14/bildname_200x200.jpg

www.domain.de/media/image/af/e1/14/bildname_600x600.jpg

beides nicht Aufrufbar.

Die Einstellungen für die Artikelbilder sind unverändert von sw übernommen worden. D.h. es müssten doch die 200er, 600er und 1280er Thumbnails abrufbar sein. Und das Original natürlich auch.

Nun rufe ich per ftp den ordner media/image auf und schaue in o.g. Ordner sowie in diverse andere zum Vergleich. In einem Ordner ist eine 600er, im anderen eine 200er und in wieder einem anderen eine Originaldatei ohne Thumbnailergänzung.

Sollten nicht in jedem Ordner das Original +  die 3 Thumbnails sein?

Ganz nebenbei habe ich ein Produktbild gefunden, das ich vor 5 Monaten über den Mediamanager gelöscht habe. Wie kann das sein? Zu diesem Zeitpunkt wurde noch mehr gelöscht, also sind da jetzt überall Karteileichen dazwischen, die Speicher fressen…

 

Dazu, dass bestens optimierte Bilder der Einkaufswelt bei einer Thumbnail mit geringerer Pixelzahl als das Original mehr Speicher benötigen, so dass google auf 84% Einsparmöglichkeit kommt, will ich erst einmal gar nicht eingehen…

 

Die verschiedenen Größen sind nicht im selben Ordner! In deinem Fall ist 1200x1200 in image/af/e1/14/

die 600er und anderen Größeren aber woanders.

Du kannst aber den Export anpassen, dass er dir die richtige Größe exportiert.

Die Sache ist umständlich - aber es gibt einen Workaround, wenn der auch kurz eine Fehler-Mail provozieren kann.
Wir gehen davon aus, ein Bild ist vom Namen her nicht doppelt vorhanden - z.B. Bildname. jpg
Bildname.jpg - wird für 200x200 zu Bildname_200x200.jpg
Erst mit diesen „Größen“-Ergänzungen wird nun ein „Hash“ gebildet, die ersten Stellen davon bilden die drei kryptischen Unterverzeichnisse. Darum liegen Thumbnails auch an einer anderen Stelle. Wenn Du den Pfad ermitteln willst, lass Dir von Shopware den Weg zeigen, und provoziere einen „Legacy Media“-Fehler - der Dir dann aber den richtigen Link zeigt.
Du willst also den Link zum 600er-Thumbnails haben:
Im Browser eingeben: deinedomain.de/media/image/Bildname_600x600.jpg
Shopware ermittelt daraus nun die neue Url, und leitet den Browser auf den richtigen Pfad um (und generiert dabei die nervige „Legacy Media“ Fehlermeldung).
Nun kannst Du aus der Adresszeile im Browser den korrekten Link zum Bild/Thumbnail rauskopieren.

Warum einfach, wenn es auch umständlich geht scheint bei SW die Devise zu sein.  Wearing-Sunglasses

Einfacher ist doch der „Produktexport“ mit einem Template {$sArticle.image|image:1}

Da kann man doch die verschiedenen Größen ausgeben. 1 | 2 | 3 …

Persönliche Ansichtssache Wink backend anmelden, Artikel suchen, Artikeltexport anschmeissen, Datei downloaden, Datei öffnen, Eintrag raussuchen und kopieren - oder einmal kurz einen Dateinamen im Browser eingeben? Kann man drüber streiten  Sticking-out-tongue
Sind zwei Wege - einer wird schon passen.  Wearing-Sunglasses

Sinvoller wäre es, wenn SW bereits im Mediamanager alle Links zum Bild und Thumbnails bereitstellen würde. *unrealistische Träumerei*

Der Gedanke, dass die möglicherweise doch in verschiedenen Ordner liegen, kam mir auch eben, als ich die URL der Originaldatei im Mediamanager abgeglichen habe. Dennoch kann ich über die im Mediamanager angezeigte URL kein Bild aufrufen.

 

In der Exportdatei steht für 1280x1280:

{$sArticle.image|image:2|escape}{#S#}

wie sind hier die Variablen für die Originalgröße, 200er und 600er?

Könnte man in die Produktdatei auch eine Variable für den Bildtitel eingeben?

 

Und zu guter Letzt: Wieso habe ich Bilddateien in den Verzeichnissen, die längst gelöscht werden?

 

 

Oh, danke euch beiden, ich hab zu lange zum Schreiben gebraucht und nur den ersten Beitrag gesehen :slight_smile:

Tatsächlich ist - da ich alle URLs benötige - die Exportdatei ideal. Das mit den Größen 1, 2, 3 probiere ich aus, was welche ist. Logisch wäre für mich, dass 1 oder 3 die größte ist, ist aber wohl 2 :slight_smile:

EDIT: Nr. 3 gibt es nicht. 0=200er, 1=600er, 2=1280er - Die Originaldatei {$sArticle.image|image|escape}{#S#}

 

Sinvoller wäre es, wenn SW bereits im Mediamanager alle Links zum Bild und Thumbnails bereitstellen würde. *unrealistische Träumerei*

Da stimme ich zu. Das gesamte Bildhandling und die URL sind für mich die Katastrophe. 99% der Besucher kommen aufgrund des Produktes über die Bildersuche. Da sind die vielen Unterverzeichnisse absolut schädlich.

Der Austausch eines Bildes bei einem Produkt ist sehr zeitaufwendig. Meine bisherige Vorgehensweise beim alten Shopsystem: neue Bilddatei mit identischem Namen der alten hochladen und fertig. Entweder habe ich die alte überschreiben lassen oder habe alle gelöscht und dann hochgeladen. In diesem Fall waren für 2 Minuten keine Produkbilder um FE, aber dann alles wieder da.

Das funktioniert hier überhaupt nicht. Selbst wenn ich die Bilder eines Artikelordners im Mediamanager lösche und dann mit gleichem Namen nochmals hochlade (d.h. die URL ist ja wieder die alte) wird nichts mehr angezeigt und ich muss jeden Artikel aufrufen und neu zuordnen. Der Witz ist dann noch, dass im BE das Bild als vorhanden angezeigt wird und auch dort gelöscht und neu ausgewählt werden muss.

Diese Aktionen habe ich aufgrund von Bildrechten häufiger und das betrifft dann immer viele Dateien.

 

Zwei Fragen sind noch offen:

Wie finde/lösche ich die Karteileichen?

Wieso funktioniert die im Mediamanager beim Bild angegebene URL nicht?

 

LG

Die Bildgröße mit  0 1 2 stammt aus den Einstellungen.

Hier zu finden:

Wenn du ein Bild ändern willst, dann hat es doch einen Grund was anders ist am Bild. Also nennen das Bild nicht genauso. Dann gibts auch keine Probleme mit dem Upload und Shopware macht das selbstständig.

Bilder die nicht mehr Artikeln zugewiesen sind, werden per Cron in den Papierkorb geschoben.

Dann gibt es einen Befehl um die Bilder löschen zu lassen. Geht per Console

sw:thumbnail:cleanup                  Deletes thumbnails for images whose original file has been deleted.

Bei mir ist das mit den Bildern, wie bei anderen mit der URL. Wenn ein Bild gut rankt, tausche ich es nicht aus. Also muss die URL des Bildes gleich bleiben. Shopware macht doch da nichts selbständig. Ich muss doch die Bilder in den gewünschten Ordner schieben, das Produkt aufrufen und das Bild zufügen. Oder erst Produkt aufrufen, Bild zuordnen und dann nachher im Mediamanager in den gewünschten Ordner schieben.

Bilder, die nicht zugewiesen sind automatisch löschen zu lassen, hört sich gut an. Alles weitere ist für mich noch Fachchinesisch. Da muss ich mich noch etwas einlesen.

 

Mit eurer Hilfe hier, trau ich es mir schon fast zu, eine Bildersitemap zu erstellen :slight_smile: optimal wärs, wenn ich noch eine Variable für den Bildtitel finden könnte. Meine Experimente führen bisher nicht zum Ziel…

Edit: wenn ein Artikel mehrere Bilder hat, haben diese dann eigene Variablen. Im Moment wird mir nur das erste in der gewählten Größe ausgegeben…

im Produktexport Template kannst du dir die mehreren Bilder ausgeben lassen.

hier z.b. Kommagetrennt in einer Zeile:

{assign var="string" value=$sArticle.articleID|articleImages:$sArticle.ordernumber:1:">"|escape}
{assign var="productVariantImage" value=">"|explode:$string}
{$productVariantImage[1]},{$productVariantImage[2]},{$productVariantImage[3]}{#S#}

http://community.shopware.com/Produktexporte_detail_814.html

Abschnitt: Variantenbilder / weitere Artikelbilder

$sArticle.ordernumber:1:" -> sagt wieder welche Größe -> 0 1 2

An den Bildtext sollte man auch ran kommen. Weiß aber gerade nicht wie

@derkosta schrieb:

An den Bildtext sollte man auch ran kommen. Weiß aber gerade nicht wie

Müsste {$sArticle.image.description} sein.

1 „Gefällt mir“

den Beitrag habe ich heute auch schon hoch und runter gelesen, nur sieht dieser Aufbau irgendwie völlig anders aus, als der Rest meines Codes…

Ich habe ja nun 2 versch. Exporte angelegt.

Einmal CSV zur internen Verwendung mit Artikel- und Bild-URL:

{strip}
{$sArticle.articleID|link:$sArticle.name|escape}{#S#}
{$sArticle.articleID|category:">"}{#S#}
{$sArticle.name|escape|truncate:70}{#S#}
{$sArticle.description_long|strip_tags|strip|trim|truncate:150:"...":true|html_entity_decode|escape}{#S#}
{$sArticle.price|escape:"number"}{#S#}
{$sArticle.ordernumber}{#S#}
{$sArticle.image|image|escape}{#S#}
{$sArticle.image|image:0|escape}{#S#}
{$sArticle.image|image:1|escape}{#S#}
{$sArticle.image|image:2|escape}{#S#}
....

 

und dann eine xml mit diesen Variablen:

    {$sArticle.articleID|link:$sArticle.name|escape}
    
      {$sArticle.image|image|escape}
	  {$sArticle.name|escape|truncate:70}

 

Wenn ich mir die Produktexporte in xml und csv anschaue, die schon voreingestellt sind, ist die Schreibweis doch anders als du es jetzt geschrieben hast… das bekomm ich so irgendwie nicht zusammen.

es sollte da einmal die Zeile loc stehen mit der ArtikelURL

Darunter die Bildangaben. Dieser Blog mit den Bildangaben dann 3-4 x jeweils mit dem weiteren Produktbild.

Ich nehme auch an, es macht einen Unterschied, ob es weitere Produktbilder oder Variantenbilder sind. Ich habe alle Bilder nur dem Elternartikel zugeordnet.