Always open in new tab scriptje, maar mét uitzondering

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ester Dammers

Ester Dammers

20/11/2022 17:45:42
Quote Anchor link
Hoi, ik heb mijn website op WordPress draaien en gebruikte jarenlang een plug-in die er onder meer voor zorgt dat externe links in een nieuw venster worden geopend. Deze plug-in werkt helaas niet meer (en is ook 'discontinued' dus nu zoek ik naar een alternatief.

Dat heb ik gevonden in een javascriptje wat in de footer van mijn thema hoort:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<script type="text/javascript">
//<![CDATA
jQuery(document).ready(function($) {
$('a').each(function() {
var a = new RegExp('/' + window.location.host + '/');
if (!a.test(this.href)) {
$(this).click(function(event) {
event.preventDefault();
event.stopPropagation();
window.open(this.href, '_blank');
});
}
});
});
//]]>
</script>


Nu werkt het scriptje fantastisch, alleen maak ik regelmatig gebruik van 'Lity' (https://sorgalla.com/lity/) om externe afbeeldingen of YouTube filmpjes in een lightbox te tonen. Als ik het scriptje gebruik, werkt de lightbox niet meer en openen de afbeeldingen/filmpjes óók in een nieuw venster.

Ik heb ook een aantal WP-plugins geprobeerd die hetzelfde doen, dan werkt de lightbox wel normaal, maar wordt er daarnaast ook nog een tab geopend. Ik kan voor beide opties (script of plug-in) niet uitgevonden krijgen hoe ik een uitzondering kan maken voor de lightbox, dus hoop ik dat hier iemand wellicht een oplossing heeft!

Bij één van de plug-ins die ik heb geprobeerd kun je overigens uitzonderingen benoemen, maar dat werkt dan weer via JS regular expression en ik heb écht geen kaas gegeten van javascript..

Bij voorbaat dank!
Gewijzigd op 20/11/2022 17:47:31 door Ester Dammers
 
PHP hulp

PHP hulp

08/02/2023 10:53:16
 
- Ariën  -
Beheerder

- Ariën -

20/11/2022 17:49:19
Quote Anchor link
Eigenlijk zou je voor zulke simpele dingen geen add-on nodig hebben. Er zijn genoeg vanilla of jQuery JavaScript oplossingen.
Je moet alleen even een child-theme maken en die javascript daarin toevoegen.
 
Ester Dammers

Ester Dammers

20/11/2022 17:53:57
Quote Anchor link
Maar ik heb dus geen kennis van javascript/jQuery oid. :) Overigens heb ik nu weer een andere plug-in gevonden die de externe links netjes in een nieuwe tab opent, maar de lightbox met rust laat. Je kunt er verder niks aan instellen, maar als het werkt is het prima. Om duizenden links achteraf handmatig op 'open in new tab' te zetten zag ik niet helemaal zitten. :)
 
Ad Fundum

Ad Fundum

21/11/2022 08:58:11
Quote Anchor link
Toch wel weer grappig dat je sinds '97 actief bent met maken van sites, en al die tijd weg bent gebleven van JavaScript en jQuery.
Vooral JavaScript komt nog wel eens om de hoek kijken bij webdesign..
 
Carl ance

carl ance

23/11/2022 03:53:48
Quote Anchor link
*spam*

Edit:
Spam verwijderd.
Gewijzigd op 23/11/2022 08:36:23 door - Ariën -
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.