Vielleicht ist mein Problem kein spezielles von WP, aber kann mir jemand sagen, warum google meine Artikel, die schon Monate lang gelöscht sind, immer noch im Index hat? Ich hab Google XML Sitemaps installiert, meine neuen Artikel werden auch schnell gefunden, aber wie gesagt, die alten, gelöschten verschwinden nicht. Das finde ich für meine Besucher doof, wenn die ständig auf blinde Links klicken. Weiß jemand, was ich da machen kann? Muss ich mich an google wenden oder kann ich das mit WP Mitteln ändern??:confused:
Probleme mit google
-
-
- Gerade eben
- Anzeige
Hallo!
Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.
- ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
- ✔️ Deutsche Server & DSGVO-konform
- ✔️ Persönlicher Support (kein 0815-Ticket-System)
-
[size=10]Das kann bei Google dauern, bis"alte" Seiten entfernt werden.[/SIZE]
-
-
Ich versuche mein Problem noch mal zu erklären: google hat alle meine bisherigen Artikel noch im Index, aber wenn man auf die Links klickt, erscheint nur eine single.php ohne Inhalt, weil ja der Artikel gelöscht ist. Beispiel:
Von solchen blinden Links habe ich hunderte und das stört mich. Ich möchte, dass nur die Artikel im Index sind, die aktuell auch auf meiner Seite vorhanden sind. Wenn das allerdings kein WP spezifisches Problem ist, muss ich es anders versuchen.
Scheinbar hat WP die Seite noch ohne Artikel in der Datenbank, denn sonst würde ja eine Fehlermeldung erscheinen, oder??
Sry, dass ich so penetrant bin, aber irgendwie muss ich das hin bekommen... :wink:
-
Auf dieser Adresse antwortest du mit dem Statuscode 200. Der sagt Google, daß das eine ganz normale Seite ist.
Der Crawler weiß ja nicht, daß der kurze Text von dir nicht gewünscht ist.Bau also eine Abfrage ein, die immer dann 410 sendet, wenn der Beitrag nicht mehr existiert.
-
Auf dieser Adresse antwortest du mit dem Statuscode 200. Der sagt Google, daß das eine ganz normale Seite ist.
Der Crawler weiß ja nicht, daß der kurze Text von dir nicht gewünscht ist.Bau also eine Abfrage ein, die immer dann 410 sendet, wenn der Beitrag nicht mehr existiert.
Toscho, ich danke dir, aber leider verstehe ich deinen Rat nicht, hab wohl zu wenig Ahnung. Ich habe jetzt die index.php umbenannt und warte mal ein paar stunden, ob sich was tut. Ansonsten bin ich echt ratlos, hab auch bei google webmaster tools mal geschaut, ist aber alles zu hoch für mich. Vorher hatte ich nur die single.php umbenannt, da gabs keinen sichtbaren Effekt. Scheint ne nutzlose Datei zu sein. Aber das Problem kann doch nicht nur ich haben...:confused:
-
Das Umbenennen der index.php war eine enorm schlechte Idee. Man behebt ein Problem doch nicht, indem man wahllos etwas kaputtmacht.
Zum Statusheader.
Jede Ressource, die man per HTTP abruft, besteht aus zwei Teilen: dem Header und dem Body.
Der Header ist gewissermaßen der Umschlag; er geht dem Body (beispielsweise HTML-Code) voraus.Im Header stehen wichtige Metadaten: Zeichenkodierung, Länge des folgenden Bodys, Hinweise zum Caching – und eben auch der Status (oder: Zustand) der Ressource.
Der Status 301 beispielsweise sagt: Die Ressource befindet sich jetzt für immer an einer anderen Adresse. Status 200 heißt: Alles in Ordnung, das ist ein erfolgreicher Aufruf.
Status 400 sagt: Die Ressource habe ich gerade nicht.
Status 410: Diese Ressource ist für immer verschwunden.Diesen Status 410 brauchst du. Denn es genügt nicht, den Artikel einfach in der Datenbank zu löschen – da kann ja niemand außer dir reingucken.
Stelle die single.php und die index.php wieder her.
Setze an den Anfang der header.php folgenden Code:
Suche in der single.php diesen Code:
Hinter der schließenden Klammer »}« dieser Abfrage, sollte sich ein else {} befinden. Wenn nicht, schreib eins hin.Direkt hinter die öffnende Klammer »{« setze diesen Code:
PHP
Alles anzeigenif ( strstr(PHP_SAPI, 'cgi') ) { header($_SERVER['SERVER_PROTOCOL'] . ' 410 Gone'); echo "\r\n\r\n"; } else { if ( version_compare( PHP_VERSION, '4.3.0', '>=' ) ) { header('Gone', TRUE, 410); } else { header($_SERVER['SERVER_PROTOCOL'] . ' 410 Gone'); } }
Jetzt wird es immer noch eine Weile dauern, bis Google die Seiten aus dem Index nimmt, aber ein bißchen Geduld mußt du eben mitbringen. -
WordPress hat deine Artikel nicht mehr in der Datenbank
du hast doch gelöscht
was weg is is weg
aber Google hat ne eigne Datenbank und er ist die deine einfach egal
bis Google was aus dem Index nimmt kann es Monate dauern, manchmal Jahre
das ist ein Problem von Dir und Google
also meld dein blog bei der Google Webmasterzentrale an -suche via Google danach da findest es
dort gibts eine Löschkonsole
NUR die Links löschen die du draußen haben magst
niemals die Adresse deines Blogs einfach so reinschreiben sonst bist du draussen
und zwar für sehr sehr lange Zeit
also Adresse für Adresse in diese Löschkonsole und Geduld
Google wird ja gar nicht jeden Tag bei deinem Blog vorbeischauen ..
lg
-
also Adresse für Adresse in diese Löschkonsole und Geduld
Das wäre dann der umständliche Weg, wenn man 410 nicht hinbekommt. ;)
Ich rate davon ab. Google hat ein hohes Interesse daran, Adressen, die mit 4xx antworten, aus dem Index zu nehmen. Wenn man das korrekt ausgibt, geht das auch recht schnell, maximal vier Wochen. -
...........................
-
hallo toscho
Punkt eins war nicht schwer, hab ich gemacht. Aber:
Suche in der single.php diesen Code:
PHP-Code:
[LEFT] [COLOR=#000000] [COLOR=#0000BB][/COLOR][COLOR=#007700]if ( [/COLOR][COLOR=#0000BB]have_posts[/COLOR][COLOR=#007700]() ) {
[/COLOR][COLOR=#0000BB][/COLOR] [/COLOR] [/LEFT]
Hinter der schließenden Klammer »}« dieser Abfrage, sollte sich ein else {} befinden. Wenn nicht, schreib eins hin.Das konnte ich nicht machen, weil ich zwei schließende Klammern sehe. So sieht mein code aus, wo soll das else genau hin??
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
Und zu Punkt drei:
Direkt hinter die öffnende Klammer »{« setze diesen Code:
Meintest du damit die letzte öffnende Klammer? Hier unterscheidet sich mein code von deinem. Ich habe diese Klammer nicht. Was soll ich nun tun??
Tut mir leid, wenn ich so viel Mühe mache, ok?? TY Toscho -
-
Alte Webseiten kann man doch in Webmastertools entfernen, hierzu muss man die Seiten zur Prüfung einreichen:
Webmaster Tools aufrufen dann
Crawler Zugriff/Url entfernen/Neuer Antrag auf enrfernung
die gewünschten Links einreichen fertig, dann sind diese schneller aus dem Index.
-
Alte Webseiten kann man doch in Webmastertools entfernen, hierzu muss man die Seiten zur Prüfung einreichen:
Webmaster Tools aufrufen dann
Crawler Zugriff/Url entfernen/Neuer Antrag auf enrfernung
die gewünschten Links einreichen fertig, dann sind diese schneller aus dem Index.
Laut Google Regeln sollten diese aber auch einen 404er ausgeben. Wenn die zu löschenden Seiten also einen 200er ausgeben ist dies auch keine Garantie. Dann sollte man die Seiten per robots.txt sperren, aber bei vielen Seiten ist dieser Weg einfach nicht effizient.
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!