Onkel Hans: Deutsch-Englische Homepage Version, sitemap.xml und Eintragung bei GOOGLE

Hallo, liebe Forengemeinschaft,

ich bin gerade am Erstellen der Homepage meines kleinen Unternehmens und möchte dabei auch die meisten Seiten auf Englisch anbieten. Das Konzept ist folgendermaßen:

Jede Seite der deutschen Version, die es auch in Englisch gibt, hat oben einen „English Version“ Link. Das betrifft allerdings nicht alle deutschen Seiten, nur die wichtigsten. Umgekehrt hat jede englische Seite oben einen „Deutsche Version“ Link. Das betrifft somit alle englischen Seiten.

Meine Überlegung: Kommt jetzt eine englischsprachige Person auf die Startseite, dann sieht sie diese zunächst in Deutsch mit dem „English Version“ Link. Klickt sie da drauf, landet sie auf der englischsprachigen Startseite. Von dort aus ist für sie jede Seite, zu der sie kommen kann, englisch, weil deutschsprachige Seiten, für die es kein englisches Äquivalent gibt, gar nicht verlinkt/angezeigt werden.

Nun ist es so, dass ich alle Seiten des Internetauftritts via .htaccess Datei über eine lesefreundliche Kurz-URL aufrufen lasse. Also zB. statt

example.org/verschiedenes/zum_lesen/blog/rezepte/2023-06-08_gurkensalat_rezept.php

mit

example.org/blog/2023-06-08_gurkensalat_rezept

Mein Plan, die deutschen Seiten zu benennen, ist folgender:

example.org
example.org/blog
example.org/blog_weihnachten_1965
example.org/ueber_mich
example.org/kontakt

Und die dazugehörenden englischen Versionen:

example.org/en
example.org/en/blog
example.org/en/blog_christmas_1965
example.org/en/about_me
example.org/en/contact

Das heißt, es gibt nur ein „en“ als Teil der Kurz-URL, aber nie ein „de“. Ich habe das schon oft so gesehen. Genau so oft habe ich aber auch schon gesehen, dass bei solch einer Situation die deutschen Seiten ein „de“ als Teil der URL enthalten. Und das bringt mich jetzt zu meiner ersten Frage: Spricht irgendetwas dagegen, die Seiten so zu benennen, wie oben beispielhaft angegeben?

Meine 2. Frage, nachdem ich mit dieser Thematik noch nie zu tun hatte: Erstmalig in meinem Leben werde ich eine Seite bei GOOGLE eintragen. Was die deutsche Version betrifft: Reicht es da, die Indexseite einzutragen bei GOOGLE? Weil die anderen Seiten wären eigentlich anhand einer vorhandenen sitemnap.xml erkennbar. Oder muss ich jede einzelne Seite eintragen? (Dann müsste ich ja zB. bei einem Blog den Permalink jedes neuen Eintrags immer als zusätzliche Seite eintragen. Oder reicht auch hier, einfach die sitemap.xml zu erweitern?)

Meine 3. Frage: Und wie mache ich das jetzt mit den englischen Teilen der Homepage? Nämlich sowohl bei der sitemap.xml als auch bei der GOOGLE Eintragung. Ich habe schon eine Zeit lang versucht, herauszufinden, wie ich da richtig vorgehe, aber ich bin ehrlich gesagt überfordert und weiß nicht wirklich, was da der richtige Weg ist. Ich bitte um Hilfe, vielleicht kann man mir hier sagen, wie ich vorgehen soll.

Zusammengefasst:

1.) Gibt es eine eindeutig richtige Methode, wie man Seiten bei einem 2-sprachigen Webauftritt benennen soll oder irgendetwas, was zu beachten ist?

2.) Wird bei GOOGLE nur die Indexseite eines Webauftritts eingetragen oder alle Unterseiten auch?

3.) Wie geht man bei der englischsprachigen Version einer Seite bei der sitemap.xml und bei der GOOGLE Eintragung vor? Wie lässt man Google wissen, dass es sich um den Auftritt eines (!) Unternehmens in 2 Spachen handelt und nicht um 2 verschiedene Projekte?

Ich werde die nächste Zeit wahrscheinlich noch weitere Unklarheiten bzgl. meines Webauftritts haben. Aber das hier ist das, was mich momentan am aktuellsten beschäftigt. Schon jetzt Danke im Voraus für jede Hilfe und jeden Denkanstoß!

Liebe Grüße

