Topiclink omzetten in topictitel binnen het forum

Hulp nodig bij een modificaties of op zoek naar een MOD?
Forumregels

LEES: Richtlijnen voor Support. Vul de support template in!
phpBB3.0.x
Verschaf iemand geen servertoegang tenzij het niet anders kan. Maak altijd eerst een volledige backup en verander de inloggevens na afloop. Eigen risico.
Plaats reactie
Gebruikersavatar
_Ron_
Berichten: 459
Lid geworden op: 16 jun 2003, 17:29
Contacteer:

Topiclink omzetten in topictitel binnen het forum

Bericht door _Ron_ » 11 jan 2010, 22:25

Deze mod wordt door de auteur niet meer verder ontwikkeld, maar de mod is vreselijk handig.

Het maakt van: viewtopic.php?f=7&t=52069 dit: phpBB 3.0.6 uitgebracht

Het zou super zijn als een developper deze mod zou kunnen en willen oppakken en aanpassen voor 3.0.6 :)
Laatst gewijzigd door _Ron_ op 15 aug 2010, 23:09, 1 keer totaal gewijzigd.
hanff.nl
Gij zult niet stelen.... De overheid duldt geen concurrentie!

Gebruikersavatar
_Ron_
Berichten: 459
Lid geworden op: 16 jun 2003, 17:29
Contacteer:

Re: Topic link omzetten in topic titel binnen het forum

Bericht door _Ron_ » 15 aug 2010, 23:06

Dit is inmiddels gebeurd. Het is een mod in ontwikkeling, maar op mijn eigen forum (3.07) werkt deze perfect.
Zie http://www.phpbb.com/community/viewtopi ... #p12797703

Aantal te bewerken bestand(en): 1

Instructies:

open
includes/functions_content.php

Zoek:

Code: Selecteer alles

    $text            = $relative_url; 
Vervang door:

Code: Selecteer alles

    $text            = fetch_forumtitle($url); 
Zoek:

Code: Selecteer alles

    $text    = htmlspecialchars($text); 
Voeg toe, erna:

Code: Selecteer alles

    $text    = str_replace('&', '&', $text); 
Zoek:

Code: Selecteer alles

/**
 * make_clickable function
Voeg toe, ervoor:

Code: Selecteer alles

    /**
    *  BartVB  Show actual forumname or topic title instead of link to forum URLs
    */
    function fetch_forumtitle($url)
    {
        global $db, $auth;

        // Search for relevant URL parameters (preceded by '?' or 'amp;'
        if(preg_match_all('/(?:\?|&)([ptf])=(\d+)/', $url, $matches))
        {
            $post_id = $topic_id = $forum_id = 0;
            foreach($matches[1] as $set => $param)
            {
                switch ($param)
                {
                    case 'p':
                        $post_id = $matches[2][$set];
                        break;
                    case 't':
                        $topic_id = $matches[2][$set];
                        break;
                    case 'f':
                        $forum_id = $matches[2][$set];
                        break;
                }
            }

            if ($forum_id != 0 && !$auth->acl_get('f_read', $forum_id))
            {
                return $url;
            }

            if ($topic_id != 0 || $post_id != 0)
            {
                $sql = "SELECT
                        t.forum_id, topic_title, forum_name " . ($post_id != 0 ? ", username" : "") . "
                    FROM " .
                        ($post_id != 0 ? POSTS_TABLE . " p, " . USERS_TABLE . " u, " : "") .
                        TOPICS_TABLE . " t
                        LEFT JOIN " . FORUMS_TABLE . " f ON (t.forum_id = f.forum_id)
                    WHERE " .
                        ($post_id != 0 ? "post_id = $post_id AND p.topic_id = t.topic_id AND p.poster_id = u.user_id " : "topic_id = " . $topic_id);
                $result = $db->sql_query($sql);
                if($row = $db->sql_fetchrow($result))
                {
                    if (!$auth->acl_get('f_read', $row['forum_id']))
                    {
                        return $url;
                    }

                    $username = ($post_id != 0) ? $row['username'] . " @ " : '';
                    $forum_abbr = (preg_match('/^(\[.+\])/', $row['forum_name'], $matches)) ? $matches[1] . ' ' : '';
                    return $username . $forum_abbr . $row['topic_title'];
                }
            }
            elseif ($forum_id != 0)
            {
                $sql = "SELECT forum_name FROM " . FORUMS_TABLE . " WHERE forum_id = " . $forum_id;
                $result = $db->sql_query($sql);
                if ($row = $db->sql_fetchrow($result))
                {
                    return $row['forum_name'];
                }
            }
        }

        return $url;
    }  
