it-swarm.com.de

So entfernen Sie Content mit 410-Statuscode

ich habe also eine Joomla-Website mit viel Inhalt (über 10.000 Artikel, die in den letzten 10 Jahren gesammelt wurden).

Ich möchte den Inhalt der ersten 5 Jahre entfernen, da dies viel Crawler-Budget für Google kostet. Dazu muss ich die Seite mit dem http 410-Statuscode deklarieren, damit sie dauerhaft entfernt wird und Google nicht versucht, sie immer wieder zu crawlen.

Wie kann ich das schaffen, ohne jede URL von Hand zu bearbeiten? Gibt es eine Möglichkeit, Inhalte in Joomla auf diese Weise zu entfernen?

4
OmegaTCU

Ich musste so etwas noch nie machen.
Allerdings hatte ich gerade eine etwas umständliche, aber sicherlich einfache Idee, die für Sie funktionieren könnte.

Erstellen Sie eine Vorlagenüberschreibung für die Artikelansicht in:

/templates/YOUR_TEMPLATE/html/com_content/article/default.php

In default.php Direkt unter dem defined('_JEXEC') or die;

fügen Sie Folgendes hinzu:

$time = strtotime("-5 years", time());
$date = date("Y-m-d", $time);


if ($this->item->created < $date) {
    JError::raiseError(410, "This page isn't available any more and will never be available again in the future");
}

Dies bedeutet, dass ein Vergleich durchgeführt wird, wenn das Erstellungsdatum des Artikels älter als 5 Jahre ist. In diesem Fall wird die Systemfehlerseite von joomla mit dem Statuscode 410 und der Meldung "Diese Seite ist nicht mehr verfügbar und wird in Zukunft nie wieder verfügbar sein" aufgerufen.

Testen Sie dies irgendwo, bevor Sie etwas auf Ihrer Live-Website tun.

2
FFrewin