Zur Boardunity Forenstartseite
  #1  
Alt 13.05.2005, 14:41
Benutzerbild von MrNase
Mitglied
 
Registriert seit: 06.2003
Ort: /
Beiträge: 2.639

vBulletin: Verlinkung verändern.


Hallo!

Dank ein paar kleiner Modifikationen generiert mein vB nun Links die wie folgt aussehen:

http://www. pagodentreff.de/diskussionsforum/t213-5-pagoden-in-der-polizeikontrolle.html


Nun kürzt das vB ja die Links automatisch ein und ich möchte es so verändern, dass wenn es
eine interne Verlinkung ist also pagodentreff.de/diskussionsforum/ drin vor kommt UND
es auf .html endet der Link wie folgt aussieht:

Thema: 5 pagoden in der polizeikontrolle (der letzte Teil halt verlinkt)


Dabei brauche ich die Hilfe eines regexp-Experten der mir dabei weiterhelfen kann.

Nochmal zusammenfassen:
Herausfinden ob pagodentreff.de/diskussionsforum/ und ein .html in der URL vorkommt und wenn, dann so verändern, dass nur noch der letzte Teil da steht.


Ich hoffe man hat mich verstanden


Die URL liegt übrigens als string vor und kann daher modifiziert werden.



Momentan schaut die Stelle im Quellcode so aus:
Code:
	if (!trim($link) OR $text == $rightlink)
	{
		$tmp = unhtmlspecialchars($rightlink);
		
		if (strlen($tmp) > 55 AND !$wysiwygparse)
		{
			 $text = htmlspecialchars_uni(substr($tmp, 0, 60 - strlen(basename($tmp))) . '.../' . basename($tmp)); 
		}
	}
$link ist href="X"
$text ist <a>X</a>
  #2  
Alt 13.05.2005, 15:12
Mitglied
 
Registriert seit: 10.2003
Ort: Bottrop
Beiträge: 779
Ungetestet und mit der zusätzlichen Gefahr, dass ich seit einiger Zeit nicht mehr mit preg_match gearbeitet habe (und jetzt zu faul bin, im Manual nachzugucken, welche Reihenfolge die Parameter habe):

PHP-Code:
    if (!trim($link) OR $text == $rightlink)
    {
        
$tmp unhtmlspecialchars($rightlink);

        
$matches = array();
        if(
preg_match('_pagodentreff\.de/diskussionsforum/\w[\d]+(.*?)\.html$_'$link$matches)) {
            
$text str_replace('_'' '$matches[1]);
        } elseif (
strlen($tmp) > 55 AND !$wysiwygparse)
        {
             
$text htmlspecialchars_uni(substr($tmp060 strlen(basename($tmp))) . '.../' basename($tmp)); 
        }
    } 

__________________
Patrick Gotthardt
Patrick Gotthardt on Software
  #3  
Alt 13.05.2005, 15:19
Benutzerbild von MrNase
Mitglied
 
Registriert seit: 06.2003
Ort: /
Beiträge: 2.639
Hallo!

Mir wurde bereits im IRC überaus kompetent weitergeholfen und bislang funktioniert alles so wie es soll (auch wenn der Code momentan deinem nicht sehr gleicht ). Danke für deine Antwort

Antwort


Stichworte
-

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Das vBulletin 3 Daniel Richter Erfahrungsberichte 12 23.10.2005 17:14
Habe vBulletin Voll Lizenz günstig abzugeben! Luki Marktplatz: Projekt, Domain- & Jobbörse 5 01.10.2004 11:02
Probleme mit dem vBulletin 2.3.X Frederic Schneider Forensoftware 12 12.08.2003 22:41






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