Anzahl der Tags begrenzen

Es ist duchaus verlockend und wohl auch sinnvoll in einem Artikel möglichst viele Tags einzugeben. Dadurch wird der Blog gut strukturiert, und man kann davon ausgehen, dass die Suchmaschinen auch alle Inhalte finden. Schließlich kann man über die Tags gut so genannte related posts anzeigen. Das sind Artikel, die ein ähnliches Thema behandeln, weil sie die gleichen Tags haben. Nun bietet WordPress auch die Möglichkeit die Tags des Artikels anzuzeigen und verlinkt dabei gleich auf die Tags-Seiten. Wenn man nun aber sehr viele Tags angibt erhält man da sehr viele Links, die die Suchmaschinen (also hauptsächlich Google) ja wieder von den eigentlichen Inhalten, den Artikeln, ablenkt. Diese Links auf nofollow zu setzen ist aber auch nicht geschickt, da sonst die ganze Linkpower der Seite verloren geht. Und schließlich ist ja der Link auf die Tags-Seite keine Werbung und die Tags-Seite per se keine Seite, der man nicht traut;-)

Anzahl der Tags limitieren
Mit einem kleinen Script kann man die Anzahl der Tags, die ausgegeben werden reduzieren. Hier werden nur 10 Tags angezeigt.

<?php
	$myposttags = get_the_tags();
	$count=0; $sep='';
	if ($myposttags) {
	    echo 'Tags: ';
	    foreach($myposttags as $tag) {
	        $count++;    
	        echo $sep . '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a>';
	$sep = ', ';
	        if( $count > 9 ) break; 
	    }
	}
?>

das Skript hat allerdings den Nachteil, dass es es nur die 10 ersten Tags in alphabetischer Reihenfolge ausgibt. Die Tags mit den Anfangsbuchstaben hinter dem P haben dann kaum eine Chance angezeigt zu werden:-(

Besserere Limitierung
Sinnvoller wäre es die wichtigsten Tags auszugeben. Nun stellt sich die Frage was sind die wichtigsten Tags. Dazu müsste man eine weitere Tagsliste führen, was wohl zu aufwändig wäre. Nun könnte man schauen, welche von den Tags in anderen Artikeln überhaupt vorkommen. Wenn ich einen neuen Tag eingebe, den es nirgendwo anders gibt ist es sinnlos auf diese Tags-Seite zu linken, da dann dort ja wieder nur derselbe Artikel vorkommt. Im Umkehrschluss heißt das, das die Tags die eine gewisse Häufung im Blog haben die sinnvollsten sind.
Die häufigsten Tags bekommt man mit einer kleinen MySQL-Abfrage heraus:

SELECT count(*) AS Anzahl, term_taxonomy_id
FROM `BLOGTABELLENNAMEterm_relationships`
Group by term_taxonomy_id
 having count(*)  > 20 
ORDER BY Anzahl 
DESC

Wobei BLOGTABELLENNAME das Prefix Ihrer WordPress-Installation ist. (zB wp_meinblog). Diese Abfrage zeigt Ihnen die Tags, die mindestens 20 mal verwendet wurden. Wenn Die wissen möchten welcher Begriff hinter einer einzelnen term_id steht so können Sie in der Tabelle BLOGTABELLENNAMEterms nachsehen:

SELECT * FROM `BLOGTABELLENNAMEterms` WHERE `term_id` = '15'

Nun könnte man jeden Artikel individuell behandeln. Zuerst die verwendeten Tags auslesen. Dann nachsehen, wie oft diese im Blog verwendet wurden. Und dann davon die TOP10 anzeigen, die zudem mindestens zweimal eingetragen waren.

Tags begrenzen ohne MySQL
Wer jetzt in seinen Blog keine MySQL-Anweisungen einfügen möchte kann auch ganz locker einfach die Ausgabe der Tags reduzieren. Das ist auch ganz einfach und kostet kaum Serverlast, da nur ein kleines PHP-Skript ausgeführt wird. Die Tag-IDs liegen in einem Array (Übernahme aus der Abfrage oben).

$topw57tags = array(9093,
17007, 6134,10086,11,13,10088,2880,17905,14225,9393,17375, 
12479,812,4744,12518,16727,9361,5352,313,5477,17311,16409)
<?php
	$myposttags = get_the_tags();
	$count=0; $sep='';
	if ($myposttags) {
	    echo 'Tags: ';
	    foreach($myposttags as $tag) {
	        $count++;
 
	        if(in_array($tag->term_id, $topw57tags))
{
  echo $sep . '<a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a>';
	$sep = ', ';
}
    	        if( $count > 9 ) break;  //optional
	    }
	}
	?>

Das Skript geht nun die einzelnen Tags des Artikels durch, überprüft, ob diese in der Liste der TOP-Tags sind, und gibt sie dann ggf aus. That’s all. Die Anzahl der Tags ist auch noch einmal limitiert – das kann man auch weg lassen (if $count …)

Plugin für Tags-Minimierung
Ein Plugin für diese Funktionen ist aktuell in Vorbereitung.

Fazit:
Wenn man mal einen Blog hat und die Artikel haben zudem viele Tags dann lohnt es sich schon auf diese Weise die Links der Seite zu reduzieren. Das Skript ist recht einfach. Je nachdem wie viele Artikel man schreibt kann man die Liste (das Array) öfteres aktualisieren und neue Tags hinzufügen. Es dauert eine Zeit bis ein Tag mehrfach verwendet wurde. Für TOP-Blogs empfielt sich das Plugin. (in Kürze hier erhältlich)

Share this post:

27

Hinterlassen Sie Ihren Kommentar