SEO (Search Engine Optimierungen) für phpBB2

Du suchst einen bestimmten Mod, weißt aber nicht genau wo bzw. ob er überhaupt existiert? Wenn dir dieser Artikel nicht weiterhilft, kannst du hier den von dir gewünschten/gesuchten Mod beschreiben ...
Falls ein Mod-Autor eine der Anfragen hier aufnimmt um einen neuen Mod zu entwicklen, geht's in phpBB 2.0: Mods in Entwicklung weiter.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
uhr-forumde
Mitglied
Beiträge: 22
Registriert: 23.12.2005 22:47

Beitrag von uhr-forumde »

danke jetzt funktioniert alles prima! :wink:

bye :lol:
Ttahl
Mitglied
Beiträge: 61
Registriert: 10.09.2005 08:50

Beitrag von Ttahl »

Hallo,
Google und Co kommen bei mir täglich mehrmals vorbei. Dank dem SE Mod kann ich ja auch sehen auf welchen Seiten die Bots unterwegs waren. Ein Großteil der Botbesuche geht auf diese Seite "../viewtopic.php?t=0", also "Das gewählte Thema oder der Beitrag existiert nicht."
Wie kann das sein? Was habe ich falsch gemacht?
Benutzeravatar
larsneo
Mitglied
Beiträge: 2622
Registriert: 07.03.2002 15:23
Wohnort: schwäbisch gmünd
Kontaktdaten:

Beitrag von larsneo »

Wie kann das sein? Was habe ich falsch gemacht?
bots verfolgen grundsätzlich alle vorhandenen links - scheinbar findet sich bei dir auf der seite (oder sonst irgendwo in den weiten des www) ein link zu t=0 - eine auswertung der logfiles kann helfen, den entsprechenden referer ausfindig zu machen.
gruesse aus dem wilden sueden
larsneo
..::[krapohl.net]::..
Benutzeravatar
Ramona_FP
Mitglied
Beiträge: 367
Registriert: 27.04.2005 18:19
Wohnort: NRW
Kontaktdaten:

Beitrag von Ramona_FP »

Hallo,

habe da ein kleines Problem - ich nutze das Forum als CMS und habe demenstprechend nun die Suchfunktion auf die Contentseiten umgeleitet, dazu habe ich in der Search.php alles von viewtopic auf contenttopic und von viewforum auf contentforum geändert - nun funktionieren die dynamischen Metatags leider nicht mehr..kann man das irgendwie anpassen so das sie wieder funktionieren? Es kommt keine Fehlermeldung, aber er findet auch nichts - weil er die vermutlich über die Suche holt?

Code: Alles auswählen

/* dynamische Metatags */
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 . '">';
        }
    }
Liebe Grüße

Ramona
Benutzeravatar
Tomac84
Mitglied
Beiträge: 53
Registriert: 10.09.2005 12:35
Wohnort: Niederkassel
Kontaktdaten:

Beitrag von Tomac84 »

Um nochmal auf das Problem von "../viewtopic.php?t=0 zurück zu kommen. Habe das selbe Problem. Habe jetzt mal meine log-Dateien durchforstet. Finde aber nirgendwo eine "../viewtopic.php?t=0...

Das ist sehr merkwürdig.. Hat jemand eine Idee??

LG Thomas


www.foto-scout.net/forum/
Benutzeravatar
mgutt
Mitglied
Beiträge: 2999
Registriert: 31.08.2004 16:44
Wohnort: Hennef
Kontaktdaten:

Beitrag von mgutt »

@ Tomac84

Ich kann bei Dir keine URL finden die mit "t=0" gespidert wurde:
http://www.google.de/search?hl=de&q=all ... t%3D&meta=

:-?
meine Foren: http://www.maxrev.de/communities.htm
Ich kaufe Dein Forum! Angebote bitte an marc at gutt punkt it
Benutzeravatar
Tomac84
Mitglied
Beiträge: 53
Registriert: 10.09.2005 12:35
Wohnort: Niederkassel
Kontaktdaten:

Beitrag von Tomac84 »

Ja das wäre ja schön wenn google eine finden würde...

Habe den Search-Engine Watch-Mod instaliert.
Dort zeigt der mir andauernd an, dass googlebot auf diese Datei zugreifen will.. Hier mal ein Auszug:

Code: Alles auswählen

02/13/2006 - 10:14:59 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) ../[b]viewtopic.php?t=0 [/b]
02/13/2006 - 08:40:48 Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) ../index.php 
02/13/2006 - 08:40:45 Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) ../index.php 
02/13/2006 - 08:37:50 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) ../[b]viewtopic.php?t=0 [/b]
02/13/2006 - 07:41:54 Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) ../index.php 
02/13/2006 - 07:41:51 Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) ../index.php 
02/13/2006 - 07:07:14 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) [b]../viewtopic.php?t=0 [/b]
02/13/2006 - 05:24:26 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) ../viewtopic.php?t=0 
02/13/2006 - 05:14:27 Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) ../index.php 
02/13/2006 - 03:19:02 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) ../[b]viewtopic.php?t=0 [/b]
02/13/2006 - 02:53:28 Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) ../viewforum.php?f=24 
02/13/2006 - 02:42:33 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) ../index.php 
02/13/2006 - 01:14:51 Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) ../index.php 
02/13/2006 - 01:10:01 Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) ../index.php 
02/13/2006 - 01:09:58 Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp) ../index.php 
02/13/2006 - 01:07:19 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) ../[b]viewtopic.php?t=0 [/b]
02/13/2006 - 12:39:55 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) ../[b]viewtopic.php?t=0 [/b]
02/13/2006 - 11:47:36 Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html) ../[b]viewtopic.php?t=0[/b] 

