The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Google sitemap for the vB Archives. Redirect human and robots. Details »» | |||||||||||||||||||||||||||
Google sitemap for the vB Archives. Redirect human and robots.
Developer Last Online: Nov 2023
Release V1.2 (9 Nov 2005)
* Higher sitemap priority rate is given to threads with new posts. So Google can index fresh threads first. * Not recommending the original optional STEP 3 hack. To avoid potential Google penalty, my advice is to remove the STEP 3 hack. Release V1.1a (12 Oct 2005) * Bug fix only Release V1.1 (9 Oct 2005) * Can handle very large forums with more than 50,000 URLs per forum URLs will be spanned through multiple files for each large forum. * Created a function to detect search engine crawlers. The vB built-in search engine detector can only identify about 3 or 4 search engines. My function will detect over 20 search engine crawlers. * Support forums hosted by web servers that do not support 'fix_pathinfo' ie. instead of the usual 'archive/index.php/f-10.html' link. These forums have a link as 'archive/index.php?f-10.html'. * Alert about wrong directory permissions to help newbies. * Automatically write index file to archive directory if the php script can not write into the base vB directory. * Bug fixes. Objectives ==============
Q and A ============== Q. Would the sitemap contain the links for hidden forums? A. No, the forum permission was consulted while generating the sitemap files. Q. How often are the sitemap files generated? A. You decide and set in the Scheduled Tasks. The script can not be called by external user by default to prevent boring people killing your server. Q. Is the sitemap file compressed. A. Yes, the multiple sitemap files are gunziped according to Google sitemap standard to save bandwidth. Sitemap index file is not compressed, it is submitted as a normal xml file. Q. Would the sitemaps include links for the normal threads? eg. showthread.php?t=1234... A. No, it is unlikely Google will index your entire site if you feed it with all the combination of showthread links. It is better to let Google going through the more static archives. You will have a better chance for sure to have more thread contents indexed by Google this way. Q. Why don't you go crazy about rewrite rules and do things like including thread title as the url. A. I won't deny having keywords in the url is a good SEO strategy, but Google also does not like "Over Search Engine Optimized" web sites. Google has recently penalized a huge number of such sites. Sending them from page rank of 5, 6 to 0. Q. Does sitemap really help? A. Definitely, Google has done over 60,000 pages since I submitted my sitemaps a few days ago. Yahoo bots were visiting more pages than Google before the sitemap. I expect the total Google visits for this month will be exceeding Yahoo in the next one or two days. What is involved? ================== I have divided this hack into two steps. The first step involves unloading a php file. This enables the sitemap to be generated and submitted to Google. The second step involves installing a Plugin using AdminCP. This sends all robots to the archive pages, preventing them viewing the actual threads. For example, Google/Other Crawlers follows an external link to visit: http://forums.mysite/showthread.php?t=1234&page=2 It will be told this page is permanently relocated to: http://forums.mysite/archive/index.php/t-1234-p-2 This way you don't lose page rank gain from external links. Install ========= To install, follow the readme file. To let me know you have installed this and let me send update information to you. Please click INSTALL . Strategy ========= It is unlikely Google/other Search Engine will index your entire site, especially due to the dynamic nature of the vbulletin forums. An archive sitemap will let Google concentrate on the real contents of your forums -- the threads. If Google needs to go through the endless member profile pages. It will get sick of it and just become tired.(sorry, perhaps robots can not become tired). What we can do is disallowing the crawling of unneccessary pages. My robots.txt contains: #ALL BOTS User-agent: * Disallow: /admincp/ Disallow: /ajax.php Disallow: /attachments/ Disallow: /clientscript/ Disallow: /cpstyles/ Disallow: /images/ Disallow: /includes/ Disallow: /install/ Disallow: /modcp/ Disallow: /subscriptions/ Disallow: /customavatars/ Disallow: /customprofilepics/ Disallow: /announcement.php Disallow: /attachment.php Disallow: /calendar.php Disallow: /cron.php Disallow: /editpost.php Disallow: /external.php Disallow: /faq.php Disallow: /frm_attach Disallow: /image.php #Disallow: /index.php Disallow: /inlinemod.php Disallow: /joinrequests.php Disallow: /login.php Disallow: /member.php? Disallow: /memberlist.php Disallow: /misc.php Disallow: /moderator.php Disallow: /newattachment.php Disallow: /newreply.php Disallow: /newthread.php Disallow: /online.php Disallow: /payment_gateway.php Disallow: /payments.php Disallow: /poll.php Disallow: /postings.php Disallow: /printthread.php Disallow: /private.php Disallow: /profile.php Disallow: /register.php Disallow: /report.php Disallow: /reputation.php Disallow: /search.php Disallow: /sendmessage.php Disallow: /showgroups.php Disallow: /showpost.php Disallow: /subscription.php Disallow: /usercp.php Disallow: /threadrate.php Disallow: /usercp.php Disallow: /usernote.php You perhaps have noticed I included index.php in there. Apparently Google regards http://forums.mysite/index.html as same as http://forums.mysite/ ...but http://forums.mysite/index.php as a different file. The default vB templates include index.php as the internal link. That will spread your page rank on your home page! So it is better off not letting Google see this file. If you have rewrite installed. Perhaps you could add to the .htaccess file: RewriteCond %{QUERY_STRING} ^$ RewriteRule ^index.php$ / [R=301,L] (if your forums are under http://site/forums/. Try: RewriteRule ^forums/index.php$ forums/ [R=301,L]) That will redirect /index.php to /, but only if no query_string is presented. ie. /index.php?do=mymod will not be redirected. Show Your Support
|
Comments |
#162
|
||||
|
||||
Quote:
|
#163
|
|||
|
|||
all 3 steps installed
and all working fine (hopefully!!!) Thanks for the hack |
#164
|
|||
|
|||
been getting a few php errors in my error log:
error is PHP Fatal error: Class 'vBulletinHook' not found in /home/trevor/public_html/forums/includes/functions.php on line 4322 I think its reffering to this bit of code Code:
function exec_header_redirect($url) { global $vbulletin; $url = create_full_url($url); if (class_exists('vBulletinHook')) { // this can be called when we don't have the hook class ($hook = vBulletinHook::fetch_hook('header_redirect')) ? eval($hook) : false; } $url = str_replace('&', '&', $url); // prevent possible oddity if (SAPI_NAME == 'cgi' OR SAPI_NAME == 'cgi-fcgi') { header('Status: 301 Moved Permanently'); } else { header('HTTP/1.1 301 Moved Permanently'); } header("Location: $url"); define('NOPMPOPUP', 1); if (defined('NOSHUTDOWNFUNC')) { exec_shut_down(); } exit; } im checking my logs now to see if its not working the other way around, any ideas as to whats causing this error? |
#165
|
||||
|
||||
I got this error now:
A Sitemap Index may not directly or indirectly reference itself. Please fix your Sitemap Index before resubmitting. How does this Google Sitemap hack compare to the other one on vB? |
#166
|
||||
|
||||
What is the other one? (URL?)
|
#167
|
|||
|
|||
I got something similar but couldn't see anything wrong with the sitemap... so I posted on the Google Groups with it:
http://groups.google.com/group/googl...7e0aca343fb8ec Similar error: Code:
Recursive Index A Sitemap Index may not directly or indirectly reference itself. Please fix your Sitemap Index before resubmitting. |
#168
|
||||
|
||||
Just checked today and got the same error as you! Hmm...
|
#169
|
|||
|
|||
when running sitemap.php i get this
Script can only be run by vB Scheduled Tasks. Set $run_by_vb_Scheduled_Task_only to 0 to call this script directly. i dont understand this bit how do i change it to what its asking |
#170
|
|||
|
|||
Quote:
change: $run_by_vb_Scheduled_Task_only = 0; to: $run_by_vb_Scheduled_Task_only = 1; Now you (and everyone else) can run the script directly. You can also leave it to 0 and run this script in your scheduled tasks manager, that way, you are the only person who can run it. |
#171
|
|||
|
|||
BTW the beta script is working fine AFAICS
Quote:
|
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|