Neu Artikelseiten stehen bei Google auf noindex

Marc3108

Gut bekanntes Mitglied
3. Oktober 2006
235
10
Hallo,
nachdem ich gestern das Update von Shop 5 gemacht habe (von 5.0.1 auf 5.0.2), habe ich heute Seobility mal drüber laufen lassen.

Nun werden nur noch 7 Seiten analysiert, von vormals über 1000.

Nach etwas Fehlersuche habe ich nun herausgefunden, dass fast alle Produktseiten ein "noindex" haben. Die Hauptseite hat weiter ein "index"

Wie kann ich die Produktseiten alle gesammelt auf "index" stellen, dass sie auch wieder auf Google indexiert werden?

hoffe es kann mir jemand helfen.

Danke 🙂
 

csaeum

Sehr aktives Mitglied
23. Juli 2011
1.347
147
Küps
Also ich kann das ebenfalls gerade bestätigen.

Im Block "layout-header-head-meta" habe ich selbst nichts verändert somit holt er die Daten aus dem Standard Nova Template.

Ich selbst habe es auf die schnelle gelöst:


Code:
{block name='layout-header-head-meta'}
        <meta http-equiv="content-type" content="text/html; charset={$smarty.const.JTL_CHARSET}">
        <meta name="description" itemprop="description" content={block name='layout-header-head-meta-description'}"{$meta_description|truncate:1000:"":true}{/block}">
        {if !empty($meta_keywords)}
                <meta name="keywords" itemprop="keywords" content="{block name='layout-header-head-meta-keywords'}{$meta_keywords|truncate:255:'':true}{/block}">
        {/if}
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">

        <meta name="robots" content="index, follow">

        <meta itemprop="url" content="{$cCanonicalURL}"/>
        {block name='layout-header-head-theme-color'}
                <meta name="theme-color" content="{if $Einstellungen.template.theme.theme_default === 'clear'}#f8bf00{else}#1C1D2C{/if}">
        {/block}
        <meta property="og:type" content="website" />
        <meta property="og:site_name" content="{$meta_title}" />
        <meta property="og:title" content="{$meta_title}" />
        <meta property="og:description" content="{$meta_description|truncate:1000:"":true}" />
        <meta property="og:url" content="{$cCanonicalURL}"/>

        {if $nSeitenTyp === $smarty.const.PAGE_ARTIKEL && !empty($Artikel->Bilder)}
                <meta itemprop="image" content="{$Artikel->Bilder[0]->cURLGross}" />
                <meta property="og:image" content="{$Artikel->Bilder[0]->cURLGross}">
        {elseif $nSeitenTyp === $smarty.const.PAGE_NEWSDETAIL && !empty($newsItem->getPreviewImage())}
                <meta itemprop="image" content="{$imageBaseURL}{$newsItem->getPreviewImage()}" />
                <meta property="og:image" content="{$imageBaseURL}{$newsItem->getPreviewImage()}" />
        {else}
                <meta itemprop="image" content="{$ShopLogoURL}" />
                <meta property="og:image" content="{$ShopLogoURL}" />
        {/if}
{/block}

Also den Block aus dem Nova Template genommen und die fette Zeile ersetzt mit der IF Abfrage
 

csaeum

Sehr aktives Mitglied
23. Juli 2011
1.347
147
Küps
Im Template hat sich die letzten Versionen nichts geändert gerade 5.0.0 bis 5.0.2 durchgeschaut.

Also hat sich an den Variablen was geändert die abgefragt werden in der IF.

Toll da wurde mal wieder ein Bock geschossen!!
 

Marc3108

Gut bekanntes Mitglied
3. Oktober 2006
235
10
Ich habe jetzt in der header.tpl (in meinem Child) das noindex auf index gesetzt und nun funktioniert es mal. Aber das kann ja nicht die Lösung sein
 
  • Gefällt mir
Reaktionen: Shop-Schmied

MHillmann

Moderator
Mitarbeiter
11. Oktober 2018
1.376
546
Hallo,

das ist in der Tat ein großes Problem und ist anscheinend das gleiche wie bei https://issues.jtl-software.de/issues/SHOP-5245 , nur noch weitreichender..
Es gibt dazu einen MR der gerade in Prüfung ist und das Problem angeht: https://gitlab.com/jtl-software/jtl-shop/core/-/merge_requests/1841
Anscheinend denkt die Artikeldetailseite durch den Fallback, dass sie eine 404-Seite ist (bei der 404 Seite das Häkchen bei "nofollow" rauszunehmen setzt die Artikeldetailseiten also auch wieder auf "index, follow").

Wir sind dabei eine schnelle 5.0.3 zu veröffentlichen um diesen Bug schnellstmöglich zu beheben.

Viele Grüße
Michael
 

Xantiva

Sehr aktives Mitglied
28. August 2016
1.795
316
Düsseldorf
Geh' auf die Änderungen (Changes), dort wird Dir angezeigt, was sich geändert hat:

In der Datei includes/letzterInclude.php

... ist diese Zeile:

PHP:
 $smarty->assign('Link', $link ?? $linkHelper->getPageLink($linkHelper->getSpecialPageID(LINKTYP_404)));

durch die folgenden ersetzt worden:

PHP:
    if ($link === null) {
        $linkTMP = $linkHelper->getPageLink($linkHelper->getSpecialPageID(LINKTYP_STARTSEITE));
        $linkTMP->setNoFollow(false);
        $linkTMP->setIdentifier('');
        $linkTMP->setIsFluid(false);
    } else {
        $linkTMP = $link;
    }
    $smarty->assign('Link', $linkTMP);

Und ich hoffe inständig, dass JTL nach so einem Fauxpas nicht nur mal eben den Code fixt, sondern auch das Testkonzept überarbeitet / überdenkt. Ein Online-Shop mit Artikelseiten, die sich selber aus dem Google Index werfen sind übel. 🙁
 
  • Gefällt mir
Reaktionen: csaeum

csaeum

Sehr aktives Mitglied
23. Juli 2011
1.347
147
Küps
Ja das hoffe ich auch.
Weil bei uns waren es nur ca 3-4 Tage aber andere können davon wesentlich länger betroffen sein.
 
  • Gefällt mir
Reaktionen: kutti

JulianG

Administrator
Mitarbeiter
14. November 2013
1.254
398
Und ich hoffe inständig, dass JTL nach so einem Fauxpas nicht nur mal eben den Code fixt, sondern auch das Testkonzept überarbeitet / überdenkt. Ein Online- Shop mit Artikelseiten, die sich selber aus dem Google Index werfen sind übel.

Man könnte sagen, dass es sich hierbei um einen "Butterfly-Effekt" handelt. Es gab für 5.0.2 keine Änderungen die auf Auswirkung für SEO in dem Bereich schließen ließen, daher ist es uns leider durchs Testraster gefallen. Uns tut das sehr Leid, aber ich hoffe auf Verständnis. Das die 404-Seite auf einmal Auswirkung hat auf die Indexierung vorhandener Produkte ist nicht gerade offensichtlich und natürlich nicht gewollt.

Wir wollen natürlich auch nicht, dass so etwas nochmal passiert und haben die QA-Prozedur entsprechend angepasst um auf unvorhersehbare SEO-Änderungen (auch unabhängig davon, ob es tatsächlich gewollte SEO-Änderungen gab) zu prüfen und ggf. vor Release zu beheben.
 
  • Gefällt mir
Reaktionen: kutti und csaeum

Xantiva

Sehr aktives Mitglied
28. August 2016
1.795
316
Düsseldorf
@JulianG
Ich weiß ja nicht, in wie weit Ihr schon automatisierte Tests für den Shop nutzt? Die flächendeckende Verwendung von Unit Tests hat ja gerade den Charme, dass man sich nicht bei jeder Änderung einen Kopf um den "umgefallenen Sack Reis" Gedanken machen muss. Was man alles testen sollte, weil die vorgenommenen Änderung Auswirkung darauf haben könnte? Abgesehen davon ist das auch ein "bad smell", der auf eine unzureichende Kapselung des betreffenden Codes und unklare Abhängigkeiten hindeutet 😉
 

bzng

Gut bekanntes Mitglied
25. April 2014
139
13
Geh' auf die Änderungen (Changes), dort wird Dir angezeigt, was sich geändert hat:

In der Datei includes/letzterInclude.php

... ist diese Zeile:

PHP:
 $smarty->assign('Link', $link ?? $linkHelper->getPageLink($linkHelper->getSpecialPageID(LINKTYP_404)));

durch die folgenden ersetzt worden:

PHP:
    if ($link === null) {
        $linkTMP = $linkHelper->getPageLink($linkHelper->getSpecialPageID(LINKTYP_STARTSEITE));
        $linkTMP->setNoFollow(false);
        $linkTMP->setIdentifier('');
        $linkTMP->setIsFluid(false);
    } else {
        $linkTMP = $link;
    }
    $smarty->assign('Link', $linkTMP);

Und ich hoffe inständig, dass JTL nach so einem Fauxpas nicht nur mal eben den Code fixt, sondern auch das Testkonzept überarbeitet / überdenkt. Ein Online-Shop mit Artikelseiten, die sich selber aus dem Google Index werfen sind übel. 🙁

Hat sich das Ganze nochmal geändert? Wenn ich die Changes nun richtig lese, ist es inzwischen ja eher ein

raus:
PHP:
 $smarty->assign('Link', $link ?? $linkHelper->getPageLink($linkHelper->getSpecialPageID(LINKTYP_404)));

rein:
PHP:
 $smarty->assign('Link', $link ?? new Link(Shop::Container()->getDB()));


Quelle:
https://gitlab.com/jtl-software/jtl-shop/core/-/commit/ed6d6d1d873879e1da43fa2523ea4b07b116cd81
 

MHillmann

Moderator
Mitarbeiter
11. Oktober 2018
1.376
546
Hallo @bzng,

ja, das hat sich nochmal geändert, die neuere Version ist noch kürzer und sauberer. So wie du es gepostet hast wird es nun auch in der 5.0.3 sein.

Viele Grüße
Michael
 
  • Gefällt mir
Reaktionen: bzng

Ähnliche Themen