Habe keine Ahnung warum der Bot darauf immer zugreift... Ich finde nirgendwo einen Link oder Verweis auf diese t=0...

HILFE :-)
Benutzeravatar
Harki
Mitglied
Beiträge: 144
Registriert: 25.04.2005 16:03
Wohnort: Hannover
Kontaktdaten:

Beitrag von Harki »

Ich möchte mich jetzt doch noch einmal trauen, meine eigene (sicher hoffnungslos überdimensionierte) Variante des Meta-Tag-Generierungs-MODs zu posten. Sie bewirkt folgendes:

Dynamische Meta-Tags werden nur für nichteingeloggte User generiert - also z.B. für SuMas. Ich finde das, wie schon oben dargelegt, sinnvoller, da man sich dann für Eingeloggte, die sich ohnehin nicht für die Meta-Tags interessieren, die zusätzlichen SQL-Abfragen spart. (Die Idee, dieses MOD mit dem "Showbots on Index-MOD" zu koppeln, habe ich lieber wieder aufgegeben... - siehe bitte die auskommentierte Zeile mit dem "areyouabot"). Für eingeloggte User werden "Standard"-Meta-Tags ausgegeben, die bei mir über die Sprachdateien definiert werden - das ist das abschließende else. Man könnte die Tags natürlich auch schon in diesem else festlegen.

Auch die oben u.a. mit IPB_Flüchtling diskutierte Idee, die Zahl der Keywords zu begrenzen, habe ich wieder rausgeschmissen - wenn man eine kluge und umfangreiche Stopwort-Datei hat, sind es ja eigentlich auch bei sehr langen Beiträgen nicht sooo viele Keywords, die da zustande kommen.

