Hi,

So here's a mini tip:

How to Make all links that leads out of your site open in a new tab.

That means , links that doesn't contain your network domain , will be opened in a  new tab. This method can be used so that your network doesn't lose precious traffic because of external links.

 

Normally if we do it using HTML , we will just add a target="_blank" attribute to it. What if user put an external in a comment , we can't edit the content.

<a href="externallink" target="_blank">External Site</a>

 

This is when the awesome jQuery steps in, just copy this code into your custom code:

<script type="text/javascript">
if (typeof(x$) != 'undefined') {
   //look at each links on your network
   //if link has http
   x$("a[href^=http]").each(function(){
     //if the link does not contain your hostname (yournetwork.com)
      if(this.href.indexOf(location.hostname) == -1) {
        //add attribute target to it to open in new tab
         x$(this).attr('target','_blank');
      }
   }); //end of each function
}
else{
}
</script>

 

I'm using jQuery's .each() and .attr() to get the work done.

Location.hostname is to get your domain name mynetwork.com

.indexOf is use to see if a string contains something.

== -1 That means does not exist! 

 

That's it. Hope you like it.

Views: 393

Reply to This

Replies to This Discussion

Great tip!

thanks, great script!

excellent tip Elson, right on brotha!

This is an important mini tip. Question, I have 2 websites meshed as 1 (Ning with a .php site).

How would you write it so both sites stay on target?

Try this , replace otherdomain.com/file.php with your other site link:

<script type="text/javascript">
if (typeof(x$) != 'undefined') {
   //look at each links on your network
   //if link has http
   x$("a[href^=http]").each(function(){
     //if the link does not contain your hostname (yournetwork.com)
      if(this.href.indexOf(location.hostname) == -1 || this.href.indexOf('otherdomain.com/file.php') == -1) {
        //add attribute target to it to open in new tab
         x$(this).attr('target','_blank');
      }
   }); //end of each function
}
else{
}
</script>

This is a great tip thank you Elson :)

MINI??? MAXI!!! Thank you VERY much Elson

glad you all like it.

That worked AWESOME Elson!  Thanks!!!

Gracias me funciono de maravilla.

i covered this back in 2011 here but i like your solution much better!

Cool. I didn't know someone covered it when I posted. Sorry.

RSS

Latest Activity

Strumelia replied to Shannon's discussion 'VOTE - NING 2.0 or NING 3.0'
"Huh??  Can you elaborate on this please?  or point us to where this is stated or shown?"
1 hour ago
Cindy replied to Allison Leahy's discussion 'What is your Ning 3.0 URL?' in the group The Sandbox
"I coppied all the stuff you posted and I'll check a bit later when the head feels clearer. I…"
4 hours ago
Kos replied to Allison Leahy's discussion 'What is your Ning 3.0 URL?' in the group The Sandbox
"Sorry for that.  Sometimes they fall between the cracks during the week b/c so many have full…"
4 hours ago
Kos replied to Allison Leahy's discussion 'What is your Ning 3.0 URL?' in the group The Sandbox
"Yes sometimes we need to step back and let it all sink in as 3.0 is quite different from the 2.0 we…"
4 hours ago
Kos replied to Allison Leahy's discussion 'What is your Ning 3.0 URL?' in the group The Sandbox
"Phoron since we've gone off topic here, why don't you begin a forum post of questions and…"
4 hours ago
Kos replied to Allison Leahy's discussion 'What is your Ning 3.0 URL?' in the group The Sandbox
"Do you mean the background image behind your avatar?   Members can upload at the right…"
4 hours ago
Kos replied to Donna Mac's discussion '3.0 Video - can someone explain?'
"idk what else Ning (if any) Ning will be releasing with respect to videos but they way it stands a…"
4 hours ago
Crestini Activi ! replied to Rafael's discussion 'Multiple Chat rooms for Ning 3.0'
"Im loving the idea !!! I was thinking about this idea before, but I thought that if I was going to…"
4 hours ago

© 2013   Created by Ning.

Badges  |  Report an Issue  |  Terms of Service