Go Back   vb.org Archive > vBulletin Modifications > Archive > vB.org Archives > vBulletin 2.x > vBulletin 2.x Full Releases
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools
vbArchive - Search Engine Indexer for vBulletin Details »»
vbArchive - Search Engine Indexer for vBulletin
Version: 1.00, by TECK TECK is offline
Developer Last Online: Nov 2023 Show Printable Version Email this Page

Version: 2.2.x Rating:
Released: 01-12-2003 Last Update: Never Installs: 176
 
No support by the author.

[high]vbArchive v1.3 Released[/high]
240,000 Google pages (and counting...) indexed so far. Congratulations to all users!

WHAT'S NEW IN VERSION 1.3:
I added the number of threads and posts for each forum.
The problem with a static page like the main archive page (as well the category ones) was that it never changed.
Now, every time a crawler visit the page, it will see new elements changed, since the number of threads and posts will always change.
Take a look at my archive, until FireFly updates the vBulletin.org one.

I also added a new meta tag for crawlers:
[high]<meta name="robots" content="index,follow">[/high]

To upgrade from 1.2, simply upload the new archive.txt and forumdisplay.txt files.
Then REVERT to original all templates and run the NEW installer script to un-install/install the templates.

[high]IMPORTANT[/high]
If you already installed version 1.3, check the "archive_forumtitle" template and see if you have there a variable called "$archiveurl".
If you do, clean your browser temp files and redownload the package, it was a mistake I made in the code.
The file is now updated with the new code.

Not convinced this is a [high]good[/high] script? A picture and it's Google results is worth 1000 words (thanks xiphoid).
Is funny that few people rated [high]1[/high] my script, we wonder who they might be?


[high]DEMO WEB SITE:[/high] vBulletin.org Archive (Google Results for [high]TeckWizards.com Archive[/high])
ESTIMATED INSTALL TIME:
2 minutes

Script Information
IF YOU WANT TO READ [HIGH]fastforward's[/HIGH] EVALUATION ABOUT THE TECHNIQUE USED, READ MORE HERE.


This script will install the Search Engine Indexer Add-On for vBulletin.
Is the little brother of vbHome (lite) Archive Add-On.

[high]NOTE[/high]
The script uses Apache's [high]ForceType[/high] directive. Most of Apache servers have it installed by default.
Check with your host to make sure the module is installed.
If you use another server then Apache, the script will NOT work.
The only solution I found for IIS is the ISAPI Rewrite module.

The script uses only 6-12 queries, depending on what page you view, and it works with any [high]2.2.x[/high] vBulletin version.

[high]Some of it's cool features are:[/high]
- vBulletin 3 style
- listings based on forum/thread permissions
- forums architecture followed [example]
- classic .html extension usage
- dynamic meta tags (unique for each forum/thread/post, [high]extremely important[/high] for good indexing)
- no broken links while using no_permission functions
- navigation bar
- multiple pages (200 threads or 100 posts per page) [example]
- template based, so you can edit it's look easy
- installer included

You will ask: So what the script does?
It makes all your forum URL's as search engine friendly, so they can be easy indexed by all search engines.
For example, the URL:
[high]forum/forumdisplay.php?forumid=9&daysprune=365&sortorder =&sortfield=lastpost&perpage=25&pagenumber=2[/high]
will look like:
[high]forum/forumdisplay/f-9-p-2.html[/high]
That will allow any search engine to index properly all your forum contents, in no time.

[high]IMPORTANT[/high]
Do NOT get "creative" and start adding crazy stuff (popups, etc.) and links to the actual templates.
The most 2 important things for your pages are:
1. good meta tags
2. clean html code that won't upset the crawlers

The script was optimized to perform at it's best the way it is now, so crawlers gravitate only onto the archives files, not outside.
You can edit the [high]archive_homekeytag[/high] to enter your web site key words.

The link to forums page [high]is needed[/high] (image logo), because some search engines might consider this as URL cloacking, if you don't link it back to your actual forums. Don't worry about the rest, if you performed the first 3 steps in [high]Forums Optimizations[/high] (listed below), they will go back and forward to the archives, without any problems.
Also, follow the readmefirst.htm instructions carefully.

