vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vBulletin 3.8 Add-ons (https://vborg.vbsupport.ru/forumdisplay.php?f=235)
-   -   Miscellaneous Hacks - Two-Step External Links for Link Weight Retention (https://vborg.vbsupport.ru/showthread.php?t=217708)

aspen0 07-01-2009 10:00 PM

Two-Step External Links for Link Weight Retention
 
1 Attachment(s)
Two-Step External Links
Thought up by Chris Beasley, coded by Chris Bowyer, copyright Jalic Inc. 2009.

Compatibility
Tested on 3.7.x and 3.8.x, may work on older versions as well.

Description
With Google's recent change to nofollow calculations using nofollow on your user submitted external links will still harm your site by depriving your internal links of PageRank. (See here.)

Forums that had installed nofollow on signature or other such user contributed links thinking they were controlling this are in fact no longer doing so.

One solution is a two-step linking process presenting a disclaimer on a redirect page (filled
with your internal links) to mitigate link weight loss. For a full explanation of benefits and the math behind them see the official page (a wordpress plugin is also available there).

Two-Step External Linking

This method is also useful for sites needing a disclaimer before sending people to third party user contributed websites for legal or liability reasons.

Using this plugin can reduce the amount of pagerank sent through user contributed signature and other links by over 90%, for every post or thread on your forum. It also allows you to keep using nofollow to indicate to search engines that if the link is to a bad neighborhood you are not at fault, while not wasting link weight on the nofollow link.

Settings
The settings are located in vBulletin Options -> vBulletin Options -> All the way at the bottom. You can do the following:

1. Create a white list of domains or urls exempt from redirecting.
2. Decide to apply "nofollow" to the external link that shows on the redirect page or not.
3. Turn on two-step linking for signature links.
4. Turn on two-step linking for post/profile visitor message/blog links.
5. Turn on two-step linking for user profile/memberlist links.
6. Define your redirect warning disclaimer paragraph.
7. Decide to use an additional automated meta-redirect or not, and the second delay.


Statistics

New Files: 1
File Edits: 2
Products to Install: 1
Readme included

Additional Uses
Because the actual redirect page is fairly independent of vbulletin and easy to access, you can run any other external links from any software on your site through it simply with the format of example.com/forums/externalredirect.php?url=http://www.externalexample.com. So if you're able to edit your CMS or otherwise manually format your links as such, they will be run through the redirect as well.

Support

I'll do my best to provide support in this thread only for people who have it installed.

Version History

1.00 - Initial Release
1.01 - bug fixes
1.02 - bug fixes, added admin toggle to allow you to choose to only show redirects to guests.
1.03 - bug fixes
1.04 - bug fixes, non-www urls & sigpic problems fixed.
1.05 - Jan 25th 2011, small xss flaw fixed

aspen0 07-02-2009 07:49 PM

Documentation

Briefly, why this plugin is needed.

PageRank, or link weight, flows throughout your site like water, going from page to page, post to post, thread to blog to post to memberprofile through links. It flows in circles in a closed system.

When external links are added the system opens up, and water leaves your system to these third party websites. You now have less water.

On a forum page with a thread with 25 posts there can easily be over a hundred external links from signatures or post bodies. If you also have 100 internal links you're losing half of your water on that thread page. If such a situation is typical for your forum you're more or less losing half of your water for your entire site. Which means, simplistically, that if you implemented this plugin you could almost double your water (through conservation). That can have a large affect on both rankings and the depth to which Google will crawl your site.

The above is a simplistic explanation of a complicated process, but it should illustrate the drastic difference external link management can make. It is so important I believe vbulletin was officially going to code nofollow into 4.0, but now with nofollow not really helping you need something else, like this plugin.

Savings

The redirect page shows your forum template including header & footer for a reason. The amount of link weight this plugin will save your site is found by dividing 1 by the number of total links on the redirect page for a non-logged in user.

If you have 10 links on the page, 1/10 = 0.10. 10% is lost, you're saving 90% of what would have been lost without this plugin.
If you have 20 links on the page, 1/20 = 0.05. 5% is lost, you're saving 95% of what would have been lost without this plugin.
If you have 50 links on the page, 1/50 = 0.02. 2% is lost, you're saving 98% of what would have been lost without this plugin.

And again, if you merely use rel=nofollow on external links (like many sites have done before now) you're still losing that weight thanks to what Google recently changed as per their announcement in June 2009.

So, if you install this plugin and on a forum thread page you've got 50 internal links and 50 external links, you're losing 50% of the weight on that page to the redirect page from the plugin (the weight is split between all links). However, if you've got 50 links on the redirect page, the redirect page is then salvaging 98% of that 50% back to your site. So in the end you only lose 1% of the link weight that was present on the original thread page, and no matter how many users post, how many links they have in their signature, in such a situation it'll be impossible for you to ever lose more than 2% of the weight of that post. They could post a million links and you wouldn't lose more than 2% of your weight. That is the beauty of the system.

The other beauty is that because there are valid reasons to do this anyways, irregardless of search engines, someone would be hard pressed to describe this as anything but white hat seo. As opposed to cloaking or otherwise hiding your external links.

Install

Do the file edits described in the readme file.
Upload externalredirect.php to your forum root directory.
Install the plugin xml file using VB's plugin manager.
Visit vBulletin Options ==> vBulletin Options and scroll to the bottom of the global option list to turn on the plugin and edit settings.

nofollow settings
The nofollow setting in the admin is to set whether or not the external link on the redirect page will use nofollow. This is recommended to be on. This does not set nofollow to be applied to the external links where they are first visible on your post pages and within signatures, this is to be avoided as it can hurt you which is why this hack exists.

Whitelist Settings

To be safe you should add your domain to the whitelist after install.

The whitelist is a wildcard search just like VB's built in IP and EMAIL based banning.

Entering www.example.com in your whitelist would match "www.example.com" but not "example.com"

So, to add an entire domain to the whitelist, it is best to keep it in the format of "example.com" which will match to "www.example.com" and "example.com" and "blog.example.com" and any other such domains.

Caching

After installing you may need to reload various caches to get the redirects to show up, to test try making a new post that would not have yet been cached.

TWTCommish 07-02-2009 08:11 PM

Reserved here, too. :) This was aspen's idea and he asked me to develop it, so I thought it might be worth reserving a second post, in case I happen to come across any questions or common issues which I can answer. Enjoy the hack!

Sweeks 07-02-2009 08:26 PM

Do VBSeo users need this? :)

aspen0 07-02-2009 08:40 PM

I don't support or use VBseo (there are reasons), but Google made this announcement within the past month so I find it unlikely they have implemented anything like this.

If VBseo currently assigns nofollow to user signatures and other user contributed links, then yes, this would be an improvement. If VBseo currently does nothing to such links, then yes this would be an improvement. The only way this won't be an improvement really is if VBseo currently does this exact thing.

In fact, VBseo may be hurting you. Doing some Googling it looks like VBseo may be using rel=nofollow to block even some internal site navigation, such as to printthread.php, this will result in that link weight being lost now, not retained as it was until recently. The proper solution is to use the new canonical link element to define the canonical URL for the same content source (ie, showthread.php for all printthread.php locations). Ever since the announcement webmasters have been scrambling to remove nofollow from any and all internal links that had it, it can only hurt you to use it in that fashion now.

TimberFloorAu 07-02-2009 09:05 PM

Sounds very plausible.

I would like more information please, on the different link types you mention. I must confess I have never really understood the different link terms.

My expertise ends at "_new" and "_blank"

Could you explain more, and provide some example of a typical setup, to increase our "water retention" as you imply.

Regards Ste

Alfa1 07-02-2009 09:20 PM

Thank you. Tagged for installation after vb4 comes out. I hope you will upgrade this to be compatible with vb4.

kkingg 07-02-2009 09:33 PM

thanks but I cant installed

kawe 07-02-2009 10:48 PM

