Managed Server
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: hreflang-Tags in 2.0 fehlerhaft wenn Artikel in mehreren Kategorien verlinkt ist

    p3e

    • Experte
    • Beiträge: 2.426
    Die Lösung mit den hreflang-Tags in 2.0 führen leider zu Fehlern, wenn Artikel in mehreren Kategorien verlinkt sind.
    Nach Google soll der hreflang-Tag auf die Sprachvarianten und auf sich selber verlinken. In dem Fall der Verlinkung in verschiedenen Kategorien verweist der hreflang-Tag in 2.0 aber nicht mehr auf sich selbst sondern auf den alternativen Link. Das führt zu zahlreichen Fehlern in den Webmastertools.

    Die Lösung des Problems ist, dass statt der hreflang-Tags, in dem Fall ein Conical-Tag auf den Alternativlink zu verweist. Auf der Seite auf die der Conical-Tag verweist, wird dann erst per hreflang-Tag auf die Alternativsprachen verlinkt.

    Um das zu verdeutlichen habe ich eine Grafik angehängt und hoffe, dass das verständlich ist. Auf den Seiten von Google wird das etwas konfus erklärt.
    Es wäre auch sinnvoll die Shopstat URLS mit /de/ und /en/ einzuführen.

    EDIT: Ich habe noch ne Grafik eingefügt, wie es momentan in der 2.0 falsch ist.

    [EDIT Tomcraft 19.09.2016: Screenshots aktualisiert, Danke an p3e.]

    Linkback: https://www.modified-shop.org/forum/index.php?topic=35718.0
    Managed Server

    p3e

    • Experte
    • Beiträge: 2.426
    Bin auch etwas am zweifeln, ob man bei hreflang="x-default" mit language=en nutzen sollte, denn eigentlich ist eine x-default-Seite doch die, wo anhand des Browsers entschieden wird, welche Sprache genommen wird. Eigentlich bin ich eher der Auffassung, dass man x-default weglässt, dafür aber eine eindeutige URL nutzt (also zB. www.shop.de/en/categorie1/table::32.html).

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.021
    • Geschlecht:
    Leider drückt sich Google nicht besonders verständlich aus was x-default anbelangt.
    Ich habe es bislang so verstanden, daß es den Link auf Default-Sprache des Shops zeigt, was ja dann de und sowieso nicht en wäre bei einem Shop welcher in Deutschland betrieben wird.
    Ob x-default überhaupt notwendig ist und wann genau ist mir bislang nicht klar.

    Im Übrigen kann ich deinen ersten Post bestätigen.
    Am Besten du trägst das sofort in den Bug-Tracker ein damit es nicht untergeht.

    Gruß,
    noRiddle

    p3e

    • Experte
    • Beiträge: 2.426
    Ich habe eine Lösung bereitgestellt (Google scheint die Artikel, die einen widersprüchlichen hreflang-Tag und die Verlinkung der Seite nicht mehr so gut in den Suchergebnissen zu platzieren und in den Webmastertools meldet Google immer mehr Seiten mit falschen hreflang-Tags):

    Gilt für Version 2.0. (modified eCommerce Shopsoftware 2.0.0.0 rev 9678)
    Suche in includes/modules/metatags.php nach

    Code: PHP  [Auswählen]
    if (SEARCH_ENGINE_FRIENDLY_URLS == 'true' && count($lng->catalog_languages) > 1 && (!isset($_GET['page']) || $_GET['page'] == 1))

    und ersetze es mit

    Code: PHP  [Auswählen]
    // p3e BOF 16-09-17 hreflang nur in unterster Ebene sonst canonical auf unterste Ebene
    $canonical_flag = true;
    $canonilink=xtc_href_link(basename($PHP_SELF), xtc_get_all_get_params(array('page', 'language', 'currency')));
    $canonical_flag = false;
    $aktuelllink=xtc_href_link(basename($PHP_SELF), xtc_get_all_get_params(array('page', 'language', 'currency')));
    if (SEARCH_ENGINE_FRIENDLY_URLS == 'true' && $canonilink==$aktuelllink && count($lng->catalog_languages) > 1 && (!isset($_GET['page']) || $_GET['page'] == 1)) {
    // p3e BOF 16-09-17 hreflang nur in unterster Ebene sonst canonical auf unterste Ebene
    //if (SEARCH_ENGINE_FRIENDLY_URLS == 'true' && count($lng->catalog_languages) > 1 && (!isset($_GET['page']) || $_GET['page'] == 1)) {

    Ich habe das ein bisschen getestet und konnte keine Fehler finden. Bin aber für Anregungen und Ergänzungen offen. Bitte testen und Feedback geben. Danke!

    p3e

    • Experte
    • Beiträge: 2.426
    Wenn ich Google richtig verstehe, meinen die mit x-default die Seite, von der aus man entweder automatisch oder per Links auf die jeweilige Sprachversion geleitet wird.

    In den Bugtracker habe ich das bereits eingetragen.

    lohkaes1

    • Schreiberling
    • Beiträge: 460

    Alfred

    • Experte
    • Beiträge: 2.115
    denn eigentlich ist eine x-default-Seite doch die, wo anhand des Browsers entschieden wird, welche Sprache genommen wird.

    Hallo,

    das ist definitiv falsch.
    x-default wird genommen für den Rest der Sprachen weltweit.

    Beispiel:
    Man hat "de" und "en" im Shop... "x-default" gibt dann an was die Leute in Spanien, Mexiko oder China sehen sollen.

    Gruß

    Alfred

    • Experte
    • Beiträge: 2.115
    Das führt zu zahlreichen Fehlern in den Webmastertools.

    EDIT: Ich habe noch ne Grafik eingefügt, wie es momentan in der 2.0 falsch ist.

    Hallo,

    hreflang ist im Shop richtig eingebaut.

    Natürlich kann man das auch so korrigieren das man sich um "Fehler" keine Gedanken machen muss.
    Es gibt bei hreflang sehr viele Feinheiten und Fallstricke. Nicht alles kann im Standard im Shop abgedeckt werden.

    Gruß

    p3e

    • Experte
    • Beiträge: 2.426
    Hallo,

    das ist definitiv falsch.
    x-default wird genommen für den Rest der Sprachen weltweit.

    Beispiel:
    Man hat "de" und "en" im Shop... "x-default" gibt dann an was die Leute in Spanien, Mexiko oder China sehen sollen.

    Gruß
    Alfred, ich weiß nicht wie Du da auf "definitif falsch" kommst. Hast Du dafür einen Link wo das so erklärt wird wie Du das hier darstellst?
    Im offiziellen Google Blog wird x-default folgendermaßen erklärt:
    Zitat
    The x-default hreflang value signals to our algorithms that such a page doesn’t target a specific language or locale.
    Als Beispiel dafür wird folgendes gegeben:
    Zitat
    http://example.com/: The homepage shows users a country selector and is the default page for users worldwide

    Hier nochmal so ähnlich in Deutsch:
    Zitat
    Im Fall von Auswahlmenüs für Sprache bzw. Land oder bei Startseiten, die automatisch weiterleiten, sollten Sie zudem eine Annotation für den hreflang-Wert "x-default" hinzufügen:
    https://support.google.com/webmasters/answer/189077?hl=de

    Aber x-default ist hier eigentlich auch gar nicht das Hauptthema. Ich bin mir halt nicht sicher, ob nach Google Definition x-default da richtig ist. Wichtiger ist aber der andere Punkt.

    Das führt zu zahlreichen Fehlern in den Webmastertools.

    EDIT: Ich habe noch ne Grafik eingefügt, wie es momentan in der 2.0 falsch ist.

    Hallo,

    hreflang ist im Shop richtig eingebaut.

    Natürlich kann man das auch so korrigieren das man sich um "Fehler" keine Gedanken machen muss.
    Es gibt bei hreflang sehr viele Feinheiten und Fallstricke. Nicht alles kann im Standard im Shop abgedeckt werden.

    Gruß
    Hast Du vielleicht auch dazu einen Link? Du stellst das gerade so hin, als ob ich am Shop herumdoktere, bis in den WMT keine Fehler mehr angezeigt werden und von der Materie keine Ahnung hätte.
    Ich habe mich da inzwischen ziemlich gut eingelesen und eine Grundregel ist, dass bei hreflang-Tags immer auch ein Rücklink auf die eigene Seite erfolgen muss. Diese Regel wird bisher bei Modified 2.0 aber nicht beachtet, wenn man einen Artikel in mindestens einer anderen Kategorie verlinkt hat. Ich denke nicht, dass es sich dabei um einen Sonderfall handelt sondern eher die Regel ist.

    Hier wird auch nochmal gut verständlich erklärt, wieso man im Fall von Produkten die in mehreren Kategorien vorkommen nicht den hreflang-Tag missbrauchen sollte: https://www.ranking-check.de/blog/hreflang-die-5-haeufigsten-fehler-und-hall-of-fame/

    Alfred, meistens mag ich Deine trockene Art ja einfach mal AntiAlles zu sein und es ist auch sicher mal ganz gut nochmal alles zu verwerfen um einmal vorbehaltslos ganz neu zu überlegen. Ich habe Deine Einwände genau dazu genutzt und habe noch mal eine gute Stunde im Google Blog recherchiert. Leider konnte ich keine Ansätze finden, wieso Du meinst, dass das im Shop richtig gelöst ist. In dem Fall hast Du leider unrecht.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.021
    • Geschlecht:
    Nun, ich verstehe es genauso wie p3e, was nicht bedeutet, daß es so definitiv richtig ist.
    Ich bin mir jedoch ziemlich sicher, daß es einen canonical-tag geben muß wenn ein Produkt in mehrere Kats verlinkt ist, denn dafür ist er da, der tag, um anzuzeigen, daß es sich nicht um Double Content handelt.
    Durch das nicht ganz durchsichtig von Google erklärte hreflang-Problem habe ich noch nicht ganz durchgeblickt.

    Ich finde aber, daß du, Alfred, es langsam übertreibst.
    Du bringst dem Forum, hart gesagt, rein gar nichts.
    Deine Aussagen sind immer lapidar und in den seltensten Fällen mit einer Begründung versehen.
    Damit ist der Community-Gedanke nicht nur gebrochen sondern du verwirrst damit Community-Mitglieder.
    Ich frage mich ob das deine Masche ist Kunden zu aquirieren.
    Der Community jedenfalls bringt es nichts. Period.

    Gruß,
    noRiddle

    *NACHTRAG*
    Es wäre schön wenn mal ein modified-Team-Mitglied zu dem Zhema Stellung nehmen würde, falls es zufällig jemand aus diesem Kreis lesen sollte.

    Alfred

    • Experte
    • Beiträge: 2.115
    Im 2er Shop ist hreflang drin und es ist canonical eingebaut.
    Auch da ist es unterschiedlich im Standard geregelt wenn die Anzahl der Sprachen unterschiedlich ist.

    Fall1

    2 aktivierte Sprachen de + en.
    hreflang, hreflang für"x-default" auf en.

    Fall2
    1 aktivierte Sprache z.B. de
    Kein hreflang. Dafür existiert canonical.

    Fall3
    x-default auf eine Sprachauswahlseite.
    Eine Sprachauswahlseite existiert nicht im Standardshop.
    Dorthin könnte hreflang für"x-default" verweisen.
    Dann würde jemand wieder Geo-IP oder die Browsersprache abfragen.
    Das verträgt sich überhaupt nicht

    Fall4
    Mehrere Sprachen im Shop, hreflang mit Verwendung und hreflang für "x-default"-Sprachlink.
    Dann noch canonical und alles geht schief.

    Canonical muss dann auf den hreflang-Link der aktuellen Variante verweisen.
    Sonst stimmt der Rücklink nicht wenn das nicht der Fall ist.
    Dann kann man nicht mehr Sortierungen in den Kategorien abfangen per canonical.

    Ich muss nichts begründen mir geht es auch nicht um um Kundenakquise.

    Ich habe immer versucht einen gewissen Standard in die Software zu bringen.
    Das nur damit es voran geht und die Shopbetreiber sich um SEO in Form von Bilder und Texte kümmern können.  Das wird immer vergessen

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 14.021
    • Geschlecht:
    ...
    Ich muss nichts begründen ...
    ...

    Das genau ist irrig, imnsho, denn unbegründete Statements abzugeben und das noch im Telegram-Stil, bringt der Community fast nichts.

    Auch deine netterweise nun gemachten Ausführungen sind schwer verständlich (und ich halte mich, mit Verlaub, nicht für dumm).
    Der Telegram-Stil bei Fall 3 und Fall 4 ruft in mir lediglich ein  :-? hervor.

    Gruß,
    noRiddle

    *NACHTRAG*
    Du könntest z.B. mal auf die von p3e erwähnten Fehler in den WebMasterTools eingehen.
    Die können ja nicht aus Versehen entstehen, und wir reden ja über Google-WebMasterTools, die müssten es ja eigtl. genau wissen.

    p3e

    • Experte
    • Beiträge: 2.426
    Ich verstehe auch nicht genau was Alfred mit Fall 3 und 4 meint.
    Die Bedingung bei der der Fehler auftritt ist folgender:
    • Shop ist mehrsprachig
    • der selbe Artikel ist in mehr als einer Kategorie verlinkt

    Was der Shop richtig macht:
    • der Shop bestimmt bei verlinkten Artikeln eine URL die für Google relevant sein soll. Weiter unten nenne ich ihn der Einfachheit halber “Original“-Artikel
    • der Shop macht keinen Kategorisprung mehr, so dass der Besucher immer richtig in der jeweils aktuellen Kategorie bleibt

    Damit Google versteht, wie der Shop strukturiert ist und um Duplicate Content zu vermeiden, hat Google dem Webmaster u.a. folgende Tags zur Verfügung gestellt:

    Canonical-Tag: er dient dazu doppelten Content zu vermeiden. Sind zwei (oder mehr) Seiten in der selben Sprache und vom Inhalt überwiegend gleich, kann der Webmaster Google von den “Kopien“ auf die Originalseite zeigen. Die Originalseite wird dann von Google für den Index genommen und alle Bewertungen von den “Kopien“ fließen in der Originalseite zusammen.

    hreflang-Tag: Das ist Googles Tag für Sprachvarianten. Er dient dazu, Google mitzuteilen, wenn die selbe Seite auch in anderer Sprache zur Verfügung steht. Dabei muss man sowohl jeweils auf die anderen Sprachen, als auch auf die aktuelle Seite verweisen, so dass Google direkt alle Varianten auf einmal aufnimmt und als Sprachvariante abspeichert.
    Zusätzlich zu den Sprachen kann auch optional eine URL als "x-default“ deklariert werden. Diese URL ist damit Ziel für alle Besucher mit Sprachen die nicht per hreflang definiert wurden. Etwas undeutlich ist Googles Definition, ob es einfach eine Seite in der Sprache ist, die am Meisten verbreitet ist (z.B. Englisch) oder ob es eine Art vorgeschaltete Seite für die Sprachauswahl sein soll. Dieser Punkt (x-default) kann gerne in einem extra Thema behandelt werden und gehört hier nicht hin.

    Wenn der Shop nun mehrsprachig ist und Artikel in mehreren Kategorien verlinkt hat, versucht er all das nur mit hreflang zu kommunizieren. Das funktioniert aber nicht, da Google den hreflang-Tag ausschließlich für Sprachvarianten vorsieht. Von den verlinkten Artikeln muss per Canonical-Tag auf den “Original“-Artikel gezeigt werden. Die Sprachvarianten werden dann ausschliesslich von dem auch indexierten “Original“-Artikel per hreflang definiert. Auf die Kopien gehört kein hreflang-Tag sondern nur der Canonical-Tag.
    Damit der Shop das so macht, habe ich oben gepostete Anpassung gemacht.

    Alfred

    • Experte
    • Beiträge: 2.115
    Wenn der Shop nun mehrsprachig ist und Artikel in mehreren Kategorien verlinkt hat,

    Dann muss nicht jeder der verlinkten Artikel in den Index.
    Jedes Duplikat kann ein noindex bekommen.
    Es bringt doch nichts wenn diese Duplikate Seiten im Index sind.

    p3e

    • Experte
    • Beiträge: 2.426
    Richtig! Das Duplikat soll nicht in den Index.
    Die Lösung ist aber nicht noindex (das hat man früher so gemacht) sondern der Canonical Tag den Google genau für solche Duplikat vorsieht! Der Vorteil gegenüber noindex ist, dass zb. die Linkpower auf das Original übergeht.

    Der Shop nimmt aber in dem Fall nicht den Canonical-Tag sondern hreflang (was aber falsch ist, da das Original dann weder eine Sprachvariation ist, noch in den Index soll). Deshalb ist in dem Fall Canonical die richtige Wahl.

    P.S.: Ich gebe mir echt Mühe. Schreibe ich wirklich so unverständlich oder liest du lange Texte nicht so genau?