Wenn es sich um die URL eines einzelnen Posts handelt (z.B. .../viewtopic.php?p=1082#1082), werden die Meta-Tags "Date" "Keywords", "Author" und "Description" anhand ebendieses Posts generiert. "Author" ist der jeweilige Verfasser des Beitrages, "Description" die Systematisierung des Beitrages in der Forenstruktur, also ähnlich dem Title-Tag.

Wenn aber ein Topic angezeigt wird (z.B. /viewtopic.php?t=112), dann werden diese Tags ("Date" "Keywords", "Author" und "Description") - dem Einfall und dem Code von larsneo folgend - anhand des ersten Posts in diesem Topic generiert.

Um zu demonstrieren, wie das Ergebnis aussieht, ein Beispiel aus meinem kleinen Board:

Code: Alles auswählen

<meta name="date" content="2006-02-16T14:58:08+01:00" />
<meta name="keywords" content="weltraum, lügen, Ölsucher, zuspruchs, zurück, zigtausendfach, wisnewski, weg, warens, wahrscheinlich, vorgaukeln, verschwinden, vermutlich, vermarkten, verlage, unterseeinschen, tsunami, theorien, sprengungen, sowas, sonare, sicherlich, sentiments, schnell, schlau, scheinbar, sachen, sachbücher, russen, regel, prominent, plazierten, petitesse, objektivität, mondlandung, lösung, ließ, kleiner, kapitalisieren, juden, ja, israelische, iran, internets, internet, inszeniert, idee, herr, heiseforum, große, gießen, geringeren, geld, gehandelte, gefunden, gefilde, frage, foren, findet, finden, filmstudio, exkurs, erfreut, einschlägigen, durchgekauten, drucken, dioe, deutschland, debei, cia, buchform, buch, bröckerskonkurrent, bröckers, blöd, bilder, beißt, ausgelöst, atomversuche, atombewaffnete, araber, antiamerikanischen, antiamerikana, anerkannten, amis, amerikanischer, amerikaner, alleseits, allerwertesten, aeh, abteilung, 11lügen, 11" />
<meta name="author" content="etre_libre" />
<meta name="description" content="Konjunktiv 2 :: Rubriken :: Sternchen :: Lügen im Weltraum" />


/includes/page_header.php

Code: Alles auswählen

// META-Tag-Generierungs-MOD - Anfang

if ( isset($HTTP_GET_VARS[POST_POST_URL]) )
{
	$post_id = intval($HTTP_GET_VARS[POST_POST_URL]);
}
else 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 ( !$userdata['session_logged_in'] && ( $post_id || $topic_id ) )
// if ( areyouabot($_SERVER["HTTP_USER_AGENT"], TRUE) == 1 && ( $post_id || $topic_id ) )
{
	if ( $post_id )
	{
		$sql = "SELECT pt.post_subject, p.post_username, p.post_time, u.username, u.user_id, c.cat_title, f.forum_name, t.topic_title
			FROM " . POSTS_TABLE . " p, " . USERS_TABLE ." u," . POSTS_TEXT_TABLE . " pt, " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f, " . CATEGORIES_TABLE . " c
			WHERE f.forum_id = t.forum_id
			AND pt.post_id = p.post_id
			AND u.user_id = p.poster_id
			AND c.cat_id = f.cat_id
			AND t.topic_id = p.topic_id
			AND p.post_id = $post_id";
		if( ($result = $db->sql_query($sql)) )
		{
			if ( $meta_row = $db->sql_fetchrow($result) )
			{
				$meta_description = '<meta name="description" content="' . $board_config['sitename'] . ' :: ' . $meta_row['cat_title'] . ' :: ' . $meta_row['forum_name'] . ' :: ' . $meta_row['topic_title'];
				if ($meta_row['post_subject'] && ($meta_row['post_subject'] != $meta_row['topic_title']) )
				{
					$meta_description .= ' :: ' . $meta_row['post_subject'];
				}
				$meta_description .= '" />';
				
				
				if ( $meta_row['post_username'] )
				{
					$meta_author = '<meta name="author" content="' . $meta_row['post_username'] . '" />';
				}
				else
				{
					$meta_author = '<meta name="author" content="' . $meta_row['username'] . '" />';
				}
				$meta_date = '<meta name="date" content="' . date("c", $meta_row['post_time']) . '" />';
			}
		}
		$sql = "SELECT w.word_text
			FROM " . POSTS_TABLE . " p, " . SEARCH_MATCH_TABLE . " m, " . SEARCH_WORD_TABLE . " w
			WHERE p.post_id = m.post_id
			AND m.word_id = w.word_id
			AND p.post_id = $post_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 . '" />';
		}
	}
	
	else if ( $topic_id )
	{
		$sql = "SELECT c.cat_title, f.forum_name, t.topic_title, p.post_username, p2.post_time, u.username, u.user_id
			FROM " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f, " . CATEGORIES_TABLE . " c, " . POSTS_TABLE . " p, " . USERS_TABLE . " u, " . POSTS_TABLE . " p2
			WHERE f.forum_id = t.forum_id
			AND p.post_id = t.topic_first_post_id
			AND u.user_id = p.poster_id
			AND c.cat_id = f.cat_id
			AND t.topic_id = $topic_id
			AND p2.post_id = t.topic_last_post_id";
		if( ($result = $db->sql_query($sql)) )
		{
			if ( $meta_row = $db->sql_fetchrow($result) )
			{
				$meta_description = '<meta name="description" content="' . $board_config['sitename'] . ' :: ' . $meta_row['cat_title'] . ' :: ' . $meta_row['forum_name'] . ' :: ' . $meta_row['topic_title'] . '" />';
				
				if ( $meta_row['post_username'] )
				{
					$meta_author = '<meta name="author" content="' . $meta_row['post_username'] . '" />';
				}
				else
				{
					$meta_author = '<meta name="author" content="' . $meta_row['username'] . '" />';
				}
				$meta_date = '<meta name="date" content="' . date("c", $meta_row['post_time']) . '" />';
			}
		}
	
	
		$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 . '" />';
		}
	}
}

else
{
	$meta_description = $lang['META_DESCRIPTION'];
	$meta_keywords = $lang['META_KEYWORDS'];
	$meta_author = $lang['META_AUTHOR'];
	$meta_date = '';
}
	
// META-Tag-Generierungs-MOD - Ende
Edit:
- Korrektur eines durch falsche Einrückungen [ externes Bild ] bedingten, aber dennoch peinlichen Denkfehlers in der nun so lautenden Zeile "if ( !$userdata['session_logged_in'] && ( $post_id || $topic_id ) )"
Zuletzt geändert von Harki am 17.02.2006 23:56, insgesamt 2-mal geändert.
Benutzeravatar
Tomac84
Mitglied
Beiträge: 53
Registriert: 10.09.2005 12:35
Wohnort: Niederkassel
Kontaktdaten:

Beitrag von Tomac84 »

Das finde ich eine tolle Idee...

Gibt es eine Möglichkeit, zu der Description (Wo der Post steht- ähnlich dem Titel) auch die ersten Wörter des ersten Post zu schreiben??

Ungefähr so:
<meta name="description" content="Konjunktiv 2 :: Rubriken :: Sternchen :: Lügen im Weltraum -- Hallo Forum, Im Weltraum werden viele Sterne und Sternschnupper gefunden. Warum ist die so?" />

LG Thomas
fussle
Mitglied
Beiträge: 1246
Registriert: 25.06.2002 07:31

Beitrag von fussle »

Lassen sich die dynamischen Metatags auch für die Indexseite einbauen?
Antworten

Zurück zu „phpBB 2.0: Mod Suche/Anfragen“