Upgrade from previous version (lower then 1.2)
Estimated time for uninstall-install process: 5 minutes
Follow these steps (clear your browser temporary files before you download the new file):
1. Revert to original all archive templates.
2. Run the OLD Installer script and un-install the script components.
3. Follow the NEW instructions in the readmefirst file, included in v1.2 package.
NOTE: Overwrite the OLD code with the NEW one, in functions.php file.

Other similar scripts
Those scripts are alternatives to my code. Have your pick for the one it suit better your taste or forum performance.
SkuZZy's vB Easy Archive - another script coded by Xenon
fastforward's Spider Friendly URL's - it uses the mod_rewrite

Forums Optimizations
You MUST perform also some the mods listed below if you want your forums optimized properly for search engines indexing.
Steps 1 to 3 are [high]vital[/high], the rest is optional.

1. TO STRIP THE [high]sessionhash[/high] FROM TEMPLATES (ONLY FOR CRAWLERS), READ MORE HERE.
2. TO BLOCK CRAWLERS GO TO CERTAIN PAGES, READ MORE HERE.
3. TO LINK EACH FORUM/THREAD DIRECTLY TO ARCHIVE FILES, READ MORE HERE.
4. TO DISPLAY NICE LOCATIONS, THE FIX FOR [high]online.php[/high] FILE IS HERE.
5. TO DISPLAY CRAWLER NAME INSTEAD OF GUEST ON [high]FRONTPAGE AND ONLINE PAGE[/high], READ MORE HERE. (mod by Inphinity and xiphoid)
6. TO DISPLAY CRAWLER NAME INSTEAD OF GUEST ON [high]ONLINE PAGE only[/high], READ MORE HERE.
7. IF YOU WANT THE MAIN ARCHIVE FILE TO HAVE A [HIGH].php[/HIGH] EXTENSION, READ MORE HERE.
8. TO CHANGE THE [high]threads/posts per page[/high] NUMERIC VALUES, READ MORE HERE.
9. TO DISPLAY THE SMILIES AS [high]image parsed[/high], READ MORE HERE (mod by Logician).

[high]IMPORTANT[/high]
Kill crawler918.com! READ MORE HERE.


Other Users Demo's
Feel free to post your archive link, so I can display it here.

TeckWizards.com Archive
eva2000's Anime Boards archive
overgrow's Edge Forums archive
glenvw's Yes-Its-Free archive
codeweb's Code Webs archive
xiphoid's Open Forum archive
Hwulex's Xaprief archive
BiggieSwolls' Steroidology archive
GearedUp's FitnessGeared archive
saint_seiya's VG City archive

Search Engine Submission
You should follow these guidelines to get listed in every major search engine:
(also [high]visit[/high] those forums for more information)

DO NOT CHEAT
- do not use URL cloaking
- do not use automatic search engine submitters, do it manually
- do not use 1 pixel images to link your archive file
- do not make invisible your link text, by masking it with the same background color
- do not use 1-4 pixels text at the top of your page, to display the site contents
- do not link your archives file to an image without using the [HIGH]alt=""[/HIGH] tag

GOOGLE INDEX STATUS
To see how your site is doing, related to links, go to Google Web Site and type:
site:[high]yourwebsite.com[/high] archive

GOOGLE FACTS
1. Google uses a crawler named Googlebot which crawls the web approximately every thirty days.
2. It is not necessary to submit any page to Google. If you do submit, submit only your most important page to this search engine.
3. Googlebot is a deep crawler and should crawl all of your pages.
4. Google supplies ranking results for placement in Netscape Search, the ODP, Anzwers, Yahoo! and Ilor.
5. Google can crawl pages in ASP, JSP, CFM, PHP, Excel, Microsoft Word, newsgroups, PDF and PostScript files, Power Point and Rich Text formats.
6. Google loves sites with a high number of legitimate, relevant incoming links.
7. Google hates spam.

