SEO (Search Engine Optimierungen) für phpBB2
Verfasst: 14.03.2004 12:26
Nachdem die in Short URLs für phpBB2 vorgestellte Methode, 'statisch aussehende' Links innerhalb des phpBB2 zu verwenden ein recht guter Erfolg bei Google und Co. zu sein scheint, habe ich mir noch ein paar weiterführende Gedanken zur SEO gemacht - ob und inwieweit die letztendlich zu einem besseren Ranking verhelfen ist allerdings unklar 
Wie üblich ist das ganze unter http://www.nuforum.de in Aktion zu sehen.
Einen guten Überblick über die Auswirkungen des Hacks kann man sich auch unter http://tools.summitmedia.co.uk/spider/ anschauen.
- Optimierung der TITLE Tags in viewforum.php und viewtopic.php
Sowohl in der Forum- als auch in der Topic-Ansicht werden in der Default-Installation 'statische' Angaben in die Title-Tags geschrieben - dies ist in aller Regel überflüssig und stört bei der Ausgabe von Suchergebnisssen:
in viewforum.php:
anstelle von
nur
benutzen - 'Forum anzeigen -' ist überflüssig.
in viewtopic.php:
anstelle von
nur
benutzen - 'Thema anzeigen -' ist überflüssig.
- Verwendung dynamischer META-Tags für DESCRIPTION und KEYWORD
Das folgende Snippet sorgt dafür, dass die Meta-Tags 'Description' und 'Keywords' innerhalb der Topic-Ansicht gesetzt werden, 'Description' basiert dabei auf Kategorie-Titel, Forum-Name und Topic-Name, 'Keywords' sind die für die Suche indizierten Begriffe des ersten Postings:
in /includes/page_header.php nach
folgenden Code einfügen:
sowie am Ende der Datei nach
die entsprechenden variablen-zuweisungen
setzen.
Damit das ganze auch in der Seitenausgabe angezeigt wird, muss natürlich auch das entsprechende Template angepasst werden - dazu in /templates/subSilver/overall_header.php die entsprechende Ausgabe setzen, nach
einfach
einfügen.
Anmerkung: Die unter HTML4.01, XHTML 1.0 strict und CSS validiert diskutierte HTML-Konformität ist im übrigen meiner Meinung nach ebenfalls sinnvoll - auch wenn sie nicht unbedingt zu besseren Rankings verhilft...

Wie üblich ist das ganze unter http://www.nuforum.de in Aktion zu sehen.
Einen guten Überblick über die Auswirkungen des Hacks kann man sich auch unter http://tools.summitmedia.co.uk/spider/ anschauen.
- Optimierung der TITLE Tags in viewforum.php und viewtopic.php
Sowohl in der Forum- als auch in der Topic-Ansicht werden in der Default-Installation 'statische' Angaben in die Title-Tags geschrieben - dies ist in aller Regel überflüssig und stört bei der Ausgabe von Suchergebnisssen:
in viewforum.php:
anstelle von
Code: Alles auswählen
$page_title = $lang['View_forum'] . ' - ' . $forum_row['forum_name'];
Code: Alles auswählen
$page_title = $forum_row['forum_name'];
in viewtopic.php:
anstelle von
Code: Alles auswählen
$page_title = $lang['View_topic'] .' - ' . $topic_title;
Code: Alles auswählen
$page_title = $topic_title;
- Verwendung dynamischer META-Tags für DESCRIPTION und KEYWORD
Das folgende Snippet sorgt dafür, dass die Meta-Tags 'Description' und 'Keywords' innerhalb der Topic-Ansicht gesetzt werden, 'Description' basiert dabei auf Kategorie-Titel, Forum-Name und Topic-Name, 'Keywords' sind die für die Suche indizierten Begriffe des ersten Postings:
in /includes/page_header.php nach
Code: Alles auswählen
define('HEADER_INC', TRUE);
folgenden Code einfügen:
Code: Alles auswählen
if ( isset($HTTP_GET_VARS[POST_TOPIC_URL]) )
{
$topic_id = intval($HTTP_GET_VARS[POST_TOPIC_URL]);
}
else if ( isset($HTTP_GET_VARS['topic']) )
{
$topic_id = intval($HTTP_GET_VARS['topic']);
}
if ( $topic_id )
{
$sql = "SELECT c.cat_title, f.forum_name, t.topic_title
FROM " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f, " . CATEGORIES_TABLE . " c
WHERE f.forum_id = t.forum_id
AND c.cat_id = f.cat_id
AND t.topic_id = $topic_id";
if( ($result = $db->sql_query($sql)) )
{
if ( $meta_row = $db->sql_fetchrow($result) )
{
$meta_description = '<meta name="description" content="' . $meta_row['cat_title'] . ' :: ' . $meta_row['forum_name'] . ' :: ' . $meta_row['topic_title'] . '">';
}
}
$sql = "SELECT w.word_text
FROM " . TOPICS_TABLE . " t, " . SEARCH_MATCH_TABLE . " m, " . SEARCH_WORD_TABLE . " w
WHERE t.topic_first_post_id = m.post_id
AND m.word_id = w.word_id
AND t.topic_id = $topic_id";
if( ($result = $db->sql_query($sql)) )
{
$meta_keywords = '';
while ( $meta_row = $db->sql_fetchrow($result) )
{
$meta_keywords .= ($meta_keywords=='') ? $meta_row['word_text'] : ',' . $meta_row['word_text'];
}
$meta_keywords = '<meta name="keywords" content="' . $meta_keywords . '">';
}
}
sowie am Ende der Datei nach
Code: Alles auswählen
'PAGE_TITLE' => $page_title,
Code: Alles auswählen
'META_DESCRIPTION' => $meta_description,
'META_KEYWORDS' => $meta_keywords,
Damit das ganze auch in der Seitenausgabe angezeigt wird, muss natürlich auch das entsprechende Template angepasst werden - dazu in /templates/subSilver/overall_header.php die entsprechende Ausgabe setzen, nach
Code: Alles auswählen
<meta http-equiv="Content-Style-Type" content="text/css">
Code: Alles auswählen
{META_DESCRIPTION}
{META_KEYWORDS}
Anmerkung: Die unter HTML4.01, XHTML 1.0 strict und CSS validiert diskutierte HTML-Konformität ist im übrigen meiner Meinung nach ebenfalls sinnvoll - auch wenn sie nicht unbedingt zu besseren Rankings verhilft...