Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 3.5 > vBulletin 3.5 Add-ons
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
Apply "rel=nofollow" attribute to all parsed URLs Details »»
Apply "rel=nofollow" attribute to all parsed URLs
Version: 1.10, by kall kall is offline
Developer Last Online: Aug 2021 Show Printable Version Email this Page

Version: 3.5.0 Rating:
Released: 08-06-2005 Last Update: 08-29-2005 Installs: 139
Uses Plugins
 
No support by the author.

In the first cooperative move for nearly ten years, the major search engines have unveiled a new indexing command for web authors that they all recognize, one that they hope will help reduce the link and comment spam that plagues many web sites....due to removing the point of doing it in the first place.

The new "nofollow" attribute that can be associated with links was originated as an idea by Google in late 2004 and MSN and Yahoo, as well as major blogging vendors have jumped onboard.

The Nofollow Attribute

The new attribute is called "nofollow" with rel="nofollow" being the format inserted within an anchor tag.
When added to any link, it will effectively serve as a flag to tell the search engines that the link has not been explictly approved by the site owner, and therefore "not follow" it, or not use the referring page's (on your site) Page Rank in any way.

For example, this is how the HTML markup for an ordinary link might look:

Quote:
<a href="http://www.somedomain.com/page.html">My forums are the best lol lol lol click here!!</a>
This is how the link would look after the nofollow attribute has been added, with the attribute portion shown in bold

Quote:
<a href="http://www.somedomain.com/page.html" rel="nofollow">My forums are the best lol lol lol click here!!</a>
Once added, the search engines supporting the attribute will understand that the link has not been approved by the site owner.

Think of it as a way to flag to them, "I didn't post this link -- someone else did, don't associate me with it."

Quote:
Originally Posted by Alkatraz
If Google sees nofollow as part of a link, it will:

1. NOT follow through to that page.
2. NOT count the link in calculating PageRank link popularity scores.
3. NOT count the anchor text in determining what terms the page being linked to is relevant for.
The site that is being linked to will gain nothing from the link, so the whole point of doing it in the first place is removed.

This will affect URLs in posts, as well as signatures...anything that goes through the bbcodeparse function as far as I can tell/guess, and will work recursively, or whatever the word is that means 'it will affect all existing posts and signatures'...or it did for me anyway.

To change the conditional number of posts, alter
PHP Code:
OR $post['posts'] > 50
to whatever you like.

I can't see how this could be done as a plugin, but if anyone wants to point out how, that would be nicer....YAY Kirby!

Now all you need to do is unzip the attached file, upload the plugin using your Admin CP - Plugin System - Plugin Manager!

Relax, safe in the knowledge that spammers linking from your site are doing so for no reason whatsoever.

To remove the old version:

File to modify: 1

1/ Open your includes/class_bbcode.php file

Find:
PHP Code:
        // standard URL hyperlink
        //return "<a href=\"$rightlink\" target=\"_blank\">$text</a>";

        
global $post;