isnt work for me :(
already follow readme.txt

relaxiha 07-02-2009 10:59 PM

WARNING: you are about to leave this web site and proceed to an external address. This link was submitted by a user and we cannot guarantee the appropriateness of the content it contains.

Continue to http://www.xxxxxxxxxxxx.com


Hello. This message will show. Whether is true? Please help me to.

aspen0 07-03-2009 12:19 AM

Quote:

Originally Posted by TimberFloorAu (Post 1841640)
Sounds very plausible.

I would like more information please, on the different link types you mention. I must confess I have never really understood the different link terms.

My expertise ends at "_new" and "_blank"

Could you explain more, and provide some example of a typical setup, to increase our "water retention" as you imply.

Regards Ste

Assuming you've read the linked to page already ( http://www.websitepublisher.net/two-step/ ), you can find out more about PageRank or Link Weight here:

http://www.websitepublisher.net/arti...nk_popularity/
especially here:
http://www.websitepublisher.net/arti...k_popularity/7 which is the page that covers this specific issue - just ignore what is said about nofollow, the article hasn't been updated yet

This article here: http://www.websitepublisher.net/arti...nternal-links/ covers this topic specifically for your internal links, rather than external links, but may help you understand the concept more.

aspen0 07-03-2009 12:20 AM

Quote:

Originally Posted by relaxiha (Post 1841685)
WARNING: you are about to leave this web site and proceed to an external address. This link was submitted by a user and we cannot guarantee the appropriateness of the content it contains.

Continue to http://www.xxxxxxxxxxxx.com


Hello. This message will show. Whether is true? Please help me to.

That is the default message, to change that message in your AdminCP go to vbulletin options > vbulletin options, and then scroll down the list to Two-Step External Links, and select it, and you can edit the paragraph there.

smirkley 07-03-2009 12:24 AM

After some study on the subject I can plainly see the use for this feature.

A question if you would,...

Since all of my sig and post-external (as well as post-internal links), open in a new browser instance, and since this modification mearly provides a go-between page for the purposes defined, would it not be a good idea to just use a redirect page similar to stock vB?

IE - no header, navbar, footer, nor ad spots,... just the simple box stating the specific redirect?

I have reviewed your forum to get a feel of how it works, and the redirect page seems confusing with all the normal templated forum hotspots used in it.

Is this something that can be edited within a template for the mod?

(I know I havent clicked installed, I am trying to decide if this will work as defined and be customizable as I described) Thanks in advance.

aspen0 07-03-2009 12:25 AM

I'll need more details to help you troubleshoot guys. Did you do the file edits?

aspen0 07-03-2009 12:29 AM

Quote:

Originally Posted by smirkley (Post 1841714)
After some study on the subject I can plainly see the use for this feature.

A question if you would,...

Since all of my sig and post-external (as well as post-internal links), open in a new browser instance, and since this modification mearly provides a go-between page for the purposes defined, would it not be a good idea to just use a redirect page similar to stock vB?

IE - no header, navbar, footer, nor ad spots,... just the simple box stating the specific redirect?

I have reviewed your forum to get a feel of how it works, and the redirect page seems confusing with all the normal templated forum hotspots used in it.

Is this something that can be edited within a template for the mod?

(I know I havent clicked installed, I am trying to decide if this will work as defined and be customizable as I described) Thanks in advance.

That would defeat the purpose.

You NEED the menu/header/footer because that is what saves the link weight.

When link weight is transferred it is shared between all the links on a page, which is why long forum threads become so dangerous because they can add up a lot of links (or blog posts with lots of comments, hence the upcoming wordpress plugin).

So, what you're doing is increasing your odds by outnumbering the external links with internal ones. On the forum page the external links may outnumber the internal ones, but on the redirect page there will only ever be 1 external link.

To find out how much weight is lost to that external link divide 1 by the total number of links on the page. So, if you have 20 links on the page, 5% is lost through the external link.

If we removed all the headers and footers and everything then you'd be dividing 1/1 = 100%, 100% of the weight would be lost. You've gained nothing.

Otherwise we'd not do a visible redirect at all, just do an automated php redirect. The point is to provide a redirect page with lots of visible internal links, the more visible internal links, the better.

Does that help?

smirkley 07-03-2009 12:33 AM

Question answered and that makes complete sense.

Thank you.

I will be installing shortly.

You have a nice site and very informative btw.

smirkley 07-03-2009 12:46 AM

OK, nother question,..

I noted that at least on your site on the forums in showthread,..

The sig links are processed through the redirect regardless of their destination, internally or externally.

Does this also hold true for posts, blog entries, etc?

Does the modification have ability to recognise internal links vs external links and properly allow or disallow the redirect depending on the destination? (Just thinking it would be a headache for members to click an internal link embedded in either a post,sig,or vbblog, and have to review and go through the redirect page) (I dont mean any CMS, just stock vb products)

TWTCommish 07-03-2009 01:11 AM

I'll field that one. :) The script automatically leaves links from the site's own domain alone. There's also a "whitelist" setting where you can list other domains that you'd like the mod to ignore.

smirkley 07-03-2009 01:36 AM

Quote:

Originally Posted by TWTCommish (Post 1841740)
I'll field that one. :) The script automatically leaves links from the site's own domain alone. There's also a "whitelist" setting where you can list other domains that you'd like the mod to ignore.

Thank you and that does answer my question. I will be installing this but havent yet as I am not at my main console. Had I installed it I would have known about the whitelist, so my bad, and thank you again.

Quote:

Originally Posted by aspen0 (Post 1841718)
That would defeat the purpose.

You NEED the menu/header/footer because that is what saves the link weight.

As I have further thought about this, I am left wondering a bit more on the purpose of all the internal links on the redirect page.

Since the redirect pages full purpose is to dilute the assumed pr points loss for pages with many external links in posts, than the redirect page is assumably doing this by virtue of pulling the link off the page as a single external link, and surrounding it with internal links that normally appear as a function of page view in the forums.

But the more I think about it, it wont matter anyway on the redirect page, as the original threadview page is the one we hold greater concern with in regards to pagerank, as that is the one we have indexed. The external links will be by virtue of this mod, already prevent the pr points from being leaked away, and the redirect page, which is never spidered anyway as it is nofollow (I believe), will hold no concern nor effect of the pr points of the original indexed thread page.

Basically, I am seeing that a simple no-header/no-footer redirect box/page would suffice in protecting the pr points of the original thread, provided the original thread external links are reformatted to appear internal, as I believe this modification does already, to the search engines.

Is my thinking flawed in this?

Thanks again.

aspen0 07-03-2009 01:49 AM

Quote:

Originally Posted by smirkley (Post 1841755)
Thank you and that does answer my question. I will be installing this but havent yet as I am not at my main console. Had I installed it I would have known about the whitelist, so my bad, and thank you again.



As I have further thought about this, I am left wondering a bit more on the purpose of all the internal links on the redirect page.

Since the redirect pages full purpose is to dilute the assumed pr points loss for pages with many external links in posts, than the redirect page is assumably doing this by virtue of pulling the link off the page as a single external link, and surrounding it with internal links that normally appear as a function of page view in the forums.

But the more I think about it, it wont matter anyway on the redirect page, as the original threadview page is the one we hold greater concern with in regards to pagerank, as that is the one we have indexed. The external links will be by virtue of this mod, already prevent the pr points from being leaked away, and the redirect page, which is never spidered anyway as it is nofollow (I believe), will hold no concern nor effect of the pr points of the original indexed thread page.

Basically, I am seeing that a simple no-header/no-footer redirect box/page would suffice in protecting the pr points of the original thread, provided the original thread external links are reformatted to appear internal, as I believe this modification does already, to the search engines.

Is my thinking flawed in this?

Thanks again.

Yes, you're not understanding, I'm not sure where exactly you're going wrong, but you are.

The redirect pages WILL be indexed by search engines, they have to be.

And the redirect links cannot be nofollowed, or you still lose the PageRank. That is what Google changed. Prior to this change using nofollow removed the links from the equation that figured how much weight would be given to each link. They changed it so the links are included, they just don't get delivery of their weight.

Let me try to explain as simply as possible.

Normally you would send all your weight to the external links, or, if they were nofollowed, the weight would simply be removed from circulation. In either case, you do not get to keep it.

By using this plugin instead of sending your weight to the abyss or to external sites, you're sending your weight to the redirect page.

The redirect page then sends most of your weight back through your site through your menu/header/footer. The small fraction that is left is all that ends up being lost.

aspen0 07-03-2009 01:59 AM

I wanted to let you know I found a small bug in the whitelist function, a new version will be uploaded soon.

mindhunter77 07-03-2009 02:03 AM

ok, so if we use this mod is it safe to remove all nofollows? I also use the nofollow attrib to stop the spidering of sorting links, things that could be considered dup content, should I still use that?

aspen0 07-03-2009 02:18 AM

Quote:

Originally Posted by mindhunter77 (Post 1841774)
ok, so if we use this mod is it safe to remove all nofollows? I also use the nofollow attrib to stop the spidering of sorting links, things that could be considered dup content, should I still use that?

I would remove it regardless of installing this link or not.

Google's change means it is never a good idea to use nofollow on an internal link. and I mean never.

Instead to control duplicate content use rel canonical

http://googlewebmastercentral.blogsp...canonical.html

vbulletin will hopefully include rel canonical for internal duplicate content management in a future update.

mindhunter77 07-03-2009 02:44 AM

ok thanks, =)

Do you think removing nofollow from external links is a good idea as well or will it make no difference..

smirkley 07-03-2009 02:53 AM

Quote:

Originally Posted by aspen0 (Post 1841765)
The redirect pages WILL be indexed by search engines, they have to be.

And the redirect links cannot be nofollowed, or you still lose the PageRank. That is what Google changed. Prior to this change using nofollow removed the links from the equation that figured how much weight would be given to each link. They changed it so the links are included, they just don't get delivery of their weight.

Let me try to explain as simply as possible.

Normally you would send all your weight to the external links, or, if they were nofollowed, the weight would simply be removed from circulation. In either case, you do not get to keep it.

By using this plugin instead of sending your weight to the abyss or to external sites, you're sending your weight to the redirect page.

The redirect page then sends most of your weight back through your site through your menu/header/footer. The small fraction that is left is all that ends up being lost.

Ok, I do understand now. After reading the links you provided, plus your explanation, it makes much more sense and I apologise for being a bit thick headed in this, but I have been focusing alot lately on improving my seo as of late, and the more I learn, the more I dont understand lol.

But yes, the point is to lose as little as possible points via the redirect link dilution.



I currently use the old mod posted earlier in this thread, to add nofollow only to external links in posts, etc.
Should that mod be removed in leu of your modification?,... left in to enhance functionality?... or doesnt matter?