Klaar!
hanff.nl
Gij zult niet stelen.... De overheid duldt geen concurrentie!

Gebruikersavatar
AirWarrior
Berichten: 724
Lid geworden op: 16 jan 2008, 11:31

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door AirWarrior » 16 aug 2010, 10:42

Zeker makkelijk en werkt prima. THX
Signed by:
AirWarrior
Heb fun in het leven, neem niet alles serieus.

Gebruikersavatar
Stigter
Berichten: 290
Lid geworden op: 25 jan 2009, 12:38
Locatie: Maassluis
Contacteer:

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door Stigter » 18 aug 2010, 06:37

werkt dit alleen met interne links? Of ook met externe links?
Afbeelding

Gebruikersavatar
brandsrus
Berichten: 1966
Lid geworden op: 01 jul 2005, 19:38
Locatie: r. Лeувapдeн
Contacteer:

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door brandsrus » 18 aug 2010, 08:43

Tot zover als ik de bijbehorende topic lees alleen voor interne links. Volgens mij heeft iemand anders de MOD van Bart overgenomen en zal waarschijnlijk hier en daar nog wat dingen wijzigen maar voor de rest werkt deze MOD naar behoren.

NB: Een aantekening, hij is nog in development dus wordt aangeraden niet openbaar te gebruiken ivm het phpBB.com team hem nog niet gevalideerd heeft.

Gebruikersavatar
Stigter
Berichten: 290
Lid geworden op: 25 jan 2009, 12:38
Locatie: Maassluis
Contacteer:

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door Stigter » 18 aug 2010, 16:11

Dat lees ik ook, maar bij bijvoorbeeld wordpress krijg je wanneer je een link plaatst en daarna met je muis erover heen gaat een voorbeeld van de pagina. Of de url wordt omgezet naar de paginanaam,

Nu begrijp ik dat de url wel bij een interne link van het forum naar een paginanaam kan worden verandert, maar extern niet. Bestaat zo'n mod wel? Zoja, iemand een idee hoe die mod heet?
Afbeelding

Gebruikersavatar
_Ron_
Berichten: 459
Lid geworden op: 16 jun 2003, 17:29
Contacteer:

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door _Ron_ » 19 aug 2010, 00:02

Bovenstaande MOD betreft inderdaad alleen interne links. En dit topic gaat ook alleen om interne links binnen phpBB (zie topictitel).
Andere forumsoftware zoals bijvoorbeeld Wordpress staan hier natuurlijk helemaal buiten.

@Stigter: Ik wil in dit topic dan ook graag geen verdere discussie over externe links. In het onderwerp en in de openingspost wordt gelijk al aangegeven dat het om INTERNE links binnen phpBB gaat.
hanff.nl
Gij zult niet stelen.... De overheid duldt geen concurrentie!

Gebruikersavatar
_Ron_
Berichten: 459
Lid geworden op: 16 jun 2003, 17:29
Contacteer:

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door _Ron_ » 07 aug 2011, 22:54

Even een ordinair schopje omhoog :)
Bovenstaande actie zorgt er dus voor dat een interne link in een bericht wordt omgezet in de bijbehorende topictitel (werkt nog steeds super!).

Maar hoe pas ik nu de opmaak van de gemaakte link aan? Ik wil hem bijvoorbeeld vetgedrukt, of een ander kleurtje, zodat hij ook echt opvalt als zijnde een link :roll:
hanff.nl
Gij zult niet stelen.... De overheid duldt geen concurrentie!

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door Ger » 08 aug 2011, 10:14

Ik heb niets getest ofzo, dus zorg -zoals altijd- voor backups. Maar volgens mij moet dit het ongeveer zijn:

In het laatste codeblok van jouw wijzigingen staat dit:

Code: Selecteer alles

        return $url;
Maak daar eens dit van:

Code: Selecteer alles

        $url = '<span class="relatieve_link">' . $url . '</span>';
        return $url;
Hiermee ken je de css class relatieve_link toe. Als je die nu vervolgens in je stylesheet opneemt (bijvoorbeeld in colours.css):

Code: Selecteer alles

.relatieve_link {
        color: #CC0000;
        font-weight: bold;
}
Die class kun je natuurlijk allerlei stijldefinities meegeven, net wat je zelf wil.

Gebruikersavatar
_Ron_
Berichten: 459
Lid geworden op: 16 jun 2003, 17:29
Contacteer:

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door _Ron_ » 08 aug 2011, 10:21

Hm, daar zal ik straks na de lunch eens mee gaan spelen dan. Thnx Ger :)
hanff.nl
Gij zult niet stelen.... De overheid duldt geen concurrentie!

Gebruikersavatar
AirWarrior
Berichten: 724
Lid geworden op: 16 jan 2008, 11:31

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door AirWarrior » 08 aug 2011, 16:57

Ger schreef:Ik heb niets getest ofzo, dus zorg -zoals altijd- voor backups. Maar volgens mij moet dit het ongeveer zijn:

In het laatste codeblok van jouw wijzigingen staat dit:

Code: Selecteer alles

        return $url;
Deze staat er 2x in. Welke moet je hebben dan?
Signed by:
AirWarrior
Heb fun in het leven, neem niet alles serieus.

Gebruikersavatar
Ger
Berichten: 4864
Lid geworden op: 03 jan 2006, 22:23
Locatie: 192.68.1.100
Contacteer:

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door Ger » 08 aug 2011, 18:08

Hij staat er zelfs 3x in zie ik nu. ;)
De laatste moet je hebben.

Gebruikersavatar
AirWarrior
Berichten: 724
Lid geworden op: 16 jan 2008, 11:31

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door AirWarrior » 08 aug 2011, 21:38

LOL
Ok dank je Ger
Signed by:
AirWarrior
Heb fun in het leven, neem niet alles serieus.

Gebruikersavatar
OmkePom
Berichten: 545
Lid geworden op: 04 mei 2010, 14:32
Contacteer:

Re: Topiclink omzetten in topictitel binnen het forum

Bericht door OmkePom » 12 dec 2011, 10:40

Ger schreef:Ik heb niets getest ofzo, dus zorg -zoals altijd- voor backups. Maar volgens mij moet dit het ongeveer zijn:

In het laatste codeblok van jouw wijzigingen staat dit:

Code: Selecteer alles

        return $url;
Maak daar eens dit van:

Code: Selecteer alles

        $url = '<span class="relatieve_link">' . $url . '</span>';
        return $url;
Hiermee ken je de css class relatieve_link toe. Als je die nu vervolgens in je stylesheet opneemt (bijvoorbeeld in colours.css):

Code: Selecteer alles

.relatieve_link {
        color: #CC0000;
        font-weight: bold;
}
Die class kun je natuurlijk allerlei stijldefinities meegeven, net wat je zelf wil.
Ik weet dit is een oude Topic, maar ik wil toch mijn linken Blauw gekleurd hebben in mijn Forum zowel in de Topics als in mijn Ajax Chat.

Bovenstaande werkt perfect wat betreft hoe de linken eruitzien maar de kleur krijg ik geheel niet voor elkaar, mogelijk doe of plaats ik het in mijn style verkeerd, maar waar moet ik het dan wel plaatsen?

Ik gebruik 3.0.9 style ProFormell. pls can some1 help me :(
Afbeelding

Plaats reactie