if (
is_member_of($post6//Admins are exempt
OR is_member_of($post5//Mods are exempt
OR is_member_of($post7//SuperMods are exempt
OR $post['posts'] > 50// People with over 50 posts are exempt
    
{
    
// standard URL hyperlink
    
return "<a href=\"$rightlink\" target=\"_blank\">$text</a>";
    }
    else
    {
     return 
"<a href=\"$rightlink\" rel=\"nofollow\" target=\"_blank\">$text</a>";
    }
    } 

Replace with:
PHP Code:
// standard URL hyperlink
        
return "<a href=\"$rightlink\" target=\"_blank\">$text</a>";
    } 
2/ Save and Upload.

Show Your Support

  • This modification may not be copied, reproduced or published elsewhere without author's permission.

Comments
  #102  
Old 07-23-2007, 08:58 AM
vbl vbl is offline
 
Join Date: Mar 2004
Posts: 8
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

unfortunately doesnt work for me @3.6.7PL1
i think there is something wrong with the condition

if (is_member_of($post, 5, 6, 7) OR $post['posts'] > 50)

^^ seems somehow wrong...?? $post[dont_we_need_some_group_entry_here?]
anyone any idea?
Reply With Quote
  #103  
Old 07-23-2007, 09:56 AM
vwdforum vwdforum is offline
 
Join Date: Jun 2006
Posts: 179
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Added this to www.vwdforum.com

works, (when I check "view source code") however also for internal links. Anyone found a solution yet?
Reply With Quote
  #104  
Old 01-09-2008, 02:23 PM
Gharibe Gharibe is offline
 
Join Date: Oct 2006
Posts: 35
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Do Not Work
Reply With Quote
  #105  
Old 01-09-2008, 07:51 PM
kall's Avatar
kall kall is offline
 
Join Date: Apr 2004
Location: New Zealand
Posts: 2,608
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

That's probably not a good idea, working can be useful to bring food into the house, and keep the house paid for. I work.
Reply With Quote
  #106  
Old 01-09-2008, 10:11 PM
Dave Hawley Dave Hawley is offline
 
Join Date: Jun 2004
Location: Australia
Posts: 274
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by Gharibe View Post
Do Not Work
Ok, you choose not to, but as stated above, it has its rewards
Reply With Quote
  #107  
Old 01-13-2008, 12:05 PM
clasione clasione is offline
 
Join Date: Aug 2004
Location: NY
Posts: 76
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I'm running three forums where this works in some instances and not in others.... I have already checked and double checked my user group id numbers to make sure there are not any regular users comming up in groups 5, 6, or 7 but I still find that in some instances the added no follow works on posts and signatures but some instances it just doesn't.... A user will have 3 posts and it will not add the nofollow....

I have tryed all the forums and it works in some places and it doesn't.. Also visiting posts I haven't viewed in a long time to rule out page cache. Can't figure it out.
Reply With Quote
  #108  
Old 02-19-2008, 05:06 AM
RaZor Edge's Avatar
RaZor Edge RaZor Edge is offline
 
Join Date: Jan 2002
Location: Quebec city
Posts: 70
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I'm using this code on 3.6.8 and it's running fine.

As I want this to work with every user exept my staff, I have removed the part with number of post.

Here's what I am using:

Code:
$this->tag_list['no_option']['url']['callback'] = 'handle_external';
$this->tag_list['no_option']['url']['external_callback'] = 'handle_bbcode_url_relnofollow';
$this->tag_list['option']['url']['callback'] = 'handle_external';
$this->tag_list['option']['url']['external_callback'] = 'handle_bbcode_url_relnofollow';
if (!function_exists('handle_bbcode_url_relnofollow'))
{
    function handle_bbcode_url_relnofollow($parser, $text, $link)
    {
        global $post;
        // Excempt Mods+ and Users with mor then 50 Posts
        $parsedurl = $parser->handle_bbcode_url($text, $link);
        if (is_member_of(5, 6, 36))
        {
            return $parsedurl;
        }
        else
        {
            return str_replace('href="', 'rel="nofollow" href="', $parsedurl); 
        }
    }
}
Reply With Quote
  #109  
Old 05-13-2008, 11:54 AM
myown myown is offline
 
Join Date: Jan 2007
Posts: 145
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

what about 3.7 Gold any idea ?
Reply With Quote
  #110  
Old 06-13-2008, 04:39 PM
oldengine oldengine is offline
 
Join Date: Mar 2004
Posts: 257
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

It appears to be working in mine.
Reply With Quote
  #111  
Old 06-22-2008, 03:45 PM
oldengine oldengine is offline
 
Join Date: Mar 2004
Posts: 257
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by clasione View Post
I have tryed all the forums and it works in some places and it doesn't.. Also visiting posts I haven't viewed in a long time to rule out page cache. Can't figure it out.
Don't over look that you need to go to Admin > Maintenance > Update Counters
and run "Rebuild Post Cache" and "Empty Signature Cache" to rebuild all those links.

A whitelist ability for your own forum's domain name would be an excellent add-on to this mod.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 06:54 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.05227 seconds
  • Memory Usage 2,325KB
  • Queries Executed 25 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (1)bbcode_code
  • (3)bbcode_php
  • (5)bbcode_quote
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)modsystem_post
  • (1)navbar
  • (6)navbar_link
  • (120)option
  • (1)pagenav
  • (1)pagenav_curpage
  • (3)pagenav_pagelink
  • (11)post_thanks_box
  • (11)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (11)post_thanks_postbit_info
  • (10)postbit
  • (11)postbit_onlinestatus
  • (11)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.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
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • pagenav_page
  • pagenav_complete
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete