Sweetcron-Tutorial: Duplicate Content vermeiden
Wie die eine oder der andere vielleicht mitbekommen hat, bin ich zurzeit schwer im Lifestreamfieber und bastele Tag und Nacht an meinem eigenen Lifestream rum. Rein zum Selbstzweck versteht sich. Und relativ bald, wenn man den Feed seines eigenen Blogs in seinen Stream einbindet, kommt das leidige Problem des Duplicate Contents auf einen zu.
Dafür gibt es jedoch eine simple Lösung:
- Man zeigt auf der Hauptseite nur einen kleinen Auszug des Beitrags...
- ...stellt die Unterseite, die den ganzen Beitrag zeigt, auf noindex.
1. Einen Auszug zeigen
Dies geht bei Sweetcron ganz einfach mit der Funktion word_limiter:
<?php echo word_limiter(strip_tags($item->get_content()), 20); ?>
,
wobei die Zahl die Anzahl der gezeigten Wörter angibt. Standardmäßig werden am Ende des Auszugs drei Punkte gezeigt. Möchte man dies unterbinden, muss man die Code-Zeile folgendermaßen ergänzen:
<?php echo word_limiter(strip_tags($item->get_content()), 20, ''); ?>
Alternativ kann auch andere Zeichen in die einfachen Anführungsstriche setzen, ganz wie einem beliebt.
2. Auf entsprechenden Unterseiten noindex ausgeben
Dies geschieht mit einer einfachen if-else-Abfrage:
<?php if ( isset($item) && $item->get_feed_domain() == 'blog.tld' ) : ?>
<meta name="robots" content="noindex,follow" />
<?php else : ?>
<meta name="robots" content="index,follow" />
<?php endif;?>
Anstelle von blog.tld packt ihr natürlich die Adresse eures Blogs. Jedes mal, wenn nun diese URL im ausgelesenen Feed auftaucht, wird das robot-Tag auf noindex gestellt. Andernfalls steht es auf index. Auf diese Weise wird die Unterseite mit dem kompletten Blog-Beitrag immer auf noindex gesetzt und macht euch keinen Ärger mehr mit Duplicate Content.
5 Kommentare zu "Sweetcron-Tutorial: Duplicate Content vermeiden"
- Externe Links im selben Fenster öffnen
- Externe Links in neuem Fenster öffnen
matthias
hi,
ich versuche gerade, das bei mir umzusetzen. das abschneiden klappt ja auch mit dieser hilfe wunderbar, aber wie bekommst du die auslassungspunkte auf den kompletten beitrag verlinkt? ich verzweifle da gerade dran ...
Herschel Rubinstein
ganz einfach, du hängst an die gekürzte content-ausgabe folgende zeile dran:
<a href="<?php echo $item->get_permalink()?>">(…)</a>
das gleiche, was bspw. auch bei der überschrift des items genutzt wird.
matthias
das ist zu einfach, da war ich auch schon ;-). das "problem" ist dann, dass der link immer kommt - auch wenn der eintrag nicht gekürzt wurde, weil er kurz genug war. mal sehen, ob mir noch etwas besseres einfällt ...
Herschel Rubinstein
unter /system/helpers/text_helper.php/ findet man die funktion word_limiter(). aufbauend auf diese könnte man sich eine reine wortzähl-funktion basteln und den mehr-link nur anzeigen lassen, wenn die anzahl der wörter im beitrag höher als das limit ist.
blöderweise ist mir das gerade aber nicht gelungen.
matthias
danke trotzdem. vielleicht fällt mir ja selbst noch etwas ein ...