Suchmaschinenfreundliche Links

virus
Titel: Suchmaschinenfreundliche Links
Version: 1.0
Beschreibung: Dieses Addon verändert die Verlinkung der einzelnen Foren und Themen sowie Profilseiten zu Suchmaschinenfreundliche Links.

d.h.

Vorher:
thread.php?goto=lastpost&thradid=35

Nacher:
titel_des_threads.t35.lastpost.html

Daraus resultiert das die wichtigen Keywords in der Verlinkung drinstehen und den Suchmaschinen statische Seiten vorgegaukelt werden und die Adressen besser verfolgen können.

Das Addon darf nur bei Einbindung des (c) verwendet werden.
----


weiter zum Download
Bräke
Ich würde dich bitte, nochmal über dein C-Hinweis nachzudenken, das Addon ist nicht sehr groß und ein C-Hinweis im Footer auf jeder Seite vom Forum halte ich für übertrieben.
AMD-Fan
Ich bekomm jedes Mal den Fehler

Parse error: syntax error, unexpected $end in C:\xampp\htdocs\wbb2_test\acp\lib\functions.php on line 3180

In den Zeilen wurde jedoch noch nie etwas verändert.

Die letzten paar Zeilen der funtcions.php:

php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
/**
 * searches for hairy strings in images - IE security breach
 * LM: 09.05.2006 00:12 Zagon Hornik
 *
 * @param  string  filename
 * @return boolean true|false
 */
function checkFile($file)
{
    if ($f fopen ($file"rb"))
    {
        // read some bytes
        $line fread ($f4096);
        
        if (preg_match ('@<script[^>]*?>.*?</script>@si'$line))
        {
            // found some bad string in file
            fclose ($f);
            unset ($line);
            return false;
        }
        else 
        {
            fclose ($f);
            unset ($line);
            return true;
        }
    }
}
?>
virus
häng mal bitte deine komplette functions.php an
foruni.de
Nettes Addon, nach dem Macher24 nicht mehr existiert, suche ich schon länger danach. Aber ein Footer-Link wird es mir wahrscheinlich auch nicht wert sein.

Schade
Nero.X
Ich habs auch mal versucht in ein Testforum einzubauen. Allerdings hat er mir nach dem bearbeiten der functions.php den selben Fehler wie bei AMD-Fan ausgegeben.
Problem ist nur gewesen das der Fehler in der letzten Zeile de Datei war also beim "?>"

Nero
virus
wie gesagt gibt mir eure functions.php

in meinem testboard und in dme von nem kollegen hats nmlich gepasst
foruni.de
Gibts ne Möglichkeit, diesen Dienst auch entgeldlich zu entlohnen, ohne einen Link zu setzen?
AMD-Fan
Im Anhang meine komplette functions.php
batida444
Ein Fehler in der Install

Zitat:
// ***************************************************************************
*********//
// * Suche
// ***************************************************************************
*********//

if ($permissioncache[$boards['boardid']]['can_enter_board']) {
if (wbb_strlen($boards['topic']) > 30) $topic = wbb_substr($boards['topic'], 0, 30).'...';
else $topic = $boards['topic'];

// ***************************************************************************
*********//
// * erstezen durch::
// ***************************************************************************
*********//

if ($showlastposttitle == 1) {
if ($permissioncache[$boards['boardid']]['can_enter_board']) {
if (wbb_strlen($boards['topic']) > 30) $topic = wbb_substr($boards['topic'], 0, 30).'...';
else $topic = $boards['topic']; $lasttopic = title_to_url(html_entity_decode($boards['topic']));


Wenn man das so macht, hat man 2mal
code:
1:
2:
					if ($showlastposttitle == 1) {

drinstehen.

Muss also heissen:
Zitat:
// ***************************************************************************
*********//
// * Suche
// ***************************************************************************
*********//

if ($showlastposttitle == 1) {
if ($permissioncache[$boards['boardid']]['can_enter_board']) {
if (wbb_strlen($boards['topic']) > 30) $topic = wbb_substr($boards['topic'], 0, 30).'...';
else $topic = $boards['topic'];


Insgesamt nicht schlecht, aber wieder nur eine halbherzige Geschichte. Es stehen noch zu viele php-Links im Forum (z.B. in der usercbar), das ergibt dann DC.

Mach noch ne schöne google-Sitemap dazu, welche die gleichen Links hat und als XML-Seite ausgegeben wird, dann mach ich auch gerne nen Link in den Footer Augenzwinkern

Greetz
Günni
AMD-Fan
Vielen Dank batida444!
Jetzt funktioniert es smile
batida444
Wünschenswerte Ergänzungen:

- Im Profil wird weiterhin der php-Link zum letzten Beitrag angezeigt, dort wäre eine Umwandlung als html-Link ebenfalls nett

- Umlaute und Co. werden nicht korrekt umgewandelt.
Aus dem Titel: Testthema mit Umlauten !"§$%&/()=?äÄöÖüÜß
wird bei mir: http://www.meinserver.de/testthema_mit_umlauten_
(Könnte ja vielleicht nochmal jemand testen bei sich, ob das auch bei ihm so auftritt oder nur bei mir)

- Umwandlung des Links zum Userprofil in jedem Beitrag von php-Link zu html-Link

(Vorheriges Thema | Nächstes Thema <<< evtl. auch als html-Links ? )

- Wie weiter oben schon angesprochen, auch die Links in der usercbar in html-Links umwandeln

- weiß nu nich, ob das so gehört, aber foreninterne Links werden bei mir nicht mehr umgewandelt ?

- und eben ne schicke Sitemap großes Grinsen

Ansonsten *daumenhoch* für die Arbeit. Ich hatte auch schonmal angefangen, das umzusetzen und war quasi auf dem gleichen Weg wie du, aber irgendwie hab ichs dann doch gelassen großes Grinsen

Greetz
Günni

edit: Der Direktlink pro Posting ist ebenfalls noch ein php-Link, auch da wäre eine Umwandlung sinnvoll
virus
Zitat:
Original von batida444
edit: Der Direktlink pro Posting ist ebenfalls noch ein php-Link, auch da wäre eine Umwandlung sinnvoll


hmm welchen link meinst du?
batida444
Der Link, der über dem NewPost-Icon liegt.

Aber ich bin schon seit 2 Tagen dabei, alles mögliche umzuwandeln großes Grinsen

Die Links zu Profilen hab ich soweit komplett durch (bzw. die, die auch für Bots intressant sind, also PMS usw. brauchen ja nicht) und werd mich dann an den Rest machen. Es sind auch noch etliche Beitragslinks da, die nicht umgewandelt werden...

Greetz
Günni

edit: Mir ist aufgefallen, dass du bei Leerzeichen innerhalb eines Thementitels das Leerzeichen gegen einen Unterstrich ersetzt.
Da wäre ein Minuszeichen besser, da der Unterstrich von den Bots als Verbindung angesehen wird, das Minuszeichen aber als Trennung.

Also
Dies_ist_ein_Testsatz <<< 1 Wort für Bots
Dies-ist-ein-Testsatz <<< 4 Wörter für Bots

edit2: Bei der Umwandlung der Thementitel wird der Link nicht vollgeständig generiert, sobald ein " im Titel ist.
Ebenso wird garkein Link ausgegeben, sobald ein % im Titel ist.
Und weiterhin macht die Raute # Probleme

edit3:
Damit die Fehler, die ich bei edit2 beschrieben habe, behoben werden (inkl. edit1-Bemerkung), in der functions.php die gesamte Funktion
function title_to_url gegen diese hier ersetzen:
code:
1:
2:
3:
4:
5:
6:
function title_to_url($title) {
	$umlaute = Array("/ä/","/ö/","/ü/","/Ä/","/Ö/","/Ü/","/ß/","/&/","/ /","/\?/","/\!/","/\./","/\(/","/\)/","/\,/","/\//","/%/","/#/","/\"/");
	$replace = Array("ae" ,"oe" ,"ue" ,"Ae" ,"Oe" ,"Ue" ,"ss" ,"und", "-" ,""    ,""    ,"-"   ,""    ,""    ,""    ,"-"   ,""   ,""   ,"");
	$title = strtolower(preg_replace($umlaute,$replace,$title));
	return $title;
}


edit4: Und damit es keinen DC mit den feinen Links gibt, sollte man noch die SID für Gäste entfernen (die brauchen sie eh nicht großes Grinsen ). Anleitung gibts hier im Forum
propag
Zitat:
Fatal error: Call to undefined function title_to_url() in /www/htdocs/w0081cd5/board.php on line 339


Dieses Fehler gibt er mir raus, wenn ich ins Forum will, was kann es sein?
virus
Zitat:
Original von propag
Zitat:
Fatal error: Call to undefined function title_to_url() in /www/htdocs/w0081cd5/board.php on line 339


Dieses Fehler gibt er mir raus, wenn ich ins Forum will, was kann es sein?


hast du die functions.php richtig bearbeitet?

also dort die function eingefügt?
propag
ja schon, aber ich werde es überprüfen nochmal .. Danke
foruni.de
Ich sehs schon, das wird ein Gemeinschaftsprojekt großes Grinsen

Nochn Edit:

inder functions.php die kompletter title to url funktion ersetzen mit:

php:
1:
2:
3:
4:
5:
6:
function title_to_url($title) {
    $umlaute = Array("/ä/","/ö/","/ü/","/Ä/","/Ö/","/Ü/","/ß/","/&/","/ /","/\?/","/\!/","/\./","/\(/","/\)/","/\,/","/\//","/%/","/#/","/\"/","/:/");
    $replace = Array("ae" ,"oe" ,"ue" ,"Ae" ,"Oe" ,"Ue" ,"ss" ,"und""-" ,""    ,""    ,"-"   ,""    ,""    ,""    ,"-"   ,""   ,""   ,""  ,"");
    $title strtolower(preg_replace($umlaute,$replace,$title));
    return $title;
}


Dies ersetzt auch Doppelpunkte (zwingend)
greek17
Habe es eingebaut ... Fehler Meldungen in den Profilen und im Forum !

Wieder ausgebaut ... vielleicht sollte man sowas erst bereitstellen wenn alles 100% läuft !!!! Versagt
virus
Zitat:
Original von greek17
Habe es eingebaut ... Fehler Meldungen in den Profilen und im Forum !

Wieder ausgebaut ... vielleicht sollte man sowas erst bereitstellen wenn alles 100% läuft !!!! Versagt


ich hatte es von diversen leuten testen lassen und da lief es einwandfrei.

schonmal dran gedacht das du auch einfach einen fehler beim einbau gemacht hast?