GOOGLE TECH SUPPORT E-MAIL [LINKS ARE [HIGH]"DROPPED"[/HIGH]? NO]
If your site is new, or hasn't shown up in Google for long, it may because our "fresh crawl" (which runs each day) was finding your site instead of our main crawl (which runs about once a month). Our "fresh crawl" is a newer feature, and we're still experimenting with which pages to crawl, how deeply to crawl, etc. We even reserve the right to (gasp!) not do a fresh crawl on some days because we're doing tests or reviewing new code. Someone wrote in recently and said "my site got in Google three weeks ago, and you've dropped me four times!" Nope, it's just that we don't always crawl the same pages in our fresh crawl, and we don't always crawl to the same depth. As we do a full crawl of the web, we find most of the sites from our fresh crawl and put them in our regular index. My advice on our fresh crawl is to view it as a nice "bonus" on top of Google's deep index. Users can always search our full index, but sometimes we can serve up even fresher pages as an extra nicety.

What does this mean for the average webmaster? In the word of the great Hitchhiker's Guide, "Don't Panic."
Just do the normal things you should do:
1. Create a great site.
2. Submit your site to Google on our "add url" form.
3. Get a link from the Open Directory Project or other directories (Yahoo, etc.).
4. Don't panic if your site takes a little while to show up in Google. Be patient, and start to look around the web--there's lots of great advice about improving your site for users and search engines.

Hope this helps,
xxxxxxxxxx

RECOMMENDED SEARCH ENGINES
1. Google - The largest and best index at the time.
Submit your link here.

2. Inktomi - This is the database that feeds iWon, 4anything, AOL Search, HotBot, GoTo, ICQ, LookSmart, MSN Search & Snap.
Submit your link here and here.

3. Fast / AllTheWeb - This Norwegian index is almost as good as Google.
Submit your link here.

4. AltaVista - Still one of the big guns, despite its temperamental ranking system.
Submit your link here.

5. Walhello - Mysterious new index with great results. Get listed, it is on its way up.
Submit your link here.

6. Non-English Indexes - The people of these countries use their own search engines. It helps if your site is in their language, because they will be searching for keywords in their own language.
Caloweb France - Submit your link here.
Caloweb Germany - Submit your link here.
Caloweb Spain - Submit your link here.

DEAD ENGINES
There is no point trying to submit to these search engines:
Excite - dead, now uses pay-per-click results
Direct Hit - will be retired shortly
Northern Light - no longer available to the general public
Lycos - now use AlltheWeb's index

Once you done all this, watch the incoming traffic that will arrive to your site.
Good luck.


[high]Copyright Permissions[/high]
1. You ARE NOT allowed to REMOVE or MODIFY the copyright text at the bottom of the page.

The copyright MUST be in a distinctive color and easy readable by visitors.
2. You ARE NOT allowed to ALTER in any way the URL links listed in the copyright text.
The Search Engine Indexer link pointing to TeckWizards.com MUST stay intact.
You can remove ONLY the vBulletin version or replace the direct link to vBulletin site with your referral link.
3. You ARE NOT allowed to DISTRIBUTE the contents of downloaded .zip file.
4. You ARE NOT allowed to COPY ANY PARTS of the code and use it for distribution.

Show Your Support

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

Comments
  #62  
Old 01-15-2003, 03:20 AM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

The fix for [HIGH]online.php[/HIGH] file, to display nice links, is below.
There are 2 methods, the easy or the hard way.

METHOD 1 (easy)
FIND:
Code:
  $loc=preg_replace("/\?s=[a-z0-9]{32}(&)?/","?",$loc);
REPLACE WITH:
Code:
  $loc=preg_replace("/\?s=[a-z0-9]{32}(&)?/","?",$loc);
  $loc = preg_replace( '~archive/~' , 'forumdisplay.php?forumid=' , $loc );
  $loc = preg_replace( '~forumdisplay/f-~' , 'forumdisplay.php?forumid=' , $loc );
  $loc = preg_replace( '~showthread/t-~' , 'showthread.php?threadid=' , $loc );
  $loc = preg_replace( '~-p-[0-9]~' , '' , $loc );
  $loc = preg_replace( '~.html~' , '' , $loc );
METHOD 2 (cool way)
FIND:
Code:
    case 'spider':
      $userinfo[where] = "Search Engine Spider";
      break;
REPLACE WITH:
Code:
    case 'spider':
      $userinfo[where] = "Search Engine Spider";
      break;
    case 'archive':
      $userinfo[where] = "$bbtitle <b>Archive</b> <a href='archive/'>Main Index</a>";
      break;
    case 'archiveforumdisplay':
      if (!$forum[forumid][$userinfo[forumid]] or (!$forum[canview][$userinfo[forumid]] and $hideprivateforums)) {
        $userinfo[where] = "Viewing <b>Archive</b> Forum";
      } else {
        $userinfo[where] = "Viewing <b>Archive</b> Forum <a href='forumdisplay/f-$userinfo[forumid].html'>".$forum[forumid][$userinfo[forumid]]."</a>";
      }
      break;
    case 'archiveshowthread':
      if (!$thread[title][$userinfo[threadid]] or !$forum[canview][$thread[forumid][$userinfo[threadid]]] or (!$forum[canviewothers][$thread[forumid][$userinfo[threadid]]] and $thread[postuserid][$userinfo[threadid]] != $bbuserinfo[userid])) {
        $userinfo[where] = "Viewing <b>Archive</b> Thread";
      } else {
        $userinfo[where] = "Viewing <b>Archive</b> Thread <a href='showthread/t-$userinfo[threadid].html'>".$thread[title][$userinfo[threadid]]."</a>";
      }
      break;
FIND:
Code:
  $loc=preg_replace("/\?s=[a-z0-9]{32}(&)?/","?",$loc);
REPLACE WITH:
Code:
  $loc=preg_replace("/\?s=[a-z0-9]{32}(&)?/","?",$loc);
  $loc = preg_replace( '~archive/~' , 'archive.php' , $loc );
  $loc = preg_replace( '~forumdisplay/f-~' , 'archiveforumdisplay.php?forumid=' , $loc );
  $loc = preg_replace( '~showthread/t-~' , 'archiveshowthread.php?threadid=' , $loc );
  $loc = preg_replace( '~-p-[0-9]~' , '' , $loc );
  $loc = preg_replace( '~.html~' , '' , $loc );
FIND:
Code:
  case '/robots.txt':
    $userinfo[activity] = 'spider';
    break;
REPLACE WITH:
Code:
  case '/robots.txt':
    $userinfo[activity] = 'spider';
    break;
  case 'archive.php':
    $userinfo[activity] = 'archive';
    break;
  case 'archiveforumdisplay.php':
    $blowup = explode('=', $token1);
    $forumid = intval($blowup[1]);
    $forumids .= ",$forumid";
    $userinfo[activity] = 'archiveforumdisplay';
    $userinfo[forumid] = $forumid;
    break;
  case 'archiveshowthread.php':
    if (strstr($token1,'threadid')) {
      $blowup = explode('=', $token1);
      $threadid = intval($blowup[1]);
      $threadids .= ",$threadid";
      $userinfo[activity] = 'archiveshowthread';
      $userinfo[threadid] = $threadid;
    } else if (strstr($token2,'threadid')) {
      $blowup = explode('=', $token2);
      $threadid = intval($blowup[1]);
      $threadids .= ",$threadid";
      $userinfo[activity] = 'archiveshowthread';
      $userinfo[threadid] = $threadid;
    }
    break;
Reply With Quote
  #63  
Old 01-15-2003, 10:15 AM
Erwin's Avatar
Erwin Erwin is offline
 
Join Date: Jan 2002
Posts: 7,604
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Nice hack, TECK. Just saw this one. Great work, as always.
Reply With Quote
  #64  
Old 01-15-2003, 03:35 PM
Dean C's Avatar
Dean C Dean C is offline
 
Join Date: Jan 2002
Location: England
Posts: 9,071
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally posted by TECK
Open the file and check the line, to make sure.
No, it doesn't use any extra space or duplicates any threads, etc.
Wow this is such a cool hack - extra traffic at NO cost whatsoever

Sounds too good to be true

I'll be telling my friends about this TECK

- miSt
Reply With Quote
  #65  
Old 01-15-2003, 04:31 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

This the evaluation made by fastforward, an expert related to search engine optimizations.
TECK wrote on Today 02:11 AM:
[high]Hello fastforward,
I released a similar hack to yours and I would like to have your opinion on a issue.
My script uses Apache's ForceType directive. So "archive" will be treated as index.php or archive.php type.
Now, will this affect the crawlers to browse the archive, if I point them to:
http://www.teckwizards.com/archive/
and that represents for them the link to forcetyped "archive" file?

Thanks for taking the time to read this message.[/high]

fastforward wrote on Today 03:16 PM:
[high]Hello TECK,

The ForceType directive will be completely invisible to a crawler in the same way as using mod_rewrite. There should be no problems whatsoever.
I personally would use the 'archive' version without the extension. There is no evidence that Google or any other search engine identifies a dynamic file and handles it differently, but that could change if the capabilities of using dynamic pages are abused. (this is just my paranoid preference and not based on any hard facts).

It looks very nice by the way
I think I'll use that on my site that doesn't have the the friendly urls.

Paul[/high]
Reply With Quote
  #66  
Old 01-15-2003, 11:02 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If you want to have the main archive file with a PHP extension and not as sub-folder, make the following changes to functions.php file:

FIND:
Code:
$bburl . '/archive/
REPLACE WITH:
Code:
$bburl . '/archive.php
NOTE: The code appears 2 times, change it in both places.
Rename the "archive" to archive.php.

I personally don't recommend you to do this, instead use both ways...
Leave the script unchanged but upload also archive.txt and rename it to archive.php, the crawlers will hit both files.
Reply With Quote
  #67  
Old 01-15-2003, 11:11 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

The actual settings are optimal for any server.
But, if you want to change the number of threads/posts displayed on each page, do the code change listed below.

FILE: forumdisplay.txt and showthread.txt
FIND:
Code:
$perpage =
Replace the numeric value with the one that suits best for your forum.
The bigger it is the faster the crawers will index your pages.

Do not go over value 400, just to make sure you give a break to your server also.
Reply With Quote
  #68  
Old 01-16-2003, 09:45 AM
wooolF[RM]'s Avatar
wooolF[RM] wooolF[RM] is offline
 
Join Date: Jan 2002
Posts: 524
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

]Great Hack TECK. You r00lez ;] Keep up the good job!

[high]* wooolF[RM] clicks INSTALL :> w00t [/high]
Reply With Quote
  #69  
Old 01-16-2003, 01:23 PM
glenvw glenvw is offline
 
Join Date: Nov 2001
Posts: 135
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

I got a little lost here at the end...

You guys are too smart and techie for me :-)

Are you saying you re-released it so it has html extensions now and if yes, is it better to have the standard html extensions?

Thanks!
Reply With Quote
  #70  
Old 01-16-2003, 01:53 PM
glenvw glenvw is offline
 
Join Date: Nov 2001
Posts: 135
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

[QUOTE]Originally posted by TECK
[B]Version 1.2 released.

Html extension were added to all dynamic pages.
I also fixed a minor bug related to dynamic meta tags.

Here it is also the fix for online.php file (requested by xiphoid):

Re:
Here it is also the fix for online.php file (requested by xiphoid):

I looked through the thread and cannot find reference to this.

What does the edits to the online.php file do?
Trying to decide it it is necessary..
Reply With Quote
  #71  
Old 01-16-2003, 04:06 PM
TECK's Avatar
TECK TECK is offline
 
Join Date: Nov 2001
Location: Canada
Posts: 4,182
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

If you view your online.php page, you see there the location (forum/thread/etc.) your users browse.
If it's a archive location, it will show you an Unknown Location:, instead of the actual link to the forum, for example.
The fix will display any links as VB links. Try it yourself, open 2 windows:
1. in the first window, go to go your online listings
2. in the second window go to your archive and browse to a forum or thread
3. refresh the first window to see the location you browse...
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 01:20 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.05444 seconds
  • Memory Usage 2,359KB
  • Queries Executed 27 (?)
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
  • (11)bbcode_code
  • (1)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
  • (4)pagenav_pagelink
  • (2)pagenav_pagelinkrel
  • (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_postinfo_query
  • fetch_postinfo
  • 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