edit to add - ( The bolded text in my quote in this post apparently answers my last question.)

Thanks again for your help and I appreciate sincerely your input and advice.

aspen0 07-03-2009 06:54 AM

Yes, remove it, and this answers mindhunter's question as well.

I just uploaded a new file with a new version that fixes the small bug in the whitelist. Just reinstall (allow overwrite) the new product.xml file, no other updates are needed.

Alfa1 07-03-2009 10:03 AM

On second thought: i decided to install this hack right away. Many thanks.

Since SE are guests anyway, why not make this dependant upon member groups? There seems no use of activating this functionality for anyone other than guests.

EDIT: since a link to your site is on the redirect page, this defeats the purpose of link weight retention.

Now the page rank is no longer flowing to content relevant sites, but leaking to your site. The link to your site is defined in the template EXTERNAL_LINK. Please change this.

When clicking on an external link, a member is logged out. Could you please resolve this?

aspen0 07-03-2009 12:47 PM

You mean show different content to search engines than you show to other guests Alfa1 for the purposes of SEO? That'd technically be cloaking Alfa1 and is against guidelines and while it is a minor offense and probably wouldn't result in a penalty or ban, it is not really that worth it.

I could see offering that as a toggle in a future release, allowing you to set that in admin, leaving the choice up to you. It is actually a fairly good idea for a toggle.

I have no idea why someone would become logged out, the external link does nothing with cookies. Perhaps it is a browser issue? No one else has reported that, perhaps that user's cookies got corrupted or overwritten randomly, just as they clicked the link.

As for the powered-by link. It doesn't defeat the purpose, a small amount of link weight does pass through it, very small, a couple percent. The link is how I hope to spread the word of this plugin. Not every webmaster visits vb.org, but as sites install this plugin they'll see the powered by link, click on it, and see the explanation for what the plugin does and how it works. Its in the template, I can't force you to keep it, but I'd rather you keep it. This plugin is free, with the powered link you're still saving an enormous amoung of the link weight you would be losing without this plugin. It seems a small price to pay, but it is on the honor system.

mindhunter77 07-03-2009 01:07 PM

Anyone try this on 3.7 ?

aspen0 07-03-2009 02:02 PM

yes, 3.7.2, it worked

Saviour 07-03-2009 02:07 PM

Are we to upload the externalredirect.php file? You didn't specify this in your instructions.

If so, to where...the forum root?

Saviour 07-03-2009 02:25 PM

I have this installed...yet I'm not receiving the redirect message when going to an external link.

aspen0 07-03-2009 02:34 PM

Yes, upload externalredirect.php to the forumroot.

Enable the plugin in Vboptions - > vboptions all the way at the bottom.

Saviour 07-03-2009 02:57 PM

There is no option to enable the plugin in Vboptions - > vboptions.

mindhunter77 07-03-2009 03:03 PM

set the buttons to yes,

I have nofollow set to no, then the rest to yes

Saviour 07-03-2009 03:06 PM

I do not currently have this marked as installed...since I can't get it to work.

I have made the file edits as posted in your readme file.
I have uploaded the externalredirect.php file to the forum root.
I have installed the product.
I found your product in vBoptions and have the following settings:
  • Use no follow attribute is set to "no"
  • All other settings are set to "yes"

I'm not getting any redirect message at all.

mindhunter77 07-03-2009 03:12 PM

I had this same issue, I eventually got it working by rebuilding post cache.

aspen0 07-03-2009 03:14 PM

If posts and things are cached then you would need to rebuild the caches for the edits to take place.

Saviour 07-03-2009 03:18 PM

I just rebuilt the post cache...guess what?

It's still not working...

mindhunter77 07-03-2009 03:20 PM

not sure then, wait for the mod author to respond I guess,.


All times are GMT. The time now is 02:05 PM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.02429 seconds
  • Memory Usage 1,889KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (8)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (2)pagenav_pagelink
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (40)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • pagenav_page
  • pagenav_complete
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete