Pagina 1 van 1
Klikken op link moet nieuwe venster openen
Geplaatst: 16 jul 2008, 21:49
door Hans Kamp
- Adres van je forum: http://www.wowforum.nl
Event. modificaties op je forum: Eigen stijl (WoW Style 3.0)
Wanneer ontstond het probleem? Vandaag. Het is geen probleem, maar een suggestie van de gebruikers.
phpBB versie: 3.0.0
Heb je onlangs iets veranderd aan je forum? Nee
Wat is het probleem?
Het huidige gedrag is dat, als je binnen het forum op een link klikt, wordt de nieuwe link geladen op de plaats van het forum. Het forum is dan "weg", totdat je op de Vorige-knop van de browser klikt. Een directe oplossing is Shift-klik of een scroll-wheel-klik, maar het zou bij een gewone klik moeten kunnen.
Het gewenste gedrag is dat bij externe link er een nieuw venster of tab moet worden geopend. Ik ben er op mijn forum nog niet uit wat de wensen van de gebruikers zijn.
Re: Klikken op link moet nieuwe venster openen
Geplaatst: 16 jul 2008, 23:21
door Mid
Re: Klikken op link moet nieuwe venster openen
Geplaatst: 17 jul 2008, 17:35
door Hans Kamp
Als ik dat doe houdt mijn forum op met werken. Ik kan de volgende bestanden wel laten zien:
bbcode.html
- Spoiler: bekijk
Code: Selecteer alles
<!-- BEGIN ulist_open --><ul style="list-style-type: {LIST_TYPE}"><!-- END ulist_open -->
<!-- BEGIN ulist_open_default --><ul><!-- END ulist_open_default -->
<!-- BEGIN ulist_close --></ul><!-- END ulist_close -->
<!-- BEGIN olist_open --><ol style="list-style-type: {LIST_TYPE}"><!-- END olist_open -->
<!-- BEGIN olist_close --></ol><!-- END olist_close -->
<!-- BEGIN listitem --><li><!-- END listitem -->
<!-- BEGIN listitem_close --></li><!-- END listitem_close -->
<!-- BEGIN quote_username_open -->
<div class="quotetitle">{USERNAME} {L_WROTE}:</div><div class="quotecontent">
<!-- END quote_username_open -->
<!-- BEGIN quote_open -->
<div class="quotetitle"><b>{L_QUOTE}:</b></div><div class="quotecontent">
<!-- END quote_open -->
<!-- BEGIN quote_close -->
</div>
<!-- END quote_close -->
<!-- BEGIN code_open -->
<div class="codetitle"><b>{L_CODE}:</b></div><div class="codecontent">
<!-- END code_open -->
<!-- BEGIN code_close -->
</div>
<!-- END code_close -->
<!-- BEGIN inline_attachment_open -->
<div class="attachtitle">{L_ATTACHMENT}:</div><div class="attachcontent">
<!-- END inline_attachment_open -->
<!-- BEGIN inline_attachment_close -->
</div>
<!-- END inline_attachment_close -->
<!-- BEGIN b_open --><strong><!-- END b_open -->
<!-- BEGIN b_close --></strong><!-- END b_close -->
<!-- BEGIN u_open --><span style="text-decoration: underline"><!-- END u_open -->
<!-- BEGIN u_close --></span><!-- END u_close -->
<!-- BEGIN i_open --><em><!-- END i_open -->
<!-- BEGIN i_close --></em><!-- END i_close -->
<!-- BEGIN color --><span style="color: {COLOR}">{TEXT}</span><!-- END color -->
<!-- BEGIN size --><span style="font-size: {SIZE}%; line-height: normal">{TEXT}</span><!-- END size -->
<!-- BEGIN img --><img src="{URL}" alt="{L_IMAGE}" /><!-- END img -->
<!-- BEGIN url --><a href="{URL}" onclick="window.open(this.href);return false;" class="postlink">{DESCRIPTION}</a><!-- END url -->
<!-- BEGIN email --><a href="mailto:{EMAIL}">{DESCRIPTION}</a><!-- END email -->
<!-- BEGIN flash -->
<object classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" codebase="http://active.macromedia.com/flash2/cabs/swflash.cab#version=5,0,0,0" width="{WIDTH}" height="{HEIGHT}">
<param name="movie" value="{URL}" />
<param name="play" value="false" />
<param name="loop" value="false" />
<param name="quality" value="high" />
<param name="allowScriptAccess" value="never" />
<param name="allowNetworking" value="internal" />
<embed src="{URL}" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" width="{WIDTH}" height="{HEIGHT}" play="false" loop="false" quality="high" allowscriptaccess="never" allownetworking="internal"></embed>
</object>
<!-- END flash -->
functions_content.php
- Spoiler: bekijk
Code: Selecteer alles
...
$url = htmlspecialchars($url);
$text = htmlspecialchars($text);
$append = htmlspecialchars($append);
/* $html = "$whitespace<!-- $tag --><a$class href=\"$url\">$text</a><!-- $tag -->$append"; */
$html = "$whitespace<!-- $tag --><a$class href=\"$url\"" . (($type == MAGIC_URL_EMAIL) ? " onclick=\"window.open(this.href);return false;\"" : "") . ">$text</a><!-- $tag -->$append";
return $html;
...
functions.php
- Spoiler: bekijk
Code: Selecteer alles
...
/*
case 'bbcode_htm':
return array(
'#<!\-\- e \-\-><a href="mailto:(.*?)">.*?</a><!\-\- e \-\->#',
'#<!\-\- l \-\-><a (?:class="[\w-]+" )?href="(.*?)(?:(&|\?)sid=[0-9a-f]{32})?">.*?</a><!\-\- l \-\->#',
'#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="(.*?)">.*?</a><!\-\- \1 \-\->#',
'#<!\-\- s(.*?) \-\-><img src="\{SMILIES_PATH\}\/.*? \/><!\-\- s\1 \-\->#',
'#<!\-\- .*? \-\->#s',
'#<.*?>#s',
);
*/
case 'bbcode_htm':
return array(
'#<!\-\- e \-\-><a href="mailto:(.*?)">.*?</a><!\-\- e \-\->#',
'#<!\-\- l \-\-><a (?:class="[\w-]+" )?href="(.*?)(?:(&|\?)sid=[0-9a-f]{32})?" onclick="window\.open\(this\.href\);return false;">.*?</a><!\-\- l \-\->#',
'#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="(.*?)" onclick="window\.open\(this\.href\);return false;">.*?</a><!\-\- \1 \-\->#',
'#<!\-\- s(.*?) \-\-><img src="\{SMILIES_PATH\}\/.*? \/><!\-\- s\1 \-\->#',
'#<!\-\- .*? \-\->#s',
'#<.*?>#s',
);
break;
...
Bij de tweede en derde bestand heb ik alleen de relevante fragmenten laten zien, omdat de bestanden zelf te groot zijn om hier weer te geven.
EDIT: Ik heb de fout in bbcode.html gezien en veranderd. Ik heb de nieuwe versie geüpload, maar het probleem met witte pagina's blijft. Ik heb - omdat het forum druk bezocht wordt - de oude bestanden weer teruggezet.
EDIT: Commentaar uit bbcode verwijderd en oude regel in functions_content.php afgesloten met */. Ik was vergeten de regel af te sluiten. Het forum werkt, maar het resultaat is hetzelfde als voor de verandering. Dus geen nieuw venster bij het openen van een link. Link wordt in het venster van het forum geopend, hetgeen niet langer de bedoeling is.
Re: Klikken op link moet nieuwe venster openen
Geplaatst: 17 jul 2008, 19:50
door Hans Kamp
Het werkt eigenlijk wel, maar de URL moet tussen
en staan. Als dat zo is wordt er een nieuw tabblad geopend (getest met Firefox 3.0). Als de URL niet tussen
en staat wordt de URL in hetzelfde tabblad geopend als het forum is.
Ik heb graag dat het nieuwe tabblad
altijd wordt geopend. Welke veranderingen moet ik dan aanbrengen?
Re: Klikken op link moet nieuwe venster openen
Geplaatst: 17 jul 2008, 20:54
door Mid
Er zijn meerdere topics over dit onderwerp te vinden, waarin de materie uitgebreid aan de orde is geweest. Even terugzoeken in de topics en lezen is dus de snelste weg.

Re: Klikken op link moet nieuwe venster openen
Geplaatst: 17 jul 2008, 21:06
door Hans Kamp
Okido. Ik zal eens zoeken in de oudere topics over dit onderwerp.
Re: Klikken op link moet nieuwe venster openen
Geplaatst: 29 jul 2008, 14:40
door Hans Kamp
Ik kom eigenlijk tot de conclusie dat de mod van de URL naar de PHPBB-wiki niet compleet is. Het vervangt alleen de link als die tussen [url]-tags staan. Maar ik zou graag willen dat elke link een nieuw venster of een tab opent. Dus welke veranderingen moet ik nog meer aanpassen dan wat er in de URL staat? Dus geen nieuwe mods, want daar heb ik niets aan, ik wil gewoon weten wat ik verder nog moet aanpassen. Als dat niet mogelijk is, draai ik de gemaakte veranderingen weer terug.
Re: Klikken op link moet nieuwe venster openen
Geplaatst: 29 jul 2008, 19:08
door Fridge
Ik gebruik de Prime Links mod van primehalo (te vinden op phpbb.com) en daarmee openen al je links naar externe domeinen in een nieuw venster, ook is het mogelijk om forumlinks en links van leden die ze in hun profiel hebben staan in een nieuw venster te openen.
Re: Klikken op link moet nieuwe venster openen
Geplaatst: 29 jul 2008, 19:38
door Hans Kamp
Bedankt, ik zal daar eens kijken.