Onkel Hans

  1. @@Onkel Hans

    Meine Überlegung: Kommt jetzt eine englischsprachige Person auf die Startseite, dann sieht sie diese zunächst in Deutsch mit dem „English Version“ Link.

    Eine englischsprachige Person sollte nicht zunächst auf der deutsche Seite landen. Wenn deren Browser im HTTP-Header Englisch als bevorzugte Sprache angibt, sollte dein Server das berücksichtigen und gleich die englische Seite (sofern vorhanden) ausliefern: Sprachvereinbarung (language negotiation) (Diese Seite ist selbst ein Beispiel dafür.)

    Ein Link zur anderen Sprachversion muss dennoch auf der Seite sein, weil automatische Sprachvereinbarung nicht immer zum richtigen Ergebnis führt.

    Das heißt, es gibt nur ein „en“ als Teil der Kurz-URL, aber nie ein „de“. Ich habe das schon oft so gesehen. Genau so oft habe ich aber auch schon gesehen, dass bei solch einer Situation die deutschen Seiten ein „de“ als Teil der URL enthalten. Und das bringt mich jetzt zu meiner ersten Frage: Spricht irgendetwas dagegen, die Seiten so zu benennen, wie oben beispielhaft angegeben?

    Ja. Der generische URL ohne „de“ und „en“ sollte für verschiedene Nutzer zu verschiedenen Sprachversionen führen – je nach deren Einstellungen für ihre bevorzugten Sprachen (Plural!).

    Die URLs mit „de“ bzw. „en“ führen fest verdrahtet zu den jeweiligen Sprachversionen.

    🖖 Живіть довго і процвітайте

    --
    „Ukončete, prosím, výstup a nástup, dveře se zavírají.“
    1. Hallo Gunnar,

      Eine englischsprachige Person sollte nicht zunächst auf der deutsche Seite landen. Wenn deren Browser im HTTP-Header Englisch als bevorzugte Sprache angibt, sollte dein Server das berücksichtigen und gleich die englische Seite (sofern vorhanden) ausliefern: Sprachvereinbarung (language negotiation) (Diese Seite ist selbst ein Beispiel dafür.)

      Ich nehme an, dafür braucht man aber tatsächlich einen eigenen Server. Das ist nicht der Fall bei mir, ich habe ganz normalen Webspace bei einem deutschen Webspaceanbieter und keinen Zugriff auf irgendwelchen Servereinstellungen. Oder ist das etwas, was ich mit .htaccess machen kann?

      Unabhängig davon: Ist es jetzt schlimm oder nicht, wenn ich die Seiten der deutschen Version (also dem Hauptbestandteil des Internetauftritts) mit den Kurz-URLs ohne dem "de" darin aufrufen lasse?

      Und wie ist das mit der Eintragung bei GOOGLE? Ich habe in der Zwischenzeit noch immer keine wirkliche Seiute gefunden, wo das (vor allem bei Seiten in 2 Sprachen) für jemanden, der das noch nie getan hat, wirklich verständlich erklärt wird. =/

      Liebe Grüße

      Onkel Hans

      1. Hallo Onkel Hans,

        Du hast URLs zu PHP Skripten. Sind das deine eigenen Skripte? Darin kannst du den accept-language Header abfragen.

        Alternativ gibt es auch Apache Parameter zur Content Negotiation, ich weiß nur nicht ob das für dich passt. Guck mal.

        Rolf

        --
        sumpsi - posui - obstruxi
        1. Servus!

          Im SELF-Wiki:

          PHP/Tutorials/Sprachauswahl_mittels_Accept_Language

          Der Browser kann laut HTTP-Spezifikation mehrere Sprachen mitsenden, die der Benutzer bevorzugt. Der Benutzer kann dabei festlegen, in welcher Reihenfolge er diese bevorzugt. Dieser Artikel zeigt, wie Sie die im Browser (vom Nutzer) eingestellten Sprachen ermitteln, damit der Webserver die Seite in der passendsten Sprache ausliefern kann. Dieses Feature nennt man "Content Negotiation".

          Der Apache-Webserver bietet Mechanismen an, dies durchzuführen, jedoch erfordert dies, für jede unterschiedene Sprache eine eigene Datei anzulegen. Dies mag bei statischen Seiten sehr praktisch sein, bei dynamischen Seiten kann es den Wartungsaufwand beträchtlich erhöhen. Auch möchte man unter Umständen besser in den Mechanismus eingreifen können. Und schließlich kooperiert PHP auch mit anderen Webservern als dem Apache.

          Herzliche Grüße

          Matthias Scharwies

          --
          Ich habe heute rausgefunden, dass in das Pizzafach meines Rucksacks auch ein Laptop passt!
        2. Hallo Rolf!

          Danke, ich habe mir das jetzt angesehen, der Aufwand wäre in meinem Fall ein mit Hyperschallraketen auf Spatzen schießen. Ich kann davon ausgehen, dass von den Leuten, die meine Homepage besuchen werden, sicher mindestens 95% deutschsprachig sind. Da recht mir für die restlichen 5% als zusätzliches Angebot mein Plan, dass ich alle relevanten Seiten auf Englisch anbiete und auf den dutschen Äquivalenten einen ENGLISH VERSION Link platziere.

          Somit erscheint es mir auch in Ordnung, meinen ursprünglichen Plan umzusetzen: Bei den englischen Seiten ein example.org/en statt example.org und somit bei den deutschsprachigen Seiten nichts anhängen. Wenn ich diese automatische Sprachauswahl nicht verwende, spricht somit ja nichts dagegen, wenn ich das richtig verstanden habe.

          Jetzt hoffe ich immer noch, dass mit wer erklärt, wie das bei der Anmeldung der Seite bei GOOGLE funktioniert. Speziell im Hinblick auf die 2 Sprachen. Und wie lege ich die Struktur in der sitemap.xml fest? Also bei diesen beiden Punkte stehe ich wirklich ratlos da. =/

          Liebe Grüße

          Onkel Hans

  2. Lieber Onkel Hans,

    auf meiner privaten Seite verwende ich sprechende URLs, die auch die jeweilige Sprachversion andeuten. Das bedeutet, dass ein URL immer eindeutig auf eine bestimmte Sprachversion verlinkt, ganz ohne ein /de/ oder /en/ im URL Beispiel:

    Die Home-Page ist davon ausgenommen, da / als URL keinen Hinweis auf die Sprache gibt. Deswegen verwendet die Home-Page einen Mix aus Mechanismen, die ich in meinem PHP-Script umsetze. Zuerst wird geprüft, ob es ein Session-Cookie gibt, welches eine Sprachwahl enthält. Wenn nicht, dann wird der HTTP-Header des Browsers verwendet, um die gewünschte Sprache zu erraten, und wenn es den auch nicht gibt, dann kommt eben die deutsche Sprachvariante zum Zug.

    Natürlich gibt es auf jeder Seite eine Liste an Links zu alternativen Sprachversionen, wenn es welche gibt.

    Liebe Grüße

    Felix Riesterer