chemiebärchemiebär MitgliedKommentare: 32 Danke erhalten: 1 Mitglied seit: Februar 2014 bearbeitet März 2015
Hallo,

ich möchte gerne den canonical tag der Artikel auf die URL der jeweiligen Kategorie setzen, so daß alle Artikel auf die jeweilige Kategorie verweisen. Ich habe schon bei den SEO-Einstellungen für Artikel "{sCategoryPath categoryID=$sCategory.id}/" einzugeben, das funktioniert aber leider nicht. Meine Versuch in der header.tpl sind bisher leider auch gescheitert. Kann mir jemand weiterhelfen? Vielen Dank.

Kommentare

  • zwillazwilla MitgliedKommentare: 146 Danke erhalten: 12 Mitglied seit: Februar 2013
    hmm, war mir auch bei mir aufgefallen, wenn ich auf den englischen Shop klicke, dann sind dort die Artikel richtig den Kategorien zugeteilt.

    Probleme gibt es glaube ich, wenn ein Artikel mehreren Kategorien zugeteilt ist, weiß dann auch nicht welchen dann zugewiesen wird.

    Obwohl bei SEO Routing Kategorie ID aus URL entfernen eingestellt ist, ich setze mal auf Nein, mal sehen ob dann es richtig ist. Nee, dann schiebt er nur die Kat ID dazwischen.

    Tatsächlich, im englischen sieht es so aus:
    http://4k-pictures.de/en/druck/leinwand-durcken-80x45cm
    um deutschen so:
    http://4k-pictures.de/leinwand-druck-80x45cm.html
  • CreatixxCreatixx MitgliedKommentare: 547 Danke erhalten: 129 Mitglied seit: August 2012
    zwilla schrieb:
    Probleme gibt es glaube ich, wenn ein Artikel mehreren Kategorien zugeteilt ist, weiß dann auch nicht welchen dann zugewiesen wird.
    Wenn ein Artikel mehreren Kategorien zugewiesen ist, so kannst du selber zuweisen welche URL dann genommen werden soll!

    Artikledetails->Kategorien->SEO-Kategorien zuweisen (unterstes Feld)

    Gruß
  • zwillazwilla MitgliedKommentare: 146 Danke erhalten: 12 Mitglied seit: Februar 2013
    Ahh, ja super. Danke habe ich gar nicht beachtet.

    Dennoch denke ich das in dem Modul "SEO Index neu aufbauen" ein Bug steckt.

    1. Nach Änderungen bewirkt das an den Daten in der s_core_rewrite_urls nur, dass
    wenn ein Artikel bereits einmal gelistet ist, nichts bzw. doppelt hinzugefügt wird, je nachdem welche Änderung man macht.

    z.B: Lösche ich die ArtikelID raus, dann passiert nichts, ändere ich jedoch die Endung, bei mit .html auf .htm, dann habe ich doppelte Einträge.

    2. Also Wenn ich Endung ändere, dann plötzlich 2 URL zum gleichen Artikel drin stehen.

    3. Der Index zwar neu aufgebaut wird (was auch immer damit gemeint sein soll), aber die ID sich immer weiter aufbläht, im Laufe der Jahre kommen wird da schon an die physikalische Grenze des Typs Integer kommen, was dann?


    Habe nun hart in der Datenbank, alle Daten gelöscht und den Index neu aufbauen lassen, dann passt es. Ist es aber im Sinne vom Enduser (Showbetreiber) in der Datenbank Änderungen auszuführen?

    Jemand eine Lösung?

    Gruß

    Zwilla
  • SebastianKlöpperSebastianKlöpper AdministratorKommentare: 7153 Danke erhalten: 1656 Mitglied seit: Juni 2010
    Hallo Zwilla,

    ich glaube hier liegt generell ein Missverständnis vor
    post111995.html#p111995

    Also du darfst die Tabelle s_core_rewrite_urls eigentlich nie im Livebetrieb leeren! Daher gibt es auch keine Funktionen dafür im Backend.

    Shopware speichert ja speziell die Historie bei Änderungen ab, damit man von der alten URL sauber per 301 auf die neue URL weiterleiten kann.
    Das ist also beabsichtigt, bewusst so gebaut und bietet große Vorteile. Ansonten müsstest du dich um Weiterleitungen immer manuell kümmern, wenn die z.B. Artikel oder Kategorien usw. umbenennst.

    Wird die Tabelle geleert, so werden alte Artikel/Kategorien, die ggf. mal verschoben oder umbenannt wurden, nicht mehr gefunden. Suchmaschinen bekommen dann beim Crawlen ein "not found" zurück.

    Doppelte Einträge kann es technisch so gar nicht geben. Es ist je Shop und je Seite immer nur eine URL aktiv. Die anderen URLs sind inaktiv und dienen nur der Weiterleitung

    Sebastian

    PS: Bitte nicht manuell in die Tabelle s_core_rewrite_urls eingreifen. Das kann auch zu Fehlfunktionen oder Weiterleitungsschleifen führen!
  • zwillazwilla MitgliedKommentare: 146 Danke erhalten: 12 Mitglied seit: Februar 2013
    Vielen Dank für deine rasche Antwort,

    ok, das leuchtet mir absolut ein, dass die Suchmaschinen nix mehr finden können.

    Tabelle im Live Betrieb löschen, ja, dass mag der Shop wirklich nicht, bei mir dauerte es ca. 2 Minuten bis er sich vom manuellen löschen wieder erholt hatte.

    Frage mich nun warum nach einer solchen Änderung die Sitemap nicht neu erstellt wird.

    Edit: Also nicht unverzüglich, aber nach wenigen Minuten wurde die Änderung dann ausgeführt:D

    Achso, um das Thema nicht zu verlieren, hier meine Lösung für das eigentliche Problem:
    {sCategoryPath articleID=$sArticle.id}/{$sArticle.name|replace:"/":"-"}.html
    
    Nun ist mir weiteres aufgefallen, Probleme oder auch nicht mit der Sitemap.xml hier,
    neuer Thread:
    Sitemap.xml nur Cookie gesteuert?
  • chemiebärchemiebär MitgliedKommentare: 32 Danke erhalten: 1 Mitglied seit: Februar 2014
    Hallo,

    irgendwie glaube ich, bin ich mit meiner ursprünglichen Frage missverstanden worden:
    Ich möchte gerne in den Artikeldetailseiten einen Canonical Link mit Verweis auf die darüberliegende Kategorie erzeugen.
    Also: wenn der Artikel demoartikel in der Kategorie demokategorie ist, soll der erzeugte canonical-link in der Artikeldetailseite lauten:

    <link rel="canonical" href="https://www.meinshop.de/demokategorie/>;

    Jemand eine Idee wie das geht? Danke.
  • SebastianKlöpperSebastianKlöpper AdministratorKommentare: 7153 Danke erhalten: 1656 Mitglied seit: Juni 2010
    Hi,

    warum willst du das machen?
    Das entspricht nicht dem Sinn von Canonical Tags bzw. nutzt du das dann falsch. Der Tag soll bei praktisch identischen Seiten immer auf eine Quelle zeigen um Duplicate Content zu vermeiden.

    Die Detailseite ist aber ja nich identisch zur Kategorie

    Sebastian

    PS: umsetzen kannst du das nur individuell, in dem du das im template umbaust. Wie geschrieben, erkenne ich da aber den Sinn nicht ganz
  • chemiebärchemiebär MitgliedKommentare: 32 Danke erhalten: 1 Mitglied seit: Februar 2014
    Der Grund ist folgender:
    In unserem Shop gibt es in den Kategorien nur verschiedene Varianten (unterschiedliche Gewichte oder Volumen) des immer gleichen Produktes.
    Deshalb sind auch die erläuternden Kategorietexte und die Artikelbeschreibungen identisch. Dies wird aber bei allen Testprogrammen dann als "duplicate content" gewertet. Um diesem massenhaften "duplicate content" zuvorzukommen soll nur einmalig der Beschreibungstext der Kategorie durch den bot erfasst werden. Außerdem sollen bei Google vor allem die Kategorie im Ranking nach vorne gebracht werden und nicht einzelne Artikel, da unsere Kunden auch nur nach dem Überbegriff und nicht nach der exakten Menge (s.o.) suchen.
    Wenn auf die Artikeldetailseiten ein noindex oder nofollow gesetzt wird (wäre eine Alternative) meckern die Testprogramme über zuviele noindex/nofollow-Einträge - und vermutlich sieht Google es genauso.

    Aber vielleicht weiß jemand noch eine andere bessere Lösung?
  • SebastianKlöpperSebastianKlöpper AdministratorKommentare: 7153 Danke erhalten: 1656 Mitglied seit: Juni 2010
    Hallo,

    ich würde dann einfach den Controller detail auf noindex setzen in den Seo Grundeinstellungen.
    Das sollte dann komplett sauber sein, ein nofollow musst du nicht setzen.

    c42784abeebc8498a5b28ce61de3d36c.jpg

    Dort bei den Viewports in dem Feld detail mit Komma ergänzen.

    Sebastian
    Danke von 1chemiebär
  • chemiebärchemiebär MitgliedKommentare: 32 Danke erhalten: 1 Mitglied seit: Februar 2014
    Hallo

    und vielen Dank für die schnelle Antwort. Momentan habe ich die Artikeldetails in der header.tpl auf noindex gesetzt - müsste ja das Gleiche sein, Deine Lösung ist aber sicher eleganter.
    Das Problem hierbei ist, dass zuviele Noindex anscheinend auch negativ von Google gewertet werden, zumindest spuken es bei mir die SEO-Testprogramme so aus. Werds aber trotzdem mal versuchen.

    Hinweis: Sollte es in den SEO-Grundeinstellungen dann korrekterweise nicht eigentlich SEO-Noindex Querys und SEO-Noindex Viewports anstatt SEO-Nofollow Querys und SEO-Nofollow Viewports heißen?
  • SebastianKlöpperSebastianKlöpper AdministratorKommentare: 7153 Danke erhalten: 1656 Mitglied seit: Juni 2010
    Hi,

    ja die Bezeichnung wird im Update korrigiert.

    Ich kenne das Problem nur von Google bzgl. wenn man extra nofollow setzt.
    Bei noindex wüsste ich selber jetzt von keinem Problem

    Sebastian
  • t2oh4et2oh4e MitgliedKommentare: 552 Danke erhalten: 182 Mitglied seit: Februar 2013
    chemiebär schrieb:
    Hallo,

    irgendwie glaube ich, bin ich mit meiner ursprünglichen Frage missverstanden worden:
    Ich möchte gerne in den Artikeldetailseiten einen Canonical Link mit Verweis auf die darüberliegende Kategorie erzeugen.
    Also: wenn der Artikel demoartikel in der Kategorie demokategorie ist, soll der erzeugte canonical-link in der Artikeldetailseite lauten:

    <link rel="canonical" href="https://www.meinshop.de/demokategorie/>;

    Jemand eine Idee wie das geht? Danke.
    {url controller=cat sCategory=$sCategoryInfo.id}

    Ungetestet, müsste aber im detail-Template so funktionieren.

    Edit: Ich sehe gerade, dass in der Variable $sCategoryInfo.link auch direkt der Link auf die Kategorie steht, zwar nicht als SEO-Link, sondern mit Parameter, aber das müsste durch eins der Core-Plugins automatisch umgewandelt werden wenn du es so ausgibst.
    Danke von 1chemiebär
  • zwillazwilla MitgliedKommentare: 146 Danke erhalten: 12 Mitglied seit: Februar 2013
    Hi Zusammen,

    ich kämpfe immer noch mit den URLs rum, ich könnte jetzt alles aufzählen was ich gemacht habe aber da wird das Post wahrscheinlich gar nicht mehr gelesen.

    Fasse kurz zusammen: Plugin, Cron (auch im Server mit Sicherheit, läuft), Aktualisierung auf cron ist auch aktiv (Bug in Shopware, wenn hier geändert dann da nicht :wtf:), Tabelle platt gemacht (ich weis, egal, ich möchte alles frisch haben)

    Ich werde echt noch verrückt, wo liegt der Hund denn begraben, bzw. welche Funktion blockt denn die andere.

    Also ohne tiefes Fachwissen wie die internen Abläufe sind komme ich nicht weiter.

    Ich lösche mal den Cache direkt per FTP, mal sehen was das bring. Klar die Struktur erhalte ich.

    Hilft auch nicht, dann noch eines, wenn ich doch die Datenbank leer gemacht habe und dann Artikel.html eingetragen habe, warum mach der dann immer noch ohne .html.

    Also da liegt doch irgend wo ein Fehler vor, oder nicht? Welches Modul speichert denn wo was zwischen? Das kann echt net sein uuuuuaaaahhhh Hilfe! Danke!
  • chemiebärchemiebär MitgliedKommentare: 32 Danke erhalten: 1 Mitglied seit: Februar 2014
    Die ursprüngliche Frage konnte mit dem Hinweis von "t2oh4e" gelöst werden.

    Hier nochmal für alle, die (wie ich selber) eine detailierte Beschreibung brauchen:

    - im eigenen Template ("IhrEmotionTemplate") eine Dateil header.tpl (verzeichnispfad ggf. erst noch erstellen: ..../templates/IhrEmotionTemplate/frontend/detail/header.tpl) mit folgendem Inhalt erzeugen:

    {extends file='parent:frontend/detail/header.tpl'}
    {block name='frontend_index_header_canonical'}
    <link rel="canonical" href="{url controller=cat sCategory=$sCategoryInfo.id}" />
    {/block}

    Dann funktionierts updatesicher.
  • MichaDahmMichaDahm MitgliedKommentare: 1 Danke erhalten: 0 Mitglied seit: 28. Juni

    Good morning,

    Meine uk.airtrackfactory.com and nl.airtrackfactory.com nichts indexiert.

    Unsere airtrackfactory.com indexiert by Google.

    Ich denke, weil der gleiche Inhalt wie airtrackfactory.com ist.

    Konnte ich dass losen durch inherited --> yes?

    image

Anmelden oder Registrieren, um zu kommentieren.