it-swarm.com.de

Wie benenne ich Bilddateien in einer mehrsprachigen Site?

Ich habe eine Website mit zwei Sprachen: Englisch und Spanisch zum Beispiel. Was wäre die richtige Konvention, um Bilddateien zu benennen?

Aus meiner Sicht wäre es dumm, ein Bild zu duplizieren und es danach zu benennen, auf welcher Site es hochgeladen wird. Es wäre Ressourcenverschwendung, IMO und unnötige Arbeit zu erledigen.

Was denkst du über diesen?

6
RhymeGuy

Wenn das Duplizieren des Bildes wirklich unnötig ist, könnten Sie vielleicht immer noch das Beste aus beiden Welten haben ... Speichern Sie das Bild nur einmal, aber lassen Sie es durch verschiedene Dateinamen für die verschiedenen Sprachen referenzieren - mit mod_rewrite (Apache) und einem internen Rewrite.

Basierend auf dem Beispiel von unor:

  • example.net/img/en/house.png
  • example.net/img/es/casa.png

Diese werden intern neu geschrieben, um eine Anforderung an Ihr serverseitiges Skript zu senden:

  • imgScript.php? file = de/house.png
  • imgScript.php? file = es/casa.png

Ihr Skript kann für beide angeforderten Dateien dasselbe Image bereitstellen, möglicherweise mit einem einfachen assoziativen Lookup-Array:

array (
  'en/house.png' => 'real/path/to/my-house-pic.png',
  'es/casa.png' => 'real/path/to/my-house-pic.png',
  // etc.
);

Mit dieser Methode können Sie verschiedene Bilder für bestimmte Dateien bereitstellen, wenn Sie dies wünschen.

3
MrWhite

Zwei Lösungen, bei denen der Dateiname nicht geändert werden muss, aber ein anderer Dateipfad angegeben wird:

  1. Erstellen Sie verschiedene Domänen, die an dasselbe Verzeichnis weiterleiten, in dem die Site dann die Sprache erkennt und die Server Pfade/Site-Inhalte korrigieren. z.B. website.es würde Inhalt aus website.com ziehen, so dass website.com/picture.jpg zu website.es/picture.jpg wird

  2. Verwenden Sie in ähnlicher Weise Subdomains auf der Website 'main' (für mich ist dies die erste Website und normalerweise die Sprache des Websitebesitzers/Hauptadministrators) wie es.website.com und dk.website.com (dies ist auch billiger :)) und verwenden Sie der gleiche Ansatz wie oben, bei dem die Site aus einem Verzeichnis gezogen und sprachspezifische URLs wie es.website.com/picture.jpg abgerufen werden

Was diese beiden Lösungen nicht bieten, ist ein aussagekräftiger Dateiname wie zuvor angegeben table.jpg oder mensa.jpg

Die Verwendung von Metainformationen wie alt und title sowie die Angabe des umgebenden Inhalts und der Sprache der Seite, auf der sich die Datei befindet, wird dies jedoch kompensieren. Mit beiden oben genannten Lösungen können Sie auch die Geolokalisierung der Website-URL (und des Inhalts) in den Google Webmaster-Tools festlegen.

Das klingt nach viel Arbeit, aber wenn Sie ein beliebtes CMS verwenden, gibt es Plugins dafür.

2
S..

Nun, es gibt 4 Möglichkeiten, um Ihre Bilder nicht zu duplizieren:

  • auf Englisch (house.png)
  • auf Spanisch (casa.png)
  • in Englisch und Spanisch (house_casa.png oder casa_house.png)
  • kein sprachlicher Inhalt: (alpha-) numerische ID, Datum (2012-09-25.png, 123.png,…)

Aber ich würde sie kopieren. Bilder sind auch Inhalte wie Text, PDF, Videos, Audio usw. Im Allgemeinen verfügen Sie wahrscheinlich über (oder benötigen) eine Infrastruktur, mit der Sie übersetzte Mediendateien bereitstellen können. Natürlich gibt es Mediendateien, die keine Übersetzung benötigen (Stummfilme, Fotos ohne Textinformationen usw.), aber ich sehe sie gerne als Ausnahmen (egal, ob sie es wirklich sind).

Also würde ich mitgehen (auch wenn die Bilder gleich wären):

  • example.net/en/house.png
  • example.net/es/casa